1
200000 1000000000
396958809 527989304 906055439 537236570 815242295 68441758 336488651 571203534 401835525 257278286 834693824 54254798 648008561 472139383 893986934 141237635 325905174 322445684 721298137 624670647 408719222 529025994 659659069 518140902 446356985 863347236 975806047 155939372 676787696 858403158 711380838 267601748 749372311 914023771 902679774 62371275 913070347 27826773 507527103 696133798 913603417 364048782 686925921 672545448 1690991 878566012 703960972 118955318 574652201 277892539 763903856 59691872 125276740 87906829 706425502 284590303 901965168 739621722 527032599 456820494 575910714 540628923 611806013 254692856 431844634 571360871 447123164 900744013 183136373 367832259 335634991 984958305 919519634 642718042 38576335 84778546 179114147 790925022 244557507 949387885 450099392 23197484 358433655 308290140 927967978 610336840 878121150 569463034 307481359 662550364 750681563 710204644 150866168 752154554 659505265 764084064 643979110 356317150 732142475 902719842 723710199 481346669 300945055 325476988 144767282 89266992 425603210 469497329 195720589 598184475 635997333 719757734 181964894 812772427 619396458 645881130 366115817 384956159 624454687 571842232 310090067 899805862 192948526 470338603 821914031 52510163 832675714 936497163 675148024 177291329 135126884 35319944 789116686 81398736 209916812 183178874 658866362 742294417 909963798 362953312 603456686 606596786 508271495 309019491 255560835 193475985 899158477 86317132 128518586 127325873 226518331 127668376 247961277 386300348 161314704 693140836 323210204 415573126 477234420 273990264 376094800 30648844 117699310 828112194 103511357 881621358 289049978 917657565 150352553 198741755 468981232 506158597 580511366 506401571 971471896 313307169 697769390 610314115 569433886 458382399 197825765 973785565 2586774 269557019 722021839 735834908 328427906 575722256 152015359 886684247 910766403 575061801 672361966 856200643 286224041 368634385 785678848 644604361 987262181 754000673 67663229 350776304 490152601 72764761 423320469 4221935 775028934 572479073 267872 704153247 125475292 549453189 158907363 542124803 173140658 623048385 566629124 397705031 117837697 578788782 335465625 428670911 61736688 76737178 272114772 371242981 843066126 641605487 351271900 850307933 801129550 650863303 742298552 672557809 867054734 118100193 314843736 950229908 237990933 704813219 70754585 749602148 878073483 897569950 766307642 301129381 958211595 313225737 207096549 467392701 414555663 775643584 191318057 479547202 255432831 589742927 670974976 197170928 362675877 244176352 230557004 262047402 945596982 863917393 81365464 664547962 368510037 135773978 617386325 590603414 498640001 263538025 71820889 323626582 386472872 159268360 628303206 51594046 541821730 663463794 231464937 992914940 962841005 332856770 271577902 58859361 601892456 141036996 68952434 842373991 89205225 501857252 519368917 77274674 960185630 179688764 89641056 852841233 252124263 25232520 301338374 222248817 653879434 394157360 18463903 330353139 521272754 530750022 937388267 847526741 729137273 312042366 170143891 806604167 526877399 870430776 664976939 825829528 632102706 217436798 36628778 260003271 368804186 657098748 996412660 334782070 119380866 11701514 871878606 322965295 151971657 282599846 278047727 97569958 707238066 849388669 246944362 382248121 596618540 522766295 544197188 756446564 230595213 18461358 825436517 391265242 437414417 143427491 541698463 813912426 716053850 828490746 250981802 160479378 106018170 124149925 374661672 53433330 889096678 826234682 886398117 877992792 206752123 744063224 276901517 510344374 992680826 824231880 304873021 154533673 733827220 555632952 35677685 450088432 640518625 551983489 371755228 562212731 123345878 749821564 94879241 911942232 9588065 12203192 581910384 949198920 540759755 197045856 998085365 968979755 367189705 492763724 705145696 3495436 312352632 617932542 540062562 175947810 639357793 24247193 518597268 86053826 503060077 422577388 871390842 395854708 989716209 118897268 295282045 561498853 578785454 934757195 524638697 56069088 151738311 894893369 568623868 17954152 599264713 804909486 634780119 43692702 245928 44467395 149792384 355268045 733259719 659179573 748639983 971317094 334952165 659404906 521423860 82265864 188419376 974244212 910913624 26291317 344158272 630111755 524310465 852655257 43500818 516547211 829837761 500910722 900040459 539821053 485078735 105642611 674076404 889439505 811833167 104650955 252165640 769234203 989416075 813773590 964369122 821558047 618009521 205833478 742227591 182750910 64139482 88689529 136160100 672420687 229564428 130609520 28851281 895210693 869349420 853057302 960507782 610476733 463383054 213333697 761594796 424910723 716951912 166683624 175959249 462711043 287879135 281070643 672888679 924980180 208267769 403020906 101038924 529784377 613988904 266656640 232250057 922392854 102154694 842987411 903182214 825313019 317080599 86539492 15631260 585423137 662059326 998913249 996041864 898590307 512075600 762778393 985103917 951839818 166614856 351788617 592281048 640875529 91490309 212326228 777861954 985536371 783906638 384173641 173342086 533502473 366163673 122816853 860743721 832216048 414104891 26298328 984294422 649865979 222068982 917101909 366958761 525319070 686761847 138978419 8315544 88035323 143694349 735241226 562835724 595037910 42297583 519651858 547520656 534142625 709310017 68302512 532855324 635251826 791047434 545329456 974386701 320169736 267458111 981712133 29897510 554136012 822436277 128022217 890178455 597417421 310491950 457071423 533334002 644616894 267717974 167503441 516719158 54319621 525635260 510895127 414580937 997696931 89218779 643736520 224401273 720671562 417903891 463954632 516964982 421933908 35090348 462947749 895012197 366149564 284588762 749785871 536136260 637006634 849396148 107522275 314844292 957750768 12990268 207903523 398189562 521163523 973454172 199802619 590125028 799211264 942382565 252943292 506220519 215399219 272070542 865698278 463561996 525530248 810543356 801121819 677676750 754463896 683525556 573483043 191413768 323301027 588648748 921345522 271091199 559708813 488389563 66102951 652898657 342643174 818703264 73931649 675608898 413194982 231597577 194039021 626737696 703337327 94974466 971788158 755285216 538516996 684686728 143530737 973808592 45357272 867847290 355156774 310987684 474396862 117608868 35910443 721309819 847068219 607807926 539683888 811103960 790390382 780403784 990052501 580078251 90735150 136183517 657485531 52860487 201218800 942823898 27376811 812131690 545573841 326040982 424394203 871125049 405340827 742009161 842471268 232602179 236288698 146802705 803521133 247623033 225366088 97348603 561112383 951244092 854485252 612708085 193464394 456847184 550119767 384407514 384344367 415637220 789355338 396558189 895672238 309718411 620344730 448518484 916808883 910264899 642052772 802665251 840694097 68549233 218453875 162058575 394309572 25034978 189904559 719738942 811971182 545722061 312118708 840364854 604016346 330889421 992176514 763137901 59182782 912319465 749496254 933854965 652041458 927051404 253374393 413112788 574527612 602589071 342872425 442085108 576649606 179783467 279517293 378670370 298407010 707925511 614586123 674645532 208867981 457910833 540842806 315146624 27445673 273014814 680055683 258291675 905545859 892409770 664516147 364703128 849350668 584788253 865008169 749564951 141962849 270289955 464894968 206054547 345736644 810128079 899972823 307508539 678526370 734768801 703698341 568372762 623288718 978694012 370479593 196148272 961521216 224222895 312479440 364218458 841108128 971437038 86691380 955183203 543165621 475020888 720661396 810060282 492206260 234546032 35311382 372194237 175262203 54841895 769364108 461512233 13601289 120753102 484990570 521181862 148690315 702401828 199844049 489322123 143889234 311395663 325941894 747331595 637231455 388275931 474285564 803905355 179389904 811095741 529535560 203593554 931986930 912161621 232314920 180262165 230528312 884988772 556760838 858138731 633940031 244823835 989107185 224632083 677403079 776275725 844999327 508988345 769600444 135367991 853912687 695349487 999743028 160602113 97791848 436205098 916596841 474194741 747456314 111406801 202529722 360395531 267809854 844454184 707494074 787862303 514621040 155865444 201930775 921601397 899235962 711796382 658697132 212843389 128921769 351665109 141000574 748905225 653837814 650113778 814997177 994790233 712667902 30703562 87158958 123483152 570872077 319489810 309377499 455016511 663598860 998773102 221258977 955137366 579942038 121561190 465440138 842949175 108785386 854497645 678382030 41200164 333339631 407764696 414303429 601942988 297691955 12030701 845196722 539107394 271997678 52787922 552957696 196076040 663250690 320618909 337284421 408187391 736398835 493043008 220856889 954791028 827741169 307577762 5476801 585249313 815408593 321130379 914820841 402687773 745731606 45350825 805280481 892650994 164369383 308927899 840791049 228832907 246163472 317260508 565659358 636587836 112747020 818419163 800516371 132696006 705979129 7306468 632656500 368500301 820223642 222684981 36278784 18639963 390098022 32244717 823565018 543170537 583382639 927746324 716299086 461525586 878604404 126566556 649941455 876368735 390529761 475202913 577604084 976848440 755862977 508512800 877983622 552246901 441182154 387069575 215837550 77869331 10776928 110769187 234121918 882733944 730431367 337122670 517708212 381134449 528112879 825743564 928807089 585080112 73049326 454062468 877425473 320730711 276412039 968828103 163956503 671443688 348206940 390594222 343890189 507263314 69306563 591541564 723057704 78205547 387525293 941407578 114932884 482046063 971827386 663835096 386738852 360827907 388333877 586847345 714624465 469563187 615725067 62080708 609866176 415362167 692370385 4690266 339778364 565567915 945506506 982236328 409424185 540722450 976953308 125652996 183224784 864811101 478989207 954477233 903138630 68475809 260795694 54681813 912689926 634027609 984716679 352398469 860288674 830665323 863644197 517651641 575915225 900380965 58237495 62709328 886312075 47904826 400449942 178201880 455524803 990373066 693099969 870410943 380604084 804594778 347270366 871725023 375710396 997078999 155608253 145275641 948829532 60850325 799216086 991007093 148697410 357351248 259728454 192699559 791399228 845757744 726558424 579130054 37326155 143826629 842410488 438305780 368954255 901588221 103165118 719622973 253098834 435023931 162336745 898323852 881572365 553127232 894579939 853012673 980061781 971052093 348962998 296691864 280405231 336858054 752356639 534445500 369352648 281546199 259449721 648795841 254182643 11752662 742738381 899667227 783198120 289731730 17616331 746333232 717372750 353503038 887003081 172038215 672403055 293036665 120424389 324938641 738627519 607355973 388973161 402555689 604999958 950774291 484651011 666620431 350174843 973920182 775702923 840950315 713495320 739475565 910967709 71845711 985754176 975458778 15398276 23149622 157060206 32712974 967535151 281160065 198639687 351183231 307125045 1526966 284854164 516742660 146905043 992505676 126287947 495642601 395478003 14111126 995639170 66204630 685542177 88944602 252149378 183703781 659974039 135779647 934332853 557111696 645460789 907957973 193091499 237902014 490142334 953313944 579578912 826958010 424891815 684309097 542865149 716314685 396145026 306008335 354740549 173586784 822370451 267795773 818861617 25102507 435727869 697419404 751541274 370677259 778984083 967356540 981896068 95804882 416722889 55958904 126666776 773134275 639634110 844901843 760921518 907129343 397775676 593985216 940631868 790964757 577458352 141628774 896921067 749168121 126037813 781395917 880729600 844531977 464935046 121913828 168755699 902122251 640148746 129500295 173424986 217464618 838477013 576463478 229087742 816816894 777014426 728521051 395104968 186459011 844147387 842212549 857622220 90036254 268623418 440599343 38345284 625218461 35476431 203537658 396451218 530182453 815819977 340064624 27239492 787129728 998376490 161910723 268555278 719878539 837325213 592053769 241542598 538699195 350547562 122772551 196278390 372794601 256824977 801432419 174235205 346083155 817110441 256813103 772208005 742812060 73730044 280763493 710845365 523843540 488430461 205479335 618264182 66130543 553406654 637701244 555810964 396302153 470462979 339695446 635872005 368860326 945865262 881396627 663346654 293351993 504251861 47922284 721952102 687869459 376435238 782155280 807346441 280608689 330395147 494067854 462991961 826545913 112648962 155138784 853179920 333639993 310606398 506032104 676887829 588689958 394184601 131962733 996156784 277034204 582443661 755576098 968370005 267521763 324088645 114195872 710274078 24552228 771127182 418392424 948668243 17232122 106656226 29409765 434561433 56934173 114527324 572708452 852838342 795808437 151629256 480116514 90802647 616365644 210952338 406032960 324136430 173938909 430043092 57668804 277603668 223675072 153149002 704934820 217591681 700501692 405025628 220427446 595912459 945702144 644811804 200383932 5918905 946836001 596816446 481600864 431740019 677596697 475274531 916592691 605895758 22730575 212876498 278060971 236686217 34956176 93821690 348410670 664838528 240997139 160903666 216100101 151426244 834363251 260391353 341950813 732960774 567795895 410981625 618329426 564068641 661715530 327675901 738132455 119352857 225282052 79254975 857688321 669513240 232410912 146991837 967832180 765750387 358775111 982099615 938121978 635194274 229912960 763060723 148846386 867426894 118182214 73232499 31531177 479388222 768725875 937386842 28774091 638994278 407540044 341361812 275319797 125342433 363586435 293584815 169493606 622358002 322443558 941983966 706188105 83854087 106460344 760353798 989714351 332976304 187026717 217832365 278658961 437200041 733080224 341672958 550557903 541016278 433196536 331257300 260075572 879360067 83905859 200564142 456628336 795536416 571197698 238893749 395887391 175321292 408922408 23618995 63924668 786887368 734681097 39347236 37195961 830557632 917490527 185331492 232375390 438996361 893585234 340974716 936264684 605308185 762692463 614043037 400382593 665026457 530427817 934251162 185149479 402837328 52069729 357896502 615045324 136693942 566917720 473038294 349954892 852101987 135686591 77431435 507570282 873318169 250006312 786658315 119217100 199599812 118015380 269171893 800225031 146916218 710747748 329494928 270295695 909688181 490864746 338034508 761595595 424527126 642103000 769613123 205461758 538171371 364767309 816790126 514952798 310495653 236847562 189981306 962754819 683724066 515033539 292372661 182322927 941964130 454254343 679966997 322072328 758454418 211108310 89883959 512108069 76389126 577379031 362197863 559976441 111927354 535254036 156060048 368390697 201351118 422193158 398363213 203434301 991754382 441845383 722028507 965989286 748467569 508430813 343872803 72291009 986537100 644476852 511060144 599764425 563397159 897718821 139412926 634442475 756970413 102111401 492373292 108266552 439784111 524713768 922535038 980345001 210374120 779094767 287118566 300281631 270508608 848207282 360394811 222682979 158555069 66073742 153525242 850362663 565614740 472304396 38364748 737874178 11396129 919244308 801591553 432398203 839067623 980376319 552649358 425434100 950114448 855272073 953838357 336797634 882183921 892565462 891602267 87680287 166611205 661015414 587608526 856924203 640669933 48558173 819264395 373032942 694195702 201540326 153245515 460860765 908394388 643077595 77256825 211548748 301977696 117505381 537940000 974774401 23022368 107358233 594539518 574034083 931432894 75578361 859582830 35860802 354521677 768468324 682075767 216676316 738608136 25200172 905602249 511802828 738529362 450502791 274496701 911152481 757416889 437244941 156167758 393883337 696804077 459345095 565469223 271383325 203726282 269227555 695482517 615427423 760670805 996291059 393210002 38755705 78423990 704559476 106314939 986039611 143723845 773619793 950383190 47209823 37601145 902611347 428207703 116664966 441207541 438802095 771320913 536320059 178114439 567498368 723744130 216177643 770510113 472163410 70711256 366741490 757877982 533183183 44987101 660752018 662301188 171418376 666865350 887677172 634715387 141798785 691271032 464991785 698532437 788570907 282297720 67791913 581166033 989362213 227762423 216184022 601834321 704618836 449944263 337616120 711854559 264474308 576847212 260228933 200669360 884227837 272655882 931371344 323998751 656978408 837118325 102527134 581010605 829862367 22396193 359493526 606347273 112149658 874436139 799086732 375224833 494796869 455879774 955553977 589775767 859980390 469377320 421987132 968359401 533275896 664909985 872431647 330540354 748099415 548263559 81000788 498435096 672958788 76406592 935729075 642714121 271037938 505905889 864795135 755067600 689458931 633039386 651308513 22581088 6281541 345551695 6659304 667476169 985908300 294002564 438601616 443026244 474132184 746248044 216949305 172540217 353224220 775730268 263403051 372373041 879833783 405645140 658378395 846325724 314685866 42638842 833417628 187112732 840039784 253834143 891072822 337126639 751352516 731918392 60139601 202196866 58545147 988321125 472276921 709832489 90188722 77924206 475930413 111761246 550441463 479118405 999608906 236561860 123217214 76099194 134440862 784316713 61519204 575931989 326351766 184100986 329850033 987334836 821823886 546937818 907811023 453699119 900712132 908379528 559134679 635266038 962629478 205334257 376869184 247487727 407998848 117708708 183650550 453152924 840494609 104816737 152779844 497738287 988765172 633440266 12058847 194661244 72190200 344362154 879043042 914963974 776276170 861359220 208145109 704498675 988627460 280434370 37599397 287037712 565602091 474187546 522134692 434260442 695341475 499579430 90499478 762260075 377900224 862650555 20279451 729427338 287072442 554345169 854977601 484628907 356497332 113329290 586595197 183005152 207458998 199577911 842405549 675037418 554014386 925258310 831090326 407110195 412769666 326892119 677029734 663616711 936917220 879704104 163394995 436112990 302149510 81306536 930666360 514356824 950363637 750468843 396234524 738379964 677954988 81219368 776343146 494163256 25195532 342695367 589104027 937520678 159046495 912404815 659369542 372158339 33071060 221454964 639418489 216631285 411265671 249244436 708511129 438633422 533215863 296912689 522527617 688085508 749283726 112525814 938132331 209260345 851701664 735805623 240414972 131392176 249340258 228044780 586705731 15504730 37688696 332609597 957467572 786948814 636259690 46908784 962590001 774687309 172944555 532082557 546167030 555758011 789029264 76877693 35795384 496123561 975409248 507694773 176505995 438779214 659782720 370950028 963406313 317582221 828443714 702767258 77702843 349962215 697858144 566810010 522621258 375083149 877045372 55946860 822482512 705130584 259224926 594127389 37630950 681989065 913489848 886685665 290847892 198622723 696707874 758225424 601689160 912822231 584341278 933487922 879630164 240923323 527301142 437613294 574361465 794079697 701542491 998523675 329524951 13938399 905231653 862538931 199608065 446707541 365146006 777149143 864908265 116703047 713949624 50615764 378025708 249952887 239669115 379623452 354663888 162215245 251408824 263899983 414803908 361258966 27808053 316368682 365285468 782678219 862752659 588016283 406706324 97932936 797507179 602918583 558062547 197398554 856983088 639208372 973028069 433981485 472115015 478392315 307639041 371057687 693488888 181555988 50542785 731365592 757909108 202606261 617177388 916253209 161325527 626208695 450663600 687584040 477946145 538715421 16033827 791241210 779019063 317507859 291523009 744830004 554267886 913353195 626995245 271250457 176062976 133404962 516226425 241765782 775588878 791334490 209487381 140096328 940302751 51101280 405127139 711940972 883481382 90310182 176010534 406270697 238897148 137801673 785133963 781081164 306453859 436845961 395125033 944602830 255084929 884742354 325565818 535464784 331360875 842981179 804118118 167948120 600477464 471265658 92809016 288719892 300274283 751120500 786968490 907252574 379342380 405546038 368750805 170379954 971530252 683413237 236722748 62531130 977233062 687661574 125515987 601223106 843077242 78060273 537535979 863756228 750872818 65132127 609822275 797859937 175461213 967456037 592473340 963769947 469602807 951746877 35366057 876639269 407482592 367153866 411610173 838577879 650038561 470461208 392462867 573694763 677409706 446652827 13851381 152728206 838214232 68205292 665577226 101411340 350116586 613442002 999113964 834308447 293634057 544561717 198069400 165748194 480824903 81393192 154429043 513549217 959566108 833700585 97315401 285645385 324038634 850431448 287575630 583299633 357766906 968100740 508131360 617581910 749061247 737513629 967589832 571865701 713200528 466154751 507304112 782701481 962906929 979860322 21086383 460039704 381107015 214573268 206336255 200834646 765984678 605439687 941853510 902172072 290274566 419073281 221723796 971453693 231885322 392536098 291079772 680614893 299437629 372804088 715684734 761937844 565094667 576316536 827457852 174757438 890557646 665084605 703602244 647669014 823105484 502333444 466499500 294136438 798547755 733899457 182688754 391098430 323028988 95421824 730329593 151610611 710399032 280173571 861249553 911848133 195894722 253153318 249109741 353335947 11434338 386669818 737354920 271956165 426722250 836648880 937433550 194118296 152726164 548343458 169679943 115998424 477439294 671947351 834097770 463511798 200426549 775447158 993408500 544096792 502891976 124870357 58296586 889679360 835183409 381147759 791265594 584028702 306812305 979255397 144604793 93315213 436282609 658363140 297352227 240798470 687899458 233599168 488731647 166011382 329432417 852372277 489527097 625523051 903426057 779191842 908214118 946325530 599620839 216928887 545603461 774103652 847000458 856545603 401969915 608726351 781171312 138315972 695798931 429464972 16120820 480567646 80627587 336711792 942144357 736019610 325337706 614741245 87310320 333080108 858910284 745954008 390857650 316799728 354855833 361919824 297098920 962085864 990795041 120989279 508032959 247141184 394101541 155735970 863082437 315714381 266795081 244898657 783300724 469345159 272340120 73490315 488979825 892026770 892596876 987038902 106978113 557094459 35140609 134506277 105691735 592515699 210412859 314677690 740526602 721296471 59155431 865774344 810404254 368559657 889053722 511878726 985591612 47114582 830712146 680966227 624119029 340727153 18579316 594727093 930728385 404355891 607787470 939011228 131009155 98476416 561688085 291387873 400270594 551896677 439767398 846675454 120074993 229458963 430772551 395331872 601937640 42583016 641046691 963233045 655250282 133123940 741329616 137381457 871247840 558629175 83179662 643388663 155175835 997000239 55398656 856115148 463349971 405342793 622793906 694172481 389570475 124682664 778864285 356563050 415538987 62023065 528647963 430098445 921665602 20919694 623587569 597006729 658251983 443082274 767313998 725894131 303422606 340250651 342504390 557220607 101336621 572417376 715981657 565105677 274601529 55150087 513087337 954545447 667292716 245754185 357332933 740424182 941900649 303303818 757179040 59331800 992254008 454168152 804620189 995630539 548623050 353976677 704937656 243706738 110198842 328511369 983826281 347232803 902169481 374605514 410052986 38508236 422053535 176105044 954924595 578868758 217080650 467352953 272338737 713167170 601701963 692663476 546712966 776791361 914258495 892089512 747605668 136543658 349813420 100141346 789013869 261909949 773814539 362868244 956736801 267897184 995190188 43960475 89974896 124467748 490067672 145910 750678638 495502398 636401079 905678996 491982234 578248593 377190741 516754183 754573016 251305120 15322032 323971338 655858804 198450077 721482921 613639297 308719910 595823964 368246024 929981046 889134858 924829281 498290559 402607647 593023654 809351633 865286566 883282901 640879078 106915449 106209025 993889306 694182689 583357907 817108981 752349340 789690385 699192063 12020951 760245550 92956893 662254016 711419100 981618890 844303122 782739338 758582570 532924052 263607976 153380979 742386122 699407575 555661049 503700536 250201770 302678020 822795723 467198786 878240935 934917051 719838797 784395681 583950460 94230971 751505424 359485451 513529304 971116272 1702421 236983519 535499853 129672817 413651905 341259557 484563025 168448628 243601889 154901898 334572101 474414945 870133158 65928042 131797363 16267455 916030388 901758913 405317900 732193860 496752911 890970167 771938093 282308811 411301406 396935706 160544208 461755733 119123902 296849251 944355813 140972049 382625320 1272240 159523899 675430223 79136770 536783178 378870921 580983434 729518938 826922015 468615794 952944488 586811556 8682181 676810880 467281075 295475137 711482237 568452900 176085342 449416943 601493294 18703289 788243332 224739297 884385383 651714426 491101034 146947755 965527135 405476502 633930361 205562570 982636535 507972382 175374916 330432035 564891315 49030153 227889547 59623429 291477445 673233465 178644778 595904545 665926915 845950326 323912498 238499737 34529770 773782900 75201490 45571566 451159208 787691211 24132715 224715795 884584711 191180284 21371513 240731991 205676412 901997169 470907565 132786299 924869676 20727161 171882454 367390882 552439772 602451279 301405685 17263196 860707068 388580372 118588710 404488349 21201569 954982610 878225082 170620352 347757453 204034170 805507106 484105357 746427173 769582308 947668472 927205681 284076662 523611602 16334595 271845952 257435967 825454062 55324971 232696248 815574744 334478795 878122117 214207488 680701770 742145245 386184265 98158306 472727110 257058950 121788895 311194260 217224227 472610069 650082255 809707190 403609822 274196662 249339596 103092555 217573666 390256261 110507187 168451518 324728635 875819392 205101449 579989480 697670688 26916245 547509364 540636935 575942261 528852625 594164427 737330365 198799738 572725038 479576329 123453974 647003173 757668881 80254928 626451596 792741385 108367551 853783276 507149563 724346468 108465320 651976273 164229287 931201827 923811370 194330393 811139130 995664338 619725700 964167302 241369296 447243943 592727009 886618374 466608354 579696515 185753166 925680428 310900566 858365677 617640648 622588595 407794810 30544149 870483249 594837884 128064770 227901647 770626636 242513044 30099727 884147870 653192402 324558639 777975071 188575142 127466585 120888743 734996262 990142138 902194784 465799297 912634230 727962958 500628306 397362533 625443277 107539077 135933827 810184744 477051984 44464674 876465193 310032839 691177613 919107991 39723623 834676067 283581561 998223609 882563651 657205575 121671023 483935241 765738930 189123048 265873208 270308141 992717197 207235296 710786814 657295478 268839056 351856117 139102811 810416282 812480109 680263180 614532165 622961144 9747118 424198206 250373159 212380569 557706704 997966021 408216268 596412970 320604210 645799938 754071914 458619652 872858912 720363397 764662430 490715942 688403400 853313789 209209199 64452663 272670279 715961156 711483975 818305925 434555545 380844898 927563772 240279303 120389548 889649534 354369229 736168543 961738833 369159152 645652830 168282578 318976061 577991726 879429565 808029010 920291094 168331230 47649884 19993458 198203747 825112525 140658975 635406454 563288981 4783339 789355589 758736193 852373767 929088339 267745149 277952100 116439801 721801547 555834589 528024855 742442899 833911868 826226146 782392889 551897833 110393786 45606514 794334030 859093488 604527747 720324057 813153164 56423311 504896373 841257932 712689349 846050189 89344158 983247211 259884664 199693208 235508274 276621881 351156431 666016332 779645836 537725728 251805590 194186797 213257775 124473724 151945033 175747230 581336260 507399 883458053 251217143 672508960 177851365 92250255 648775018 75506240 842536869 564152665 326002718 400203078 447407165 992188279 797309468 453223549 488913926 685574060 327765586 276521303 59950027 952355167 815084699 776706673 931026869 728036765 512878777 865342093 26801755 370491423 63204178 163230102 609687994 446525507 831537914 66312099 520909367 6936080 32220460 321878504 182605729 541081911 865526598 26945488 373070376 272431116 627630482 884616162 17949552 252415637 55247939 631194837 207179642 174470512 719659631 683391103 992614839 822308085 704736027 218162917 481299958 434404884 36416044 748603187 981152635 348290419 952450935 757020349 413736934 527283285 397991346 969422332 945358408 969502121 731040643 36282263 97958933 462154503 751952494 616414549 735986728 863421359 183509481 822023468 354038219 103898502 224522825 615747638 803485094 673162271 621003218 385642423 970618066 309564846 523678637 855887386 822183883 139378710 110949096 9840115 329173366 665576411 70603648 757718778 270305312 417889579 433960279 963802390 423420543 758536417 354508594 152781649 68757169 607555451 311461318 62184159 234280248 240915998 558533291 488434712 234595845 614033821 542677345 273194372 983968108 918357866 931537490 300434124 124216616 651546283 916792273 97853891 526090595 393484067 230121236 540236130 915220391 262489153 886070081 881101009 949104616 623723550 433308252 484502104 847086470 651975801 522493019 643911276 8868933 23212984 204512786 483615910 70021459 448576490 565079622 250656460 416968261 82447306 611561633 743996872 996027926 171950003 473313457 479781036 310791215 343066799 336443632 244011956 703500635 774353770 402650048 269050183 953667791 156361023 230584428 116313835 295233322 595555114 338644005 477502036 365848945 523268821 786319616 389075038 17752079 215622029 685066499 731831823 763266011 586398027 436014866 502410638 179014416 148875694 203554308 963562801 709359193 104632060 157353361 250563699 6789565 818294052 866508120 871219446 851238325 71132353 937738724 363599750 527822876 142089230 779328932 842442518 629607737 342786037 858280949 83061697 356504249 641364227 667969556 706716107 724377263 425957486 370514476 216816801 688462490 336770330 920421969 518359504 280715872 772861069 931594105 785837082 574050639 996270067 825735303 89029216 221864729 58238759 754886977 906389165 383304925 31702437 191992156 905324851 361191968 211537813 164055406 796203855 322209232 985658056 976025597 898923138 702921027 225393589 480856175 69282682 151969074 222684795 211745812 476412171 657303240 390506974 819033894 280915756 701766798 206522962 811381195 629963269 6770557 622233836 36883204 139389149 324927468 615527021 92687304 219688746 147881638 340068922 505631216 123910534 507789784 103452003 760958780 771242164 589315093 746098078 217349716 414862497 858651995 30600780 1840076 44315486 738079247 31116660 112832284 869536298 834942973 927672007 189949860 187145316 680395612 324898454 211272622 604243609 962658251 457496297 317306223 605802363 181530956 287903329 63481 899307241 869709134 382352718 206376019 970499297 88079269 1425576 949200995 257539219 357005710 316579600 565659132 856817998 120747187 991444429 289813975 41371537 76843034 138822603 159613589 227369469 5459260 380941476 475086272 914527 823378166 538122646 71266505 159985320 249987214 79136393 661036551 866988532 715557043 474445068 369718719 745305480 533769844 845750103 611598614 32028621 346218066 846559560 401009442 536296793 233260853 669316455 202435032 614882 118717285 943200738 61863197 497720145 754885018 171122066 93620662 597965486 454937586 6033654 700801112 564655918 215128305 179096372 684840092 262492458 942920325 160666909 692476928 799745321 264597248 120317478 466392307 699781842 851910181 538305394 213466047 857580541 786254871 490584260 528058784 356652959 351524446 176724364 679333306 406549729 524990713 439935461 67106325 344246282 954990397 392913289 712519841 676425616 44332787 307437795 482048056 797589773 126384967 755678721 213929882 628897348 682381773 963016603 932948594 800149539 128616327 669705231 126347344 816018362 975965141 799039586 534018992 931879239 714318729 803566923 655906545 158309672 220304339 606890521 767250267 341553903 413700436 473491918 745656350 746655307 677494545 938460181 52985691 242770968 804608373 512196662 331757323 127263579 134765401 343209007 566975003 917285950 276602612 652013981 636392795 44474642 174655219 25614532 183995013 336649558 776733023 162865048 336271675 814841005 956245164 524891310 206776836 524276191 495027899 962855494 800737621 10787811 240487374 324196679 758198914 828626129 799643027 553419327 715055825 991454444 123136032 249757798 870287465 770476962 191661299 517435548 645993818 500571270 254391792 404452457 633714848 892812882 95960164 675818746 583155485 671564779 251365893 522154536 944443031 651459417 389804529 953432433 241957055 317731538 979344298 341533437 937055280 858458033 433480737 349663386 563619183 997231481 567440552 638047937 392264157 522263250 912569342 781857168 15718609 691762837 428101450 264737744 407858307 571417784 601734937 352721390 810575124 77413218 453690971 508279042 384705422 997615070 342793074 984091598 645904609 919263132 406557477 587600821 426928871 692684093 646418842 500159944 413388129 175895933 162964846 699355583 357618424 677736013 343699099 183716087 18658878 255899581 972248453 615986554 714652845 604706570 351330299 238850293 958076323 550697878 99890225 778167233 533879660 236333550 461157316 608796637 713561657 889415874 573907644 786701295 989881634 428614131 224767620 479937608 195660587 259150206 724712690 874145757 839267898 122412688 59856709 585897807 861941283 754261633 318288668 298284005 615864219 693181892 654217098 790716559 125970760 890727172 192761348 559173346 577318065 28311560 18237798 10449438 29540168 483615939 87983860 975191597 253964133 546202195 387408733 520147610 329089867 13380089 576086455 883445663 484636194 42620960 427795066 103579931 181125372 401865052 676818579 160522133 748445137 261762410 899362891 804323643 299177092 771791916 102136406 112385765 48647133 154475692 581709013 905181970 285614220 329999903 845530698 519433453 879574575 897586398 956263076 136801087 262150211 619126126 751673399 722828675 539666225 882921338 344774850 198050008 351719756 130743508 776203369 180510981 962718157 621660283 487084729 400665465 499203030 925310863 78585766 220761162 823923055 347143770 799723155 374345531 746498184 75986770 143597186 229260463 770119678 702303250 460481241 381108406 815532175 993315423 774903542 603409419 544108518 646430495 827382422 663844104 414733714 91296105 558141213 69232313 359811600 297952118 448127316 131728840 23493055 105605037 577327734 570579347 943181286 1919893 456764703 826042130 185055163 950496994 887696977 745943027 789144404 907729010 337037437 25315712 63258290 507383113 523073143 394169779 506164929 600959372 719964795 812055594 957039697 405806996 167575854 845317935 6044952 33562843 96230560 430283948 184332476 269030659 372142917 439647548 334344647 737721049 382423801 231153951 139854501 500902732 353178115 37369147 940866737 613673087 268128783 566897693 133345580 329705132 444306738 294481151 788809285 291900742 534732013 487599809 135453701 357369308 756714782 247383783 478958952 35496235 824064280 11473058 277947730 482513940 297149073 98956234 223469450 20068519 394546338 192441309 906732483 185372946 571497171 635378946 145434259 482795698 397719566 692792076 681868414 916536076 821482926 716621932 161801453 577092298 430439533 93741894 962025263 565520574 94115183 997858912 155685247 8944868 49256768 403941419 4610558 920689507 380916443 11252152 159377847 589447039 868469913 441781711 730072472 28483248 844925248 298764240 471911292 415598483 988627710 322756300 603242789 1616103 471564392 627800190 460824379 808410265 390253434 837432385 112097361 753938107 620873882 457566238 945758173 861787786 399306649 54952388 346472771 794636136 171264676 800653194 163581641 206338530 650935135 818889584 321922725 926125226 213071311 322905630 824044524 461285789 674333020 154055137 962556322 688206523 107165152 2404784 857643953 39589168 91978905 534801967 262936038 867947603 28699943 937753246 231796478 612170904 775103132 286646771 418824090 301700779 185701997 352692673 896507203 658352721 581119860 806831942 663412071 768421246 256281337 453169263 293475 10387281 320921001 555961542 437379704 538112777 306128024 254406278 549372109 504289045 758087748 577211788 941841524 310410754 475772818 195004513 470647656 800430995 639504593 652442419 747716491 619624359 527908531 334704855 145182114 867124553 880893270 874386383 476553313 4956078 52143938 13436739 620955488 298566449 760371811 203047937 978961955 794500178 894180109 289818494 860807953 946544832 321533183 205827807 594530426 88472654 835202650 612492262 223560600 246932983 959116467 495278597 260152720 270331100 428553719 394398032 429651561 772815180 337200008 939254154 270918160 61152695 18940715 489002265 390040932 108724664 493723149 470130701 805699876 690837270 704515009 168057627 939726073 898763449 338154823 77881507 592027765 752975798 290827778 107966892 760342544 355540038 872809155 232600297 942537261 672975567 380298939 641963436 732911636 752546009 533533321 688442616 989284598 568753690 380746034 455032435 189329647 902133613 583140133 976957803 292404221 241670613 529294642 45949911 622996232 880505725 602610079 700025177 389427430 971223223 86118665 731098167 36192076 408045822 423500672 473523808 432849889 265485306 791319420 546149482 745462055 704969841 251352279 986013334 24185747 23556440 31078359 401710029 651782783 363533004 735017515 969328282 325632811 775739151 900319717 698385462 170148286 217329032 560335493 307016579 355040334 579097043 329083373 463011842 948168145 262646947 256800622 616244968 454925611 181124832 366453437 607403021 915813920 277672596 842260212 720134379 620423271 669093874 29900699 240577962 506883735 851950165 171848606 568193564 120654127 93399872 840461396 271293624 708263322 210330464 824062073 964574622 645618989 782920072 241615153 775354258 940234267 474531248 553750282 53808388 412753546 348062721 353671418 326246159 14729600 714635712 257633121 972832367 845189105 101029988 324792062 630126731 330906547 283560584 487256579 788913267 649083018 489373422 502739203 633590750 129457438 293639555 164548091 975621164 628452864 610476632 874019666 487068514 761058477 135055531 298312916 521118517 726228097 375930845 895099064 753787892 464128454 228243065 732334746 455741351 558537904 69500210 679101566 612918508 194755671 715062247 146074581 529146906 974363581 632659095 343868526 870720549 541798088 754732144 808948621 695700909 204934989 105961666 915058387 804939766 328492546 253543436 419221839 141927925 773135756 505648369 261436020 968695103 785609586 411689786 24340259 487935248 104223527 768957658 313554079 118918482 563977475 205447918 678914452 780029333 860512068 28584634 102875929 264813070 547614489 792507046 929330092 738265759 32587150 787026760 777377329 30628303 747694240 975515226 539838708 53359048 886256177 885845441 735674030 792510313 326485255 940601479 478390649 337398572 150278613 835445724 983260124 365510202 626025523 309001250 364241347 173870947 627006371 776978902 473315714 458612763 226221710 405418665 332678875 410155397 920041799 681835625 454864879 870574951 625723143 423640082 808464970 627623727 44064491 584177356 554941927 443479287 867084544 761272028 714845727 643837562 468454713 238429371 750988985 630187045 169183851 428474881 820957408 483656192 856057688 745898606 223477803 286781643 701441453 342874356 798785431 937969885 447969527 977142435 99486346 661553475 477752752 397446583 908522448 691617448 819630650 571174545 625517726 940332135 249145313 716967614 884370834 720099708 966721490 408847859 522445747 108834705 912844841 664812297 720602474 582047218 120970469 69478657 897843088 840411290 972808432 150373387 500005475 660416296 34448668 453362296 439337604 674550753 644538659 875624901 569177603 240044722 340681890 582700945 546014036 570216505 2431528 964235434 824982101 669473457 558197795 18241541 370315084 538679552 623541229 854889402 203081188 861316537 930522822 591906318 737221175 944612879 744300762 442366060 720858044 378198244 175066168 803924584 24980060 507250625 27355608 202005179 964499300 948474320 355993761 925172810 388667528 999905007 943886420 978259745 438475494 592478871 883001514 400265584 468440580 239452912 115611705 829176470 895262415 821449167 367835519 863940631 940014234 586667429 226307562 806687384 264848933 345405076 299179211 399068402 977106579 777778531 615601240 649349919 115629173 80509568 530202805 165947711 766826171 3163397 41358568 231267490 159008711 415844271 557119976 607327417 348703834 373588453 369358216 797167647 406272164 740472504 696102287 88217494 953256252 173695455 343411362 208196367 365988378 307864758 150721363 276470935 332292520 948339016 630560541 977121130 218524082 995705669 45905246 608931055 493609069 883494654 656029284 646226348 345480565 170712187 16002140 443123291 183779022 967185500 179773025 8195793 49619435 951909108 35735413 845521685 423227548 617019193 165454207 113130063 236319776 285425099 582086739 105113045 853039132 39161329 524565161 513792034 67214751 505082009 920445217 996128216 918753820 951109980 324798277 756731075 811603057 828528505 899883655 89009366 330560483 471817940 405476161 526726445 456868127 356325634 530791857 300414218 36377403 413862966 597688067 332047066 315200180 621469778 526996040 454305582 891156592 791674330 984939896 273535427 130263739 607110400 669503607 442405500 650541130 965873819 152454156 338445413 470452541 411429672 61297897 386935468 948554773 285053904 725896356 471056821 37665987 437576034 936627909 616855036 731148184 460580694 39911854 925148464 428739159 224353995 63740852 189595938 108316449 531307912 741242387 401286352 925822341 546753787 459967460 37626203 419311990 283775293 685325626 100796174 672622164 498519562 398743039 984335455 600547813 712054222 653099792 90221287 956167507 985233046 165377325 962872936 245436980 953249050 206514687 103348176 658252679 65262518 768876312 249501233 481027249 162849142 341138672 47183815 726299773 589731079 316138986 350257908 581246499 948821953 870523727 648914757 10441276 135299233 323347535 698401387 600749524 404751696 285958402 222610755 510609746 490770716 15198573 988565710 834001295 161731071 338158198 545784635 528940742 832723350 58863344 883521242 358062494 22080553 6731926 721255209 374498853 950775718 582366980 529952198 770998477 772346534 523427529 853869445 77356404 508649832 843821651 722464081 356025952 256284882 164084986 931799369 199226177 308412789 413254147 298962351 71105064 940404870 608741780 630503409 661082773 838405863 804083649 569576861 409084010 71206429 960321409 410991989 478803704 579063640 750203831 2184276 95712245 352598128 915137578 914022990 10941049 738770659 181978767 877562768 683030541 787725016 751754107 396317561 898865052 433916448 916886897 173382539 989152897 651970353 347360729 270488174 364880753 991321642 451448840 197796091 919178646 139468245 11371061 752265002 46433660 66270876 148220543 199931167 158558746 74483099 997714930 977436706 592701389 934101390 529849214 378634156 631804246 523990497 630487295 465025620 192112872 44472733 636912178 376948961 22928662 427780735 698330564 975637304 543826396 886504417 848410692 161796468 748644769 370742732 272132908 109510859 682530864 341623282 490765789 698502816 50907584 439805608 336309920 743186307 783286254 109789679 181946279 858011170 510333120 470064747 234258443 627339866 686618018 385056876 316678348 330063408 656823914 623457005 729553366 959042255 941856340 195301512 644855545 401765766 358168841 502433929 654237421 955755222 381307792 729697244 759700562 156328287 518343012 455985690 31015092 630286060 777991006 466784385 184813447 102373234 239956167 535999736 491308318 668022282 910173258 21780241 377101244 101026298 150043388 195823870 854546063 887427501 591464796 885721252 906231971 235422133 467000398 514028680 623480817 151982029 114112033 666557657 330154078 1444822 469580678 517957741 389558960 372979425 314783903 298252740 798902682 722531869 419086829 955006984 580438198 196327911 591762785 757479429 565458309 264863425 370615119 821648691 390923372 468909655 423609715 574447794 638074818 610202748 969674741 936114760 109493439 179188269 334025310 197750118 122505856 701009033 735430823 715548195 920574227 338519009 630393900 418416700 707930214 303458979 188102322 56149018 911474519 604180588 296322406 573531597 99839137 865819393 196121566 584339466 269861874 123871562 727875865 434764594 107446488 844733023 983165046 836699213 316879313 115254390 739897547 42126855 679939897 58808823 267065671 864229818 353092187 820845673 116024969 850824293 810367080 514263938 834797973 514611631 362155900 352186397 504829146 806653159 139308436 255983418 893342509 629278723 708174750 789979914 938350282 638947493 916457063 893065692 434880089 603556627 726150058 988741421 443183076 151329082 470169865 283817118 232745444 485548981 523131658 420745980 524728371 834182849 278164514 374826300 997039382 514259783 948835753 778066295 569635900 479692243 816539360 778497521 590401466 545897375 486622193 305623570 977180940 577724810 755746539 493202803 217382939 98366234 256803016 675308237 803389999 804626304 121774188 968016641 449294592 626110099 703842718 917415450 657243051 762802126 70733840 130438737 110323126 395924830 33243228 634841340 644817933 660421905 428691201 96700830 686534660 599118173 369814377 674972902 157943901 221330017 807617253 982105509 309083705 699382501 265242545 162017751 130624039 747170137 995281385 355023773 57599258 167615185 147420314 840535621 521587 743198225 391686838 974932289 708957684 950740603 183330837 766710570 491764428 560011043 730365048 13792457 593597583 630836159 937067145 179396101 130299709 908695467 657409751 345687280 977159990 776146674 200151261 123179723 533975628 54988098 652713980 348039413 692873908 147179250 308568702 30300664 469922824 112420867 292306578 245893771 954077265 790919962 489376596 138642052 678885114 133176966 633962950 536866284 637239768 395916096 851674572 74559469 915028008 949864424 939769151 321259480 389655442 222675907 988501201 813755434 565936931 673027008 435586341 518150532 881760844 284628344 217708998 179368375 761189357 365558825 910141990 930532527 845331788 939564475 975602332 132311434 357075734 497230781 394189675 694448524 307005534 58745446 660751289 460484384 984251300 814087063 468166813 500864218 137200077 980376532 2461705 246298229 505842468 720338254 765742564 12864977 551246947 296789726 540524791 165703167 71551904 413744897 581072878 736493612 497616231 871828703 245000809 185828537 900503456 59787079 776604132 998547492 118344868 251721135 745705164 339623966 451350574 352293176 501227377 141146230 185533542 900845480 245340426 695381033 7298775 278518386 523284155 433632856 377561463 892982185 414574733 420683089 531272611 302553356 98992750 80979847 184941854 328900869 252817724 257494674 250031387 470504355 560921015 666231353 671681833 891489691 981374341 636663143 549204040 535071564 602890298 466755884 886856670 783402945 176898640 42355654 383750328 557076390 736385063 994778521 514125835 127582805 727871241 623806511 725566578 269047497 46906916 541504315 954928372 913837740 470785430 888532375 86699009 667454289 363648863 677637704 475261546 156980903 38438501 185180025 817977455 996604499 237461884 141570940 483125428 962508442 322295391 780223953 930196807 960272236 732035754 961717781 98345115 278025570 413760234 401298710 105056912 660247224 726115731 131560904 942922602 198119000 219526134 156473924 352890582 218726609 598771548 120180944 444410092 266484055 127796203 229813975 636702500 801885901 881948597 150871017 918219625 297091767 923558834 950457028 673051396 794217030 302201029 858091594 683971500 845429588 31111349 220001417 989176958 422217563 569540405 695911857 818671871 707346567 203687134 684551454 436978717 39186082 339550257 695791189 523424042 904910889 748305560 672361983 979913449 457960761 609058658 44488431 507281020 199047831 610907852 426264355 882890352 303585459 206502645 965473467 684630970 24657575 20921060 65778437 255023288 254757681 929313678 634600309 908523057 767476663 773816010 778854561 664366671 402465096 521451612 205826898 86301608 321446303 829176554 281373041 578324028 785697302 800633097 636100879 333678700 942254775 554667053 428184427 789047306 657113907 899072954 870040551 186126153 692893661 993041915 8680205 311519170 692549305 469017375 636000657 800876931 31364713 813434431 166585679 351351792 577267520 791899231 807029322 478179047 385022516 775072612 51836333 816169374 278714342 770698531 438301899 546558398 130373018 414986325 449740831 666347090 646550083 909495193 333182540 872330963 11369333 353687161 20280095 808468508 521942641 443566181 764469387 761848176 83638046 67190714 642699177 307330944 698656011 325111991 345804733 463376225 274916974 463897733 213818165 133242252 253551400 567501877 691505825 165747949 414690755 805292483 421094332 520461258 779717735 160829707 407019116 65564382 393740273 664462554 127535546 701097539 507504351 520824291 880971484 918603903 47693911 271067578 78404139 457510273 946088745 880076260 986854955 760807835 944166603 187344075 9128068 349138061 261935711 28604094 879471377 662842489 835393450 280285431 226758852 872143089 41843741 740418709 634621126 492816871 565192142 907120037 813146467 938020537 802778236 750839830 60343560 714187562 681090705 680604866 437817688 187217005 812721687 37500010 225997843 711062035 120815051 849636536 393557024 247285529 819723782 271378236 437632155 823349477 296275414 240468592 967782326 223550021 797590502 376693430 415925213 835605615 704661391 333995349 498141331 665599484 785287118 67774336 494288272 383431159 662858828 838356304 826518961 600970952 715486296 854632134 258475508 628929864 791527915 269944012 323025032 969719732 566996641 828556338 607270334 409114287 817405636 50925235 177851157 421250121 641873985 922543084 658958891 217802994 491890609 472439404 110941646 657362063 146719059 58179744 578137843 4626272 856710666 534153188 408786355 709789970 62547053 224846200 672087633 54393279 791536559 249456519 264787001 549547742 649313455 459301919 797046527 860797017 329526517 293536827 411183452 764931448 212405166 589875386 976161845 315300344 519009460 935204714 1101719 947740400 159082888 695249401 411582897 438841319 890925132 242948864 204867040 940658634 483439828 192922371 434673064 503169520 580827029 203408743 853594549 777277207 498754735 314882945 825263320 548107358 16210662 958061961 851510543 889815128 129999022 273317278 103289466 241851386 880210205 875880652 49218662 360905118 983040240 824446470 366029382 139345935 161235344 994704160 388153526 140951923 499401743 381795809 718910586 466414690 521659934 119703279 373663098 772445917 972042017 857310936 270232012 875434308 959403805 903462685 63889066 33258345 823166400 234892056 826374008 799441275 390521703 426603801 988612290 234882332 758091788 899880266 178274616 249709138 699036249 220171977 795017403 999300232 860188826 669702294 509861190 274859924 165128137 470219419 642904588 358544562 193958533 737578153 425100381 273288 220371988 138474360 34836147 269993253 174962022 379518379 581735346 685591802 95919122 276122824 887023912 430981099 156168538 858911813 874589957 987207991 604538656 443926136 399729766 701437836 355111161 816996771 7653004 565819907 79447319 139310320 948374503 117901590 265202524 624805743 387009796 857515434 677164110 834589979 820474788 666025488 410841119 637188562 599757761 873623289 784671650 87307872 367992857 876803204 243747163 428263799 106643501 398025016 807410285 528160940 963225660 929839358 300480936 3480967 896373454 946371632 447163015 355312747 827725196 44116616 853636132 841346987 360498249 640765996 162798666 603617411 929569793 576250539 553587817 798276113 330279381 108282871 614056596 182782046 860233746 586833774 236398733 239985502 833336108 461371608 266720954 36107752 590252223 138741601 720661805 373881535 785918090 933693085 471325338 898329482 665115516 686436233 555338081 845134815 679492777 585274252 843571851 332919857 80127046 367198578 630858948 958978789 617254591 85936240 934131049 435760962 103436185 834549542 640189298 24858237 737177224 814559383 204026507 617427115 39482987 104550704 166016514 186200527 723129409 555864518 704223183 582509779 604331575 456274072 994446737 852734600 338783393 999135307 840499596 374369447 903003896 94590184 92723125 412978382 240857826 431676650 302535839 814091661 573611305 732817964 795346058 952531280 379451071 145446644 342477918 248108403 875738561 231877359 932232874 86946101 152164978 763762734 703956134 954350272 210973756 66285623 633442097 572976166 815945396 965766886 382567377 726388322 889540756 316459406 6266807 989317201 106431681 831314915 979542199 259929023 710493507 306589442 808549972 590831196 152300113 832269424 478555316 208809155 83487042 773444378 830069671 119665010 353333660 569344598 61557153 473363926 259935245 149312226 954329284 339488063 425069411 866516963 80484313 483224548 913176986 860200419 954614091 983221736 791250136 92841434 784074803 5703766 493517417 744571430 707624784 327238174 215745467 941972874 843806732 244301590 290479982 783296054 154285427 329785607 687886914 639535805 838531391 931095697 325286439 598927132 357524171 993185355 154634026 821930939 802422305 850061741 77666442 836648037 571070193 891994137 47238572 562839375 705362832 262766549 809037591 939225624 80368640 760236310 649840512 379523778 374083302 221237492 857595589 330680513 850512019 424575087 614739171 215481313 854301180 704094067 897365770 286020967 493667266 677041102 365023887 723840754 482590509 279871037 259781607 35335575 338725162 860455260 272329656 268399811 540817233 617809083 784058833 989726552 453414115 987347908 730341408 49273499 142693317 487664855 583955397 842236217 110269319 785922609 872881663 602767428 693478495 68372731 583686971 259529790 653915182 57224265 375117834 269579274 940622203 297488402 56945197 241074165 283378294 842851896 58372483 639046325 809293301 101447556 575571734 343056486 89840759 649683114 493938717 283555729 899884837 920657215 637986543 124842014 442322635 459908807 772600853 955104870 552231138 685590952 656296244 765519396 79778957 548137529 609036322 690683262 370462093 229413806 658659293 967860738 24426324 888631595 608261509 283773863 96394234 334246583 246015845 474707909 904630077 397718085 891298288 932634149 125173126 76722350 431244484 87742964 818468066 112349365 315514786 650959047 557091851 177837567 711833976 845041048 563410781 513354272 612995924 408055762 787077088 306286480 916766583 44817473 207465540 427866802 484803137 50736148 629083618 896026831 397734206 31903729 536776118 66624792 31718433 173239513 76304747 387400101 749545412 965470518 969060940 697790072 884693807 499348965 300675155 81116282 8896646 753005340 68978975 460530300 532556323 892336517 947384566 892240442 735398781 499842859 474726857 511840595 29969976 322803842 120545325 333391 143065379 852949866 663642723 932053921 749248811 379484201 673766225 862216353 937438318 582588520 834312584 942607507 707597619 266220608 770622015 252310941 918103264 369256238 131997267 732859345 790824715 6640405 15996239 728085035 658869868 207928645 28458076 442258825 590997482 319498607 214015832 336186293 36158865 311412917 291219904 36095070 973877137 251973785 7127994 434023972 308622661 463021578 360262423 905550211 23426099 338512988 145638988 332152293 50349314 425525327 580115835 384297627 792886412 128137476 727505768 320328672 836496071 763647756 60513415 650859476 430156759 583583579 210152425 841077632 303389449 673235533 670466130 122485205 287183 898716839 250566439 528514734 180677316 935132825 252573560 490965450 617471660 202329783 242962174 642701780 566167920 845977853 704379668 259996508 334649129 802328018 220051398 905074141 906962700 278327043 934909121 937873079 202135678 8499395 507852890 241110579 187363340 434888883 865962644 701359233 308274792 191420116 351202327 944029886 955865967 253990039 160594733 980101609 598605601 307962830 975746257 739809259 683923115 593340346 548865955 362045589 729389406 801357823 399448294 815954080 103849402 752978854 620425615 792710831 483872353 558163498 233094959 397980746 543983387 208045158 402895626 956106980 939959772 328766368 1862407 289404629 605095363 163823234 471207090 222873180 752523278 484799015 121102919 659172007 429362477 592468742 549247393 568928963 624537008 679764489 552830792 59049131 501860692 76431227 151561069 372102719 769568253 16008208 811423463 86223946 368449714 165296618 197574194 408334205 493158571 264124809 828974202 670971761 709556801 101631199 384432268 559027622 790786041 818394172 405701086 50927241 473422714 454733665 507880339 823524454 88170140 674011762 530790252 309921915 719198296 8395005 588690654 89258469 183403474 60618487 73132544 310071473 652647255 960092090 501773454 803631309 735704916 966330131 138143985 535333653 864231274 28999206 824770871 321446984 692903261 146720401 115911707 645631506 321973778 970434889 589093878 471733248 908167842 57278392 492684756 39305872 465403209 106178732 232873572 613981216 462499428 787586392 7747325 921916924 139217282 359237723 673584283 347155282 550620760 246295225 491028712 883923006 338704318 33720543 989253429 606684353 695051963 753470883 940274038 606998977 45170551 245377345 503385932 577895954 985103940 548473952 288847102 710209391 33732769 317891341 633326715 123178357 280656943 824312762 70163546 88914607 471518651 532847691 492657883 968450448 870124086 942475006 370460901 904892270 972964286 26934149 357307655 887606671 574032019 227945459 753484407 69296150 524436514 352953799 744958999 496631066 503982592 406705380 665048939 891554195 760399077 170366617 764842404 195533919 791127479 641866394 983330971 651124041 125443197 537989127 391097293 337997314 849758063 343438946 675980131 568501031 755989478 359809177 458729768 384141618 53850983 487080450 746298264 640710549 83286683 758156635 345649872 87947673 777248854 432352711 895105947 408852349 84905107 221660629 663473248 817647455 270038391 109977211 55556158 618234441 690157130 357348370 189043186 752981292 924141187 573405028 691456738 819701221 862251707 422153885 175238174 236616238 750141876 24311377 539131231 909732023 285081949 552682622 31124990 457789967 464725958 169989512 956103178 204785580 107811885 670204737 881460528 316983028 620887537 129469911 262471108 248423982 410939298 624235244 254150089 201155980 139877360 548394629 740291556 372707368 441185976 979814926 925422694 35284737 358602236 542625629 74852420 167554560 961866984 568295343 64301088 452435192 418751185 998949544 148949822 921035941 296123439 464402265 518808720 5257122 503349159 585272114 534209964 953024381 688955652 530469141 677363667 129120165 430339129 847147077 310045931 404025458 631718496 172188527 499880576 466109992 357165248 583364520 490138830 876180977 323661248 410972526 234609075 870593754 961352694 758363049 45533620 499430114 857284892 144103073 223846660 995670500 983611670 580833036 908792953 567299759 653336304 612620 513737358 43663344 1917402 10175267 121606768 423261672 424038965 861670205 404059372 966820905 385471100 309906353 927815546 240194311 76787810 313946173 748729144 219016756 621818807 775345924 789588463 382943463 483731317 99943318 115460875 773993535 720423106 471584743 388149415 445256265 102028775 72300371 397513854 563578612 965530456 331114399 62784253 163379482 302339761 38218747 132697132 255202173 986202037 994875896 189177033 115054020 93860175 303517339 121325872 32162691 793814160 91133760 570518634 736905008 610281400 574488250 985501477 985671984 253565222 395834429 960721590 558351562 734337641 58422374 232171041 957743407 93775152 673409593 834473736 389991544 127676505 470417447 134500542 255399080 886024934 764663552 276967226 88348841 91032325 312418564 104947227 777548104 111085318 109331675 28820390 199884867 786897509 11062924 328582094 327486774 533686983 312125587 759099176 643644080 490680053 26868937 537030643 868207390 464486370 932052338 648032022 990619613 59992492 730986048 875702563 142951979 116865684 946816837 906995534 938863667 208494599 882223614 439167096 307969028 586057620 151660627 368042536 836426394 104785404 886188943 436031884 834216148 147513889 438864742 992244861 128658559 114737675 504446713 106290810 578913094 293203439 742701514 910603176 229486537 281311016 65987784 885193690 335253124 593325371 74881864 910411653 987192547 906756819 560245766 83870408 795203127 135283902 357491755 876812394 535107768 161214207 517569599 4466909 151122056 220357557 631220027 802404660 291585715 794823723 336563065 35060274 247377956 492376534 221817792 969809213 186212027 418203473 620411457 576720228 464278579 518377820 195743627 886026845 54361914 139204073 120466847 878017419 761002593 398354181 227542240 836826353 313212701 745938412 645242141 351484478 269841619 729928709 730369675 387478479 27366861 816413143 20240582 109918110 484951609 449606169 244630998 443237460 978523955 773575842 910250791 706206272 567115193 700463481 1884299 333228633 954036152 937730504 759478083 69402430 544378623 472452322 304376565 871919161 95618633 624023363 163360426 654220341 521588276 977693070 840984539 759401675 834936908 89917836 772909410 104308028 986512898 788694325 787259528 259604845 275418033 821439390 393999866 11957486 380154261 186370576 422259402 873148407 660248797 393375476 380673911 626617444 199152277 991588061 337050343 664134851 777220794 712785796 487101284 861656893 942141741 625173715 361676712 923755178 806592692 446491085 108555726 728019340 302646788 517898154 294168667 529978120 53451444 906002119 966708028 752436206 97577545 779286434 254112455 342412214 68968231 834017256 77628600 728759678 462569888 600831344 409953591 715874062 663170291 775128368 236245454 337220567 244848186 433779792 650571892 530580461 631186306 75424536 834211465 354622222 328636093 10014204 358940106 139708838 337086145 558695574 432946542 499995507 865621075 402318508 751725826 763023897 306534168 324415784 345987466 264176907 263876773 748108574 178869863 454942110 921162608 967381705 562920040 419151491 897287134 400524937 906014913 664125200 347271990 228780012 605014545 368963652 567156907 351589545 343014747 616640967 874529363 545841555 218121997 56495337 93606448 328222644 620099070 448166302 590639406 573658933 602994793 424728971 439873566 224714344 228777716 506177776 400727734 400971464 454352814 953759683 663117979 800354812 323547914 790131863 725351506 830855885 762804966 376083373 255406670 52758575 726849929 556114410 650005994 615945274 572970139 456553953 166350440 729705780 361453111 950996166 549929452 335789192 114961879 952361338 77445774 447626186 329223522 937206660 628138818 250956213 990086693 135079956 948994283 120020778 315266003 249997055 539540306 189731384 911385994 118443463 238822443 376253198 717499093 449121425 829846539 38767883 734098584 332069676 475023733 579541937 502117423 209609233 354344402 246721961 726790226 952399711 626247796 53355977 685443629 149243357 691979668 327970314 425700937 478319608 315396946 979552404 276930968 416280779 860321978 438914221 323966590 202476306 40969405 247309771 619969983 233839673 133166896 640055430 729578370 26078537 299153881 373831590 507880548 626615293 614377309 835007762 911181919 460698036 622059089 307681504 540537814 973988981 420047917 415720012 8946843 260611054 674692690 897425078 887780063 706272377 637751048 978637485 437969473 350564370 383545989 912291552 346275527 237380450 218147804 702475052 48968156 466279608 498833939 149609367 888247640 835051276 802215182 268372296 957317240 918283005 410491045 599194516 166269150 294185937 166393741 334332151 974865307 12978808 122541670 822168085 97560098 697448585 663707838 846979255 753879379 844052292 535557635 869683920 364676207 697195665 272635023 390208381 948462117 556966907 416926370 878491136 875569549 346802622 909637990 925174470 570835743 957535160 258433007 349475938 938567620 488203375 736051251 707229325 571030474 871601172 634625042 108414765 147050980 632445308 682658393 702005067 409616945 274783016 937875897 438338586 49950005 179168830 742432199 29827065 681609948 314889616 909921800 334538598 747446141 877437587 900173030 991203344 860669142 136268389 518837935 597022154 384682251 224435921 511614622 294726030 612475816 910108994 528038357 805376638 363180196 933417938 837164635 411920616 888354654 529842751 198699045 216025920 252695448 793510640 810083846 923863326 483003008 642010617 460138183 757266503 655598509 947314184 737008138 659347364 21250074 874541446 601463143 38200396 621435694 243651955 739833169 630123640 528026036 761094787 298724397 824813197 620625124 487092746 456295236 477405714 623904090 34502921 739199431 632616126 158195739 891247910 212659149 362325358 341614485 842193330 47798618 510399264 559295132 475774626 334702423 208759299 708322159 38994329 490481811 249311336 731101361 662873816 798005450 373507534 493107312 55978070 734291357 941182933 506941730 609243813 352279955 231902535 368994469 563121156 759745311 285114651 97968445 498264924 380997528 227159913 802491031 261405503 992983109 295648884 972883656 379239646 28178248 593502636 229742927 849533724 11697334 227988128 898046481 889393538 768897419 848425996 538456664 330937659 307003554 547422422 695563230 419235360 870130121 884897540 369506239 203685298 154021039 830380750 577335677 623702550 459337197 221913484 468958214 696839452 526094852 559299780 450875060 698985276 623848033 929656608 223792705 152132757 859636307 387188083 8780241 903564780 488990737 195617208 261703665 583381426 971163070 454139923 568308632 517062913 401551461 990682574 463389477 351596179 266140915 331326046 517240155 525293522 662706502 8889948 98660455 16027599 231797021 266682510 245097183 398420029 136191777 948395231 119337663 378856063 79896035 494606686 785584237 962823322 622069981 299552588 537177528 208004671 5329777 118724617 309983442 244303811 166091751 572089888 644761947 209031974 954512497 161683526 970278744 904169746 455333415 496051286 181081652 904612818 468848651 909856338 777728454 839436897 322139143 899182951 213040973 717880154 51048426 936916710 185603177 744661002 387783792 552299341 514924588 864796507 55849531 81789242 450435082 22508263 44740815 279491199 13084384 912173037 309786530 598352650 965390834 242500178 21628684 884684282 916093424 368859561 503392079 851816595 670240237 651105831 738221458 144446266 969857640 622514602 928710888 859252361 77095493 241678525 716572491 579106356 812883409 214140810 654599833 166153254 458709952 114593519 451456414 764929897 425862195 981477220 408070924 488172330 492364717 78751255 31517304 18678731 121088026 830224851 359942505 192584650 407462866 295516686 262016069 143222489 891137683 975197165 588286301 570153666 728014972 952761137 426571243 383093386 485776162 395845453 278468366 686989135 297159285 573370457 17021140 221059418 649665492 925247504 407932715 701335330 795755268 333274332 243089132 368929348 478886708 879153868 463269595 955521663 885047286 916270745 9480350 494173376 563836491 364193441 167562696 70027802 641042324 29415912 768402128 921093832 965999266 162258210 298252316 526401327 303031977 683250596 199358705 863729368 683218500 582340717 564821632 965092726 731179133 946317093 426711270 284972521 866988477 691112731 210989091 581629740 282639065 804907591 328838941 171405682 300547090 456699974 962138793 426854667 3002890 795672419 23305854 508666227 804443856 378384264 150841406 254968907 602762459 16339283 647703669 602591328 545668611 45422332 468777358 481087140 97509008 610663793 288253158 538309430 680793650 887063356 843515329 777215574 922876666 108691350 347016260 975424881 716267625 936893793 143992960 855418902 208361566 575620126 18695026 973821190 968112174 586155778 313105400 876712225 566660491 927482338 124454364 194072690 82043793 52764223 936223440 185072943 194126277 411771966 174165871 133851311 907668247 731350447 608712759 868373625 465139931 327163656 421790864 719866679 559465933 199609962 429725134 951422908 492409618 984350879 382497836 74083333 874399035 193012750 306258376 851219504 709466936 368999895 78450604 908969871 970554732 544848565 420631242 376299921 892792985 609501711 42908924 174704338 489331435 603199221 671012353 695964183 692245752 211849501 399904899 233221449 660635838 806023145 538803477 520321661 440934564 702156639 281995052 200988908 487750773 536616238 612506671 408347132 576197223 192926125 854262371 919518263 658832406 261022939 902188538 929031758 446188936 358705504 130865680 61704737 923477035 523327373 974451618 434388913 486050772 28714068 809783453 414785574 520227776 609366106 361362640 822598873 304607124 547326179 529307892 443434560 992083039 273499358 455242156 899071234 525205395 661118948 610142848 825392872 180197902 528425780 669364962 158151142 17163544 400579254 124727594 149095704 448417117 15307255 965009307 612211138 584020974 931198767 577023836 445493836 919442257 230812220 156128131 364325196 59421795 372085160 676073474 185495678 10069364 3589027 888646849 601593794 988828988 154552576 344435332 978400804 230605269 461513792 690061311 402467035 168473030 652471948 635489995 384254013 522961147 602051763 920950378 814326993 4063689 192551978 50183493 454893631 487072238 702826002 808592811 968590428 100135825 183594546 891749078 489462311 484666939 638655992 46078442 760657597 831324645 21190015 82886382 670719085 844206059 705798272 588994514 441090470 684605970 662127974 571793778 283054091 603119495 618974787 406687886 330796888 881550305 207963593 394807505 393327226 980684315 547917915 740618184 448569993 622171549 508082941 507516913 783148473 306345265 627934305 659941290 225833584 998490125 100268510 797486143 521077308 311511247 920908400 62261468 465718990 177237629 194484165 385850272 600608002 661146499 878295844 691731594 829777882 703115959 115872907 197987972 45706627 943839319 861299092 124309087 599391309 542238983 325063306 495686098 881064374 547437778 955669852 270908033 649616736 573101107 747028641 752562420 250804761 354512129 43734165 245475742 338231504 938956166 655786018 932163543 174074789 780249452 512326617 695955676 215463126 505545933 821191406 574955743 866306514 717026081 626744898 315272171 387945004 482223183 110890845 651733754 264672927 658216868 686426987 386814190 275456522 386256599 566107717 513111954 109176958 632651522 860093293 585711252 569885230 679497134 333584133 477233809 546086002 777298375 940274400 447711239 501971663 259318432 388539765 332560991 781656558 23466744 373233890 387065068 239099558 941091317 770854382 334916585 843239664 492137509 583585035 104070514 345848049 784492665 609225548 740123798 61653488 192442707 699915125 529326146 452381028 879026037 707258601 218742354 307111400 915026701 878460089 50182278 231096385 705627314 781934749 595271559 654432852 872483935 299779061 971507686 623527483 86860411 745111748 20326173 340768557 659805907 384397501 912844430 901525646 777722778 816891446 902436992 494509804 989390961 47184176 987740966 237130487 803658073 989626959 251840411 946068106 264418755 568331237 67195611 264853420 861667202 329441512 757770965 978783620 243834837 468661753 343902036 911879017 806762078 279431261 78664473 941134805 515946543 106951939 211793087 647821160 339046586 295655810 428789712 202117619 989037277 375829277 560970178 171692387 169390045 629388216 150711528 957352153 829101158 217833701 141888905 565981074 906745233 234789591 773193928 801600512 12166617 246050159 344683962 35798194 303390755 671832374 888994907 142325607 953562299 277914714 741456007 605001724 651219032 610074035 619747081 43374978 728931097 910297535 655712403 295200554 436905342 748176805 544996031 388061519 85474171 87832117 311992587 277924980 768019295 519255271 606168034 619689030 559047914 691052760 484843928 551204502 962873922 512313810 48784226 642932323 548795125 867702084 539179620 515473610 976192757 962316612 332445350 388141084 790575520 130943889 29456411 300956362 486668991 636981395 510321049 975153776 349349754 333271129 896970725 816873681 616745322 603805592 798559909 509260502 889343883 786341556 694622058 558743956 460501827 320245938 56387249 586255688 478603100 847837248 563542232 440780373 784095505 240111800 79301419 871307843 989611257 762675990 85427929 201076422 72513567 881662210 884402682 995167933 183528170 81796046 106763924 100599591 433814580 692059502 132512141 635012656 504457275 240283523 662137781 56281135 528594337 915766356 199626951 384420506 782225524 728106449 937601636 342650648 550469931 508779662 544050967 603013235 288840609 393935566 120222028 693779357 57430043 358926199 839570532 168173235 855701577 281826582 943993242 611255799 946192447 502174951 388109083 998794967 514803576 724476356 321762549 681606370 153396189 923730233 71347747 826913494 710013625 502893171 285884294 828852118 634853827 840141639 402060006 132708141 128229396 693414201 357540345 903348684 698447670 153623660 7837522 99550933 277838356 33349296 276995446 843250114 460928518 199693441 266736079 867348806 566391749 557500920 129484714 163456560 833462392 56502238 335365957 500657788 765862572 876797607 435012799 252758607 739369817 990448995 663406367 605142769 907664601 357759701 244912475 119208409 538636784 481533540 511691592 693424542 700308176 736715550 20424874 68680968 994402316 7684797 375928875 774031872 763154337 751424671 425640022 113311384 63989234 460013257 142607020 450208780 95206097 642124525 891400332 130479041 807506542 94612320 375699518 547576897 618567787 921239076 388017138 445507647 275898059 190569438 791804613 94885268 913363194 80533215 7331253 72647241 914413777 363762717 925549226 693499268 820711817 205922870 528281978 879567003 247511755 103231604 687947996 848225801 387630496 677319111 812125552 799345775 651414403 220613056 776129730 586462107 332677962 931515815 337922113 741153662 343428672 741691741 45764167 662343479 473070867 133225072 131484948 608034820 619312339 835740958 401097683 525795925 511472641 345954626 604506516 525226680 687716224 15765858 494687314 455597806 643921313 929452465 332883948 137542358 811522837 984167172 323012911 802611071 418461691 838878683 574494406 358887448 47871703 157568347 708094545 230328576 549082009 959131735 248693578 373073081 971866773 939998787 529249314 149295340 29280134 585244222 526713637 275021681 949366935 828853781 144343951 801396542 210344783 935427376 190287487 160214394 263401892 45009835 740273153 468968047 717471991 733602113 834485763 244097678 39180 58601052 817573214 872732535 992669967 800448271 878935769 785808617 615643285 820915721 374169623 975320016 499902620 782849966 561937581 933293379 282385032 110606598 978105105 441157496 295297323 15346368 416466857 529102038 428897204 18919986 37824441 274997990 30118596 904675419 784293493 685946718 34915678 548321507 255005173 623876886 444820978 834032408 28111933 190619923 590869842 102375667 520308787 390944641 229075903 905828371 368813738 148232368 73040858 356227261 86947675 901498911 341349812 260135138 861955046 750635887 580492739 874588957 225553623 65695082 793357790 855561126 539078301 44395785 630330961 509739881 435364498 902218849 742923461 442832117 388847094 412770745 981313873 201438078 268133620 924639352 865305457 309833702 956268959 722193975 476253453 87033271 485528810 55007151 595236719 9333785 654068156 682556865 493945422 438592233 474407389 64733818 56093894 815609764 964623613 883044876 266267744 751063154 502154165 613132247 860152324 583716643 874805895 866395990 277974794 662210092 290251997 889143100 381561393 329479598 240296968 255876696 7488154 588503152 690116672 213711528 998419671 656725728 126841768 435538509 852297177 448470040 41257801 94958227 366864383 914599125 474851347 194826988 736855055 401459839 689935326 721469430 300995124 337302052 179108462 115967600 216994053 963048829 54328428 23449674 643008128 676430313 235857512 788250007 95490312 887556974 741850588 148131213 976109676 45901245 617174570 227494805 849420514 888993067 237182362 959426614 258722820 22874040 917590622 914787367 446411226 769342477 820298639 692105025 642621392 844628601 79687212 608591751 114996158 665426417 39016994 231197221 648134365 663998741 629602113 9579116 403935445 723811631 258001985 187662557 329956019 220421416 799692228 14955030 803138538 76256414 774445394 513044965 37507929 587235534 889725536 826977851 622021190 853849502 432072004 76322868 97340254 731344030 788594752 131808020 334322612 499530247 100524671 399510855 264301512 62617524 291460366 33020255 473653886 94820401 701381098 959453463 784821796 55603112 240644338 548329043 226962800 433249527 655212275 585344540 886787196 571383959 961613978 515653032 802386385 326644658 689482627 800842066 15693145 571050776 733703469 96657310 819330410 593581119 984130560 65976885 20531650 5637190 182115922 946295530 143697032 78472437 143274843 160953019 492495686 609780666 830409786 683594953 607132148 263300782 307648248 348588894 556709870 841691537 585182602 474009330 866632953 382048968 150501061 862657821 930392129 40129123 593464173 877989282 463097183 598597401 71575851 691852652 342612301 574549834 350860686 414582160 127284592 126947837 314707729 747127880 479051415 717814241 332255767 508092410 52234745 955913802 743992805 602415148 715984431 26305086 467201456 34292887 134184511 748966240 225773967 510500880 817165976 701658881 904761732 514508193 460837905 707717910 665399418 805383534 7234274 33512257 982888767 152621522 328316855 499252679 366367119 553268802 427844759 569535126 410802952 138478181 109410809 201290826 317606457 522767621 675108285 461614367 355636620 155076884 825611300 961356284 189214816 508524718 938628318 28575088 357996019 129533464 509678595 443203255 124417648 825783484 844401416 846610601 478491111 583960620 558027226 327990482 360055635 572585254 677643716 854912097 311564690 960111243 315445883 524893994 610797680 745581671 735332632 243274417 655171488 535138540 140527400 548791579 422690742 116807544 816800661 779649588 546530105 882329997 960228273 451587704 256513933 518088660 682974268 711426053 871250950 947297571 794254943 357408673 450732252 898699125 753453729 413024701 82219058 136685293 742726137 43701614 922509585 85591252 491550917 459222391 174395497 927406241 919397323 488924986 837916693 306837741 825696055 882828746 561618 778733179 935899550 504926428 927448656 164825911 714429697 615463379 84095002 124429109 596486079 243378867 347838637 93617580 966632875 845421867 428117352 344032262 769364727 426785172 545123993 419942602 104173886 833647084 277033066 983476398 299317389 436323037 654724601 491618699 664285768 98650802 77276228 771335010 556783181 233569892 971280697 142608739 476681168 650683540 239922342 485386463 924047488 261317254 784776004 339334736 317505891 826445101 885354422 103785564 175927793 626577436 642012549 667324109 840014089 778011286 863228449 49041302 489414123 667226752 908197858 479944658 679722824 845456749 273116941 720739525 706142774 47845263 469565129 373091034 446796593 561338055 748949545 737471141 922936606 552825245 881702690 477079518 640224842 216143424 647038362 316226156 236135277 956941192 604793944 461584730 954296479 516502002 380069389 347056089 423613032 534681257 158888532 347210821 728398520 483755641 485726381 585239843 306741728 581620443 752152960 569950749 128485281 555489004 884449056 330199300 73627674 228612215 165781702 487642327 849171169 701096166 706234772 742801591 91984869 93797460 301786515 451438320 99875460 466665091 140634800 573096439 617377412 7131090 141544395 530394467 221655317 908226648 167435171 854516475 896305609 842056392 166907356 130035113 121158557 223744901 545619983 624911998 435281399 612123536 83721394 842159546 165156772 396959134 481279013 492544956 275606493 104992517 825129906 603180562 443341624 702618307 637017227 89688686 430612673 921705088 72173257 438542763 334531297 875498891 472725100 805591757 662489711 855015899 599022688 248676863 698822569 423083279 69547893 287669138 428674865 201758062 291383139 970389766 257272088 417872106 477239757 30376444 984970192 909193241 966421304 69239615 61301051 40099638 839169565 560831424 323307416 42218287 648708559 176852380 62636187 363831951 125169040 128447770 121120853 474391183 611642251 292320161 300367425 602639373 195920337 880975554 556753994 447191183 136195930 573221695 462174648 902008137 955533064 975058934 885025860 27356172 727615655 184494324 626215692 26350173 375372771 484975724 120563088 503489120 208330584 348189627 981666499 442628582 465478024 912620640 799226358 427302244 746144220 474532618 286203883 938813179 728356258 397380236 815774657 469345650 156759321 581468897 426380808 978108728 71728733 377746987 191491513 439637860 553527931 111541172 394742570 105615542 834095200 353203956 454129448 119738517 187286506 465633411 113249242 80457230 725493977 721160483 353467352 904391388 780251090 147290816 20612384 981632605 538285421 848189808 682202647 157289112 116028703 934795374 152597638 683466554 737083976 60787994 885071016 229297311 675801908 327531009 412093465 280303808 52914197 888749012 902679260 67790410 597898754 6167157 253303392 515895690 388660735 239462878 93499513 131691384 510683632 917183811 676581479 538576051 938842029 399052785 488590794 79237249 761240553 724279396 695354293 919297488 495140169 885108034 654537113 418518075 153492823 921748054 359668823 844445950 731024769 406130578 60667697 145494532 629090337 793095696 550447828 34540250 612872571 576412438 960588377 485464503 561153716 146693901 818600507 742164088 386245346 937584779 260735837 217587626 15878651 761343814 236572688 876430201 653503968 477990183 979281670 840381627 716592476 89359159 292112480 776380913 637708064 61837481 86547107 646846529 554546886 567369176 462574007 70489211 560819149 285003079 430909430 931515927 42388638 21311138 858922780 572805682 54650766 861264831 685615438 302038678 8959443 477185939 677532186 874961075 941410959 24117575 374897525 317590170 67821514 550735139 481932986 133565970 374583160 972104602 696311218 226295678 980416112 391088201 245762952 893861103 784557431 34383091 344420306 128869657 672547889 169193091 338746765 946590814 917469744 343449100 568605727 643152327 569497075 873421771 630087251 708603390 800287699 598349343 412463967 44808798 815645471 144616087 698291170 792062440 425294598 244562149 137725664 99577406 764632994 120298981 111815369 589648564 893619447 627462808 796110445 973635902 678606825 149507887 645688844 618076028 591581002 749478389 499806796 974954425 594438871 483006058 176450872 62226398 361889838 190859827 907776329 363348102 36389338 327885847 851551321 692490223 725844556 544354572 255287471 973411075 157052636 607541036 285127670 29659725 140541644 966420667 557820485 7311110 402154055 562612514 93119771 709155854 730187098 196152825 561657433 470491884 452752130 779143670 506699087 176778958 58551328 598835712 577880496 426154894 306669692 748536352 951494303 659966635 487096775 967896204 475618715 746776135 734725787 803740829 251487634 257537590 229677945 477363671 128272860 443900656 315254218 767354082 308912439 461217938 615741153 255275159 376087235 983335395 503102709 55756524 74444051 320168277 42401320 319947785 320680728 405423099 686737795 4877111 192060210 71289494 762096121 58219494 451197476 974192273 945184609 921595576 304581662 782163189 600230268 447622250 244382130 86813052 133952246 960234732 146959584 983047560 462425183 414596687 380977677 622945052 809478447 557997006 51456772 348516842 534403782 756472013 454496253 531498568 100599666 180222935 409117845 383189558 289660768 768221597 204532428 23488090 29667757 207854590 696261654 292287236 818970967 240415484 551346247 547014956 523486790 794184128 971367579 623043441 851183185 870851491 718533301 485804313 587452460 111430425 632196006 547055381 573186685 557103307 363432673 943764217 161465543 769922177 886809412 709135368 22537854 616717868 903561236 58487847 947232766 505605358 10095617 490778855 380905350 30160903 254662171 70434430 565507648 888878048 339903203 129312972 899644730 960576271 481616701 861658710 410325106 793393998 40976245 374261583 376132039 901529731 108727363 501473933 751052802 936759220 993063874 118627469 60486612 220534809 537632890 840054390 69910233 627652618 74525782 199121692 440644236 610086924 161118637 223420915 288557918 847525835 240873016 609697304 359395228 993195799 240256033 215047001 846419583 422361326 925100274 890562333 15902505 822045300 34069669 710840192 405731236 58930674 508711569 93148226 867784672 471651805 888725631 687687625 352962743 718734286 495200154 229939234 915565290 705426828 576958333 142264329 328098339 857567230 722343197 182385113 474362867 820773434 940292069 720264859 322323154 987054714 802218655 52355839 932161826 38894882 937642114 436451929 294728237 654948284 379601964 597385133 97857315 389868540 108900515 678582431 42089501 26915519 436463183 103401084 366928670 632175367 573041674 188528963 707386639 796950780 431517712 486708365 467066049 34734838 989694215 753264801 52756459 9280110 783074554 161802097 191123505 601574152 467445345 352019348 496932890 920451984 477759254 914232649 628789275 568419574 214289251 391081333 324278667 268817243 848175856 119818410 251894184 638634235 502182359 938250271 734610593 726376775 103252883 202975921 41161860 370812367 745016839 266951657 574202442 850409806 638923909 71354103 551054550 892880554 751606461 128134576 368965617 485294063 374588369 262535574 938724682 836496717 199142723 843410126 964483964 789987358 552717827 224906024 254753547 816340459 31989603 147918108 966649179 44664666 359757859 753414345 223531967 78725440 240102247 83012340 911884401 975688601 296209340 930021902 827265427 562786953 814792216 852890416 331463725 698180439 199672024 957803287 442990385 117054330 310785728 787013930 995640950 208527246 202447360 302298234 209335233 900766292 254263596 862052541 135444408 181066169 699552833 981669715 657723118 417503180 481504676 228047427 936538335 718983631 191416099 842271034 466207973 700311327 169353457 992457363 778883918 944450635 974672558 838033483 986987596 667215876 494165087 975792393 896189175 717055528 599912303 59011870 981007439 850860728 158029237 440677248 91561535 121534177 164614767 174322895 208924311 312600565 617384769 682780752 109275153 789337196 446058806 902609655 69246287 456741105 980453833 739399767 793485272 532704073 552582099 610320817 93824286 607354217 97070747 968029930 70980477 285255789 242232010 330012564 658443058 792229271 188160893 636769255 879416683 928079188 452852522 999826367 632208693 512570932 792742075 971250085 389123722 424693750 343279739 773146566 397908302 611617916 447218975 473696511 596864582 999642321 332451015 722897352 749780520 250101800 44436467 176597838 86040714 743694556 432200342 251113565 303955183 754569072 107393282 852690543 112878012 27929489 983267572 81677473 572513097 737587985 57987221 888041144 819112139 647168234 201224044 430742568 586120037 151660099 339654005 892024071 783345949 197652837 826849287 238411027 828797417 11144896 141295340 51711156 682173087 665794549 732289359 474051064 567377919 635936965 226221255 57969560 489797559 763013657 858686029 925304821 930381140 925609224 825272138 638248977 500088147 719271882 810474124 92256415 447955984 687004357 77293895 397361907 320512216 809646464 697169430 95830545 848703711 246827956 880429571 179332508 919341624 38574649 506905974 539453159 637359335 499993106 677101384 297017319 976580055 538415469 601307060 521367610 191555031 207053977 236216673 535473195 871288991 447382291 986850396 452214693 328009683 844233856 448115481 308728642 394504700 858757032 342176119 584821569 697316235 714831235 424751545 944522377 307766233 198850089 5494157 523068838 442164260 100077532 79405320 176642519 163933853 359805961 154598827 693870579 974713166 906594885 579074903 419289991 902307635 538553159 99223896 219080638 659541292 527738871 265959273 742193267 749204742 680558685 501268131 107207971 615850094 954395309 464042636 532201461 946280959 952314432 994282512 388535995 662457402 967345823 465933448 941726696 780164744 234070129 939421359 632935326 358936636 965290634 864682409 75736740 482116492 882896100 942004229 682536298 435796125 724935590 289511608 808560902 712640631 532181529 215704095 461202999 887629833 103724462 235610878 836647527 229676 789025029 450409349 980411041 502727078 272608476 61460038 753631389 829668381 717902115 996627779 673181628 212413729 410569706 924822747 863891974 613158958 923328111 173461214 269952297 866680997 198780435 191263109 215098748 534931149 576579424 119440489 862305535 371383001 61178124 614238607 53430360 921164768 963321075 453992550 601107928 442858726 516451604 712703170 957792885 443099606 365746337 302622178 625541325 600359549 481889509 299711339 576551466 79658389 224501859 927890537 521610107 699452353 415158 473478224 84169812 374641289 691715763 371118593 9385464 638293342 434341700 941807806 11911757 714747546 139575434 451100983 342577890 661870720 121716168 420723326 331116015 986626103 250041191 440405267 356456785 633127119 429445115 792854489 336168337 201518146 744024382 924323104 949670623 59161716 523544855 850231706 13226000 538197036 263798926 135934824 844370340 614635548 458971353 35907340 243523268 849797597 557135 5119093 992860734 625569006 881372020 41140727 767434123 412541373 208202744 267958097 318877638 123636887 347254699 21657767 895720634 342962359 183241609 947023238 793476052 305051454 995994803 962420708 894679853 284246583 196538229 95511836 787036804 891785103 738069573 562078456 744532542 596721188 134542524 122983075 227059310 973687989 681777308 435707311 517103048 909363946 852499668 276863774 273051822 756949591 964955765 720113234 436122660 886356339 374174139 846631450 895356124 822798495 785372934 329534890 486266413 935658279 204823014 292519842 437457685 48278586 224094732 799288066 766810428 156481011 254700628 62897727 644670961 796895824 981565889 732332582 262325546 522697788 300292218 121760504 496947849 556663434 571268826 130626908 495303763 470599923 224136280 49901405 550558840 952325398 699594390 223449456 860013457 161999229 212955746 858693493 669200856 136680091 83678894 83589548 269060666 660374470 613761430 202305480 171444548 912025155 444528477 585109467 867114030 811356727 840119148 220322658 365453270 544118199 863033179 448298565 95231939 225270202 901714399 738586574 859399463 847208740 672483296 621433268 52169173 641416635 959867752 18234133 740603727 179485491 682849962 955309940 266508220 295103521 824498946 876616640 305819885 631371531 397411829 298772814 240845141 922592088 971698729 39579867 652062484 64974426 110029940 328466316 563426038 698365513 940166866 403479022 538027366 515194696 734685029 111842552 602550653 363317343 196394875 579605253 140938232 403817086 430661251 409903835 705132097 76256643 304525594 344819880 550023525 657097515 724009479 634358017 648918300 937567775 246746926 248443363 898079942 810281202 915414184 993223603 656966763 281480478 264621486 199265340 761980856 444398594 89132452 23098297 686839558 381514728 790936853 986249155 519690835 896996099 504091317 766742625 578144839 703131243 66649181 119618301 217204017 879769889 181368338 885457776 127968264 114406668 554237695 922684662 836050284 260547074 598683766 152041782 556965539 697358521 34265846 880279355 435221151 757412307 272990495 92271225 661955826 146147034 905644730 147032526 332657377 604128574 122827201 318870658 700809296 670865753 134428489 852586819 413298382 124795245 656630425 354268449 834800278 576566432 572243995 528755866 954781058 717970953 874771040 772649625 690963998 533520795 940679462 585624420 44850326 885705531 700427347 573858230 790413251 595474352 344326892 951255466 312068641 519385518 372693031 383788996 239996124 514239183 661255265 35209716 583845056 697898127 642020378 56945293 141028167 692340571 304482560 827156812 976112524 199742341 941425380 535238233 816893787 202261570 171766468 564930879 619495968 472448696 647702464 896316914 576585202 139221742 486389799 865000917 41269909 217171158 801007720 591347877 965343339 692619594 486615075 572501397 644706180 494307593 248553239 459971129 173929112 406508477 441776688 647147407 168655881 901425910 25750147 102896888 686695130 581843763 715225674 943277383 664482236 219870926 904391658 603023278 188561414 30548757 194552556 578698445 787597496 72641845 560588037 24021412 919519099 752423244 704398606 265898149 969959322 164296025 496014861 805572261 770376463 699402308 118521387 211343325 674819959 300256992 289590717 845178102 229692701 998469863 755411517 204701695 859892205 950863864 787713868 909390184 337033854 549462686 222117820 743291666 304241936 320431434 85559418 208326467 271366286 721544532 830185380 485407651 321662338 877690366 784936828 347643469 577503014 935394675 482366832 857088698 716095577 367241664 498701071 138659540 236415136 887678434 799060249 470854117 915285805 983896763 925423722 420541344 375691735 293447696 177038614 94144807 273260061 918444436 932860235 629898749 733993507 113034210 450008164 331926289 499094972 926589818 464087528 168569781 755349345 425632198 933051519 184195239 406350125 142007831 299033341 1018126 700751846 302984868 197793118 144176504 919186944 17763730 608788421 690555095 210233491 561835496 10529658 583099787 881141849 825614487 672759 239531096 858998458 537675128 735324625 732391787 248322763 495902287 435001807 153941850 849456189 345369539 552267736 45675042 420516978 662256741 703909895 420830760 156971888 110860206 885752718 602646331 722245864 886438145 947269078 311039885 729261360 846504614 291783531 678352060 856895048 203460302 809231612 186395344 474759895 199066260 154159207 298714420 769846058 203684601 270242734 858466751 464273980 387081188 200902142 393868203 307446442 531701544 519168681 611709088 967653820 358666621 903344171 486229930 777244768 492021638 208559909 879205440 622027825 666367690 694456677 397091647 699924075 577239742 947325661 902852073 959572723 56969143 315687078 914335469 290401117 846690809 45114889 543060835 192107486 195427500 448457580 503497154 455956052 349075170 783020902 833506038 184361803 858613395 192998320 302135626 123357932 570761634 976282157 626396530 300736021 156599511 274398184 687606669 48614206 376155875 646567447 720180766 300887955 960528225 499381522 204181269 328362466 519483857 647845726 838915779 400117154 253575322 171624615 45865195 170572787 514064915 401191614 864596396 123898524 866341742 742973601 699216537 804928778 854958549 248663918 964935586 99112793 434932040 454804857 817762859 467131717 492526015 565657901 10629106 977696053 241883664 851536425 809685032 157090104 186139901 401303598 115978339 747073033 606487089 375249450 111840670 17522690 307745080 624166705 553723201 207005743 13456018 854674810 684246548 765351740 30015645 504968556 479407442 601761920 401765024 12263568 331091351 364778751 645131216 284202653 455455205 170397274 990984262 774595688 529128621 159822819 483923457 541885176 14461634 801650066 476994027 847257723 869077602 368665350 438189271 243916607 492348467 169740933 928868986 96309953 925561921 236610558 565846651 817112228 732936961 664993292 223065440 465059252 903460432 771630315 986587034 218644199 97485942 783890304 268373634 102587475 503173407 503907937 183174490 262462015 216477791 59625662 300621900 711149587 822108594 228076923 391150442 552623973 768344323 387558428 970375594 327075057 230546841 113753557 124929521 314107286 486544684 155003512 252220421 175821667 28915930 790584200 17463704 44662922 76464167 55457578 538784069 520579689 43665407 533971246 780101004 861655677 967273402 149096973 808969174 382535030 978159636 516549602 816004980 346600486 933930035 38484344 133434016 644785803 238252193 453773116 63214461 83684546 535550551 689419848 493623056 813023261 838076337 899667800 463017038 624272395 411359604 239203798 974300942 991398694 121664975 817048273 378781970 194724407 432896852 781401085 588189956 579896101 691152386 748431548 685400438 925953029 402637374 507650836 195817439 269357070 558230999 658161337 715548063 547245738 51559169 796709371 415184131 71912032 891539799 364924124 807369275 347767269 440129760 834001924 470978655 913875217 765098252 27160004 332161648 954505707 855670189 364272401 929163354 380538268 456617473 165495944 241008109 630308219 448261034 78028149 786063328 676328959 871097276 246287557 250294488 691098058 927457704 144878094 238961245 285752494 829573196 794890386 660758492 270813849 478513901 67861558 317768628 787559078 645315641 936217227 735075365 972559898 182103875 853346758 47326294 233477985 683394188 283000777 275800411 526941964 768755447 38485272 326280490 156759257 548842192 574548964 983998377 812308134 347472078 52818694 885338011 657127303 916009230 71116026 803200951 605253799 718948374 394347754 464419731 406229093 547045842 404037538 864286384 948454722 864655513 565388959 843351931 234427119 39314470 864776953 786342465 764509496 26918046 473050749 592004154 785943324 835846035 58977430 404712079 848465343 784476915 338183006 865638208 999958376 186604576 743860373 812062791 407852688 292513502 819055777 963222647 518707919 523800669 416564110 692599954 653267430 570985004 429586457 861772866 827143878 244878159 430124189 456026906 364841598 463375142 937819685 44867474 765160778 886172290 957654875 257700363 495324558 471522967 929033114 522778574 580944087 944735232 1774563 545913869 861108437 745733062 416230873 523458785 951843939 567899220 944215245 487681096 415735431 449118334 580856502 852476722 970850665 507540615 456082740 770770540 865885023 498755340 690406031 642853806 180400101 229002784 331223219 327408286 515481242 123761720 612297787 935046081 518679630 557816111 438500706 681721224 240397810 663216971 362669333 873578833 384917920 805036603 342854109 217714777 558967199 552279568 240238326 928512200 820496726 64103501 127463229 877050548 621205594 565708497 558769210 341674258 383269225 963825391 216051484 954319558 424860512 35171416 845493690 408922523 88499280 784290348 651452308 768436541 96256106 54082542 286519505 617263175 58659595 527059086 360994112 379181884 666479692 826543968 910185305 328542085 803797775 508323105 646684984 60352114 685175280 520046837 440026536 695024700 61256790 753426283 43012889 537639174 334087265 19514742 852869790 960745947 860387165 539922809 858670328 554194343 661715134 124340273 90300304 104194629 211891485 733333459 801978228 2729849 512001856 94591214 233868892 545410536 631998225 789793667 714445734 673732647 281181345 55785975 327173466 938985390 366470958 602987028 212917542 390801887 93242397 692959252 209944933 968316161 694057461 103047058 928757265 401763142 552214891 384917139 939613141 308094408 170484826 4741250 109068540 230551434 107198153 312718651 819569285 545975923 406149596 273082869 500909830 434274898 877845741 883077207 129357775 258415076 947624051 882315631 745135048 44084683 582462227 441261232 448246413 5382028 76048023 934198523 155626842 622656157 586019573 822057362 617968152 274491731 583933253 536453924 867957336 582577650 245069002 447915205 521207886 330831779 340436980 48151796 584645082 253122421 396911954 173374613 770015109 771934563 228514465 512883700 651182460 171530575 979324354 597832139 379525273 642990080 854478274 928675889 840983382 604259370 2648535 95723953 912623840 670034789 322389079 820007475 893187588 374188336 253774792 611357710 532985403 756124664 395127253 575525122 5151393 442441740 378955347 671089971 396120316 552174247 529502264 831276587 125079746 171959016 917779629 483225059 352806916 341211355 358884346 677253046 106460806 925796462 312531092 601545581 821444778 882572413 536380436 886072879 451378821 22456263 587182656 135554966 128181449 210766839 860077569 760489630 170784216 334575260 281648236 914588844 593814713 746325043 196247995 746104463 786157595 56725784 255094355 562112890 926294357 82671258 881917883 398166026 386611046 790968297 947478443 417933638 88484343 866938650 422180092 237815194 105400919 23666226 654454451 319754205 636300923 858595353 442050809 398194250 780503043 666747299 965157408 769961352 111389494 557222019 981510569 972353955 838399494 121111649 510067504 212527376 873134345 695430082 69428614 697381293 253980794 967061273 558680476 997127616 88493383 786767295 620172686 413351157 736642555 948022516 33824670 698117474 939626959 346598117 982904121 304200837 494686111 14322589 961170417 151574593 243619063 205114394 52143745 578163684 26701061 760666942 793891788 853598501 307687836 893565647 745951198 273399070 958527040 178422912 226986218 354558808 666776344 369757928 93815372 788328126 204177905 529872524 818933126 620321959 360876356 677058772 209141572 582727628 495015215 854937872 757335642 364811094 423076987 229323641 184112322 446359508 322881941 323707442 314648225 215237174 817825685 31207490 859458367 213229278 343959354 462548127 612044817 439321230 20687341 681157915 63712692 279086964 22359739 370727804 813289193 274477096 231167836 994461291 231069594 847578275 314071345 187654776 608021471 68867916 597556798 197841694 236793582 405139443 82015286 488354748 577527342 434861256 201334638 634525341 258646058 990655853 937038820 745549299 302403986 90326498 259313730 235894482 530738759 584545178 271270615 220520002 998346820 546122856 5748377 718844456 750616765 77307273 507924007 701645401 875995902 487827616 648431302 150581640 908689287 147876030 160480621 753168479 694391545 716942680 550898603 493526110 621736225 331946312 594560194 278695677 593749487 92225495 487704220 954938515 856398979 680251823 125460165 658646366 706880540 208965606 843124598 902440076 291129126 948853501 433274509 144060719 265301558 863975892 959992978 278849851 453086473 162843834 811083699 245340308 848218492 561400934 37819083 796027398 397330081 790225652 802646098 801692735 560605607 428036840 412979576 196983510 408581865 689369138 272103174 277584209 660794093 588944164 520718966 32527897 895708508 903588222 332236007 186217338 432295435 427513188 97248286 467125427 491009012 964558436 11104654 461723363 895237179 539754611 87374667 148039188 366560042 965786349 602127127 751150644 173224759 784297880 270667095 191152163 822233594 148656547 213440538 223231131 574762809 359963296 813931032 888517449 456423900 956404111 337547699 665823678 837697275 672128468 944991727 624844403 338788554 173247036 908188539 65863113 210197940 458124799 943508398 608321289 655358273 460401588 19503499 103289188 808592162 36901993 921329846 555293940 480303671 756822658 390589057 126347706 883392895 569823451 500397279 665377440 382523686 686448047 407611761 860219511 430819202 174967715 55987841 935605494 950908940 965220548 656987641 129470403 566906473 120448905 104509556 549984099 603894625 804174285 602460723 271756873 858721257 813489109 825102874 523483597 321290269 80700753 78929592 46937905 236409920 697163861 162055494 279946910 420165565 334533213 214215843 288410662 387135014 948410191 649339988 892480706 278590521 923385977 195551627 299466580 644843734 70255504 954865694 710996388 968990218 960620976 19537292 362526562 912933387 521015904 279027711 544771885 695874607 16165005 261519682 362277247 974533626 784958858 66774992 643220419 770745373 191886872 383968708 5396812 495148900 183834459 799891435 423704149 380453326 587921885 442946223 250339069 598163326 757918359 244358955 30797901 925222848 256533477 795710491 488692532 763280900 887058058 463003878 974089105 194667243 482255545 852319392 302465825 715044656 449259264 691135740 919344782 59482823 41350498 328783196 844397675 764071868 762175556 125057477 18360879 510853967 414357358 995190247 700556091 242624227 219166493 648502808 347981274 136560383 405582054 343217754 166071357 677205083 487824084 145315666 387459965 447602897 202669139 402672464 159030939 18691681 853907767 692436812 546619776 355221562 243628733 415009253 851886079 608845744 797620876 235436129 145536719 252524347 837979568 652486574 323189393 927086976 972978081 978278248 967544527 187732552 125753143 547399371 441217277 594878858 789013947 927766462 114126192 668150881 959692763 303443923 40400491 91862541 315240104 880704831 5089049 707861242 688858277 165705694 56483976 640701372 178293427 732289599 796097715 974922769 598563617 974453898 5462908 937704921 131244194 788772250 448063915 165345823 594993494 375404017 133029360 491355671 634668992 955105454 51317736 233676826 695381457 350795944 928987922 917783731 528972250 612818259 439525847 138031492 183581083 280030156 86877321 729552996 148224313 5842910 162162272 716475473 286260799 939025144 327334527 717995627 405116579 959815473 420230893 768680701 781212099 543371847 911677852 612188795 618530151 105935008 28556649 532151937 386439863 47741518 357099791 887276241 877540683 881120264 97411644 717144153 920832544 353142829 671351935 755392552 431945370 484049858 992986194 980690556 867285898 416338810 91292183 668034486 156544547 846353577 952796436 792277863 492996863 486116433 792383102 746976571 790146344 184505364 629340782 179763729 944442634 931924297 987677922 977269485 252949369 60368867 889544393 373298166 427810482 377964415 482892012 51510661 583252829 211858537 419040012 571085073 797764485 379295373 171837126 830943806 591404448 267025026 690795173 975525851 431218570 262303885 381273369 656014036 987956106 730795404 267124602 428321099 451692365 815682069 484251919 744308097 625319655 976148831 728601082 403372768 268284885 854057028 600439376 604232956 960056831 748038736 660719883 56799376 110116014 485015218 784070411 261820033 675469212 195377985 233540120 97157337 312937443 715167099 31400935 571021770 847894795 131854214 37128975 993000625 240071165 775176501 514684430 694098193 586451985 828678397 452496978 838740882 646478852 490339581 74706730 448826639 204812540 985806845 163074258 596361082 428372359 467389546 14376295 477114110 274198166 737284960 560282612 811899104 978472074 868203419 118725997 472941720 611931689 85081218 191224231 780326081 138061724 248864038 913697383 733281306 538436474 535719228 869487186 157432464 190818757 532114471 257769469 395906619 27450074 79779305 191810270 655471184 562267789 997823540 656967770 649714740 38580496 543761763 770070712 167084149 168505345 484791150 595260457 175688131 158652773 663491328 410968519 755078651 799996073 536994410 121670803 476603166 276378533 13108896 752941174 449777754 89622929 834684483 998864707 379140352 467659799 195182233 81612210 798867343 553570883 876829843 806947427 190883495 478647686 518134726 317264097 778839058 729682117 604592500 108045468 89323974 873288000 64305538 22168558 868346590 370941862 611758465 229677337 102727837 77593354 239272871 737588547 929613164 343044077 931831762 735987073 742349794 665771824 805706379 178948555 57058745 872159525 787205123 326838787 435856595 874305150 517182732 9940209 428261947 491131224 542474284 512244036 555096357 975654971 763707014 76885658 595710446 587880209 203708648 328790131 510776086 734448177 865369295 771673398 291844170 218445142 957029715 800141622 796324190 436577962 394515009 899501 171669324 868518326 174086917 127223225 803664185 162062963 231261111 387001702 318950255 712309818 156438038 447498405 441681503 163002578 91587725 648449614 802027943 54727528 914405668 944094501 234266378 313057172 369291928 665512143 732245362 53112401 503701319 947131105 135160821 350860547 588180025 1107410 890757324 931537014 617303577 415125508 263699034 945283559 823066179 4905667 780745259 117418986 825452468 694016315 647151603 745147784 680652821 146673545 683659403 41901873 33478835 234252716 848937720 695605174 216585606 763568270 634635623 860261718 706099246 92075266 173764134 546323128 689871091 803919553 451267252 662609895 742444481 714328424 876362423 111552342 897250096 396905861 428731122 144065256 695408005 847457158 674131553 848015071 737781150 296193224 381968155 952377062 238194706 285697675 795425120 780121369 283809303 471034612 902214818 160990445 367149703 839960090 705545842 581935692 114903279 793481970 858399113 251580037 23476347 23380067 958021325 480174409 31618819 639067183 818777669 117494197 430652934 993818122 75413545 380954450 786590636 538160273 973747666 621692684 191484358 391763518 408917701 844171831 460530376 177192576 803519915 619522449 624129235 272609448 897303896 107272768 41417901 778148591 647345607 570385617 263547078 626800499 562640156 901913142 16107062 238092607 23517346 759574225 369569722 936865605 597960141 928744292 876421308 535251293 45558071 583050782 424393803 727705931 61521315 640966548 460777500 1914804 844607228 496107972 722795409 697380143 288888664 978068240 225869487 126095151 979779568 31372106 717289253 992766745 917872678 927575204 252308812 358687540 837771402 633277626 982650147 192708532 684871114 57559446 4326225 202459569 225886148 687900320 401416226 79062061 870454907 605158322 805861525 19748622 184742169 663095300 543245632 603726889 927899891 134661440 905878386 413777975 467968642 368514675 951563286 383362005 613232749 254549775 842709188 851204753 587735676 210585589 450187452 795113946 134893218 638127716 626553316 496527373 447945212 290580753 791919567 486544740 290529743 429543180 938327214 105834767 617035392 76256981 556042341 583966747 578460840 448191824 183676793 959562883 361640961 167005387 408839706 722134569 139852908 767182329 343040798 638676949 53758200 177151226 201691913 20720184 301888212 863374931 598168316 342183660 171185760 529369073 418874315 995490675 714779162 669761574 610939626 328696884 506902450 311155380 566217594 329008002 826676473 48274364 60628801 152496793 821329129 303976478 596667313 267611795 837295785 243636195 337783517 544391551 760118399 161554512 121794183 326019917 673002210 279007710 295559447 833767125 236155245 910912956 577595546 980180185 285083619 111003518 391387593 968229634 641032494 345118241 460290306 367120098 208067170 318937353 288868684 15175411 305306045 559284485 681181529 786370452 351972253 895822664 825869949 850992655 628444561 778755700 110749113 231354263 619791691 711667595 696765619 449786946 83883428 551226617 15484093 941487125 1394597 633919381 634292171 187773431 384881013 302712221 100013948 412707753 684815720 67516851 656218139 84172821 711261433 523899881 167091093 588414378 775872460 346509998 623228542 733940742 76460717 49588198 868223260 928283542 646780557 771956690 543145043 437427639 561653129 20446243 980521136 4155302 185559011 440619752 512579951 851145104 885351687 669759397 569837416 21756293 153140359 670337595 380444714 182017146 715923233 310851065 351368417 712295256 954353591 378361490 60025701 233692642 222174802 44422441 696045362 792679886 531563305 198682426 748428404 595068851 993529749 393680827 991014135 344434191 938231065 248423933 480897333 455922256 643492451 25873086 920022345 634592710 129649728 501929763 860596734 977045675 706738867 518584760 973110211 17729821 835753435 701049206 463661996 69100582 122443522 402074807 732110461 653447869 432656801 194064451 103007640 875823283 324782156 115081283 274843152 503586254 433990603 469432654 936082333 389778104 199545352 220197732 383977882 719865343 8318742 778211049 682284562 546272543 348680241 546381735 165896885 570790775 236558011 192585174 23833046 477924691 316697918 994559765 481995639 114584801 221523058 610085735 11714111 583134523 400632878 309900856 636848253 288852837 546961016 853505887 682704168 414536517 188010616 714967579 401550559 423681711 177109892 938389004 630225131 794538587 998293015 557222981 139553851 347546857 433261781 183179831 738930786 632217058 726858116 485162690 862719141 373784763 449715742 418379563 937785064 322002891 465279418 217410588 241863866 656695120 276707742 355411630 1475159 732361848 498151989 987542879 17466263 989359188 885971983 868082446 482640644 687766749 779983080 37853713 272328913 110659568 206820520 409137428 408521168 167297627 769017941 432496188 823847044 985577677 180459301 470564877 120440851 334401246 317127538 943151214 258822477 923522068 934552001 140554684 733963687 377661140 171167160 647672240 473466433 272023921 103139123 89304177 464881890 932434212 757391909 228954507 250033403 869889295 574329526 935738098 830142627 46367544 524494385 450557958 93891481 179489685 875342342 408324748 199958594 301645050 958442963 134095280 955325614 527189036 497166684 90261768 4205464 186519764 751725448 399337361 287062877 51014276 592237425 995632817 151393538 238953907 450586956 955452722 931923256 660163266 555965823 19867725 931601750 313656061 442684820 951810719 748964956 772925330 67115842 11551019 335038963 590317213 821112671 916793440 361061220 429645340 906481906 298028818 991879855 927394044 53470756 725974401 933164906 343522317 149410634 970780239 60042723 519665929 409592285 495997833 938182151 613104525 552065922 165454759 229868652 624283687 99925765 155722373 901051732 348622662 515746649 359707241 386801061 382475844 986030230 985614590 282808814 249334371 610062595 236155995 342384485 779141067 950750729 122566142 603146989 456674956 659338557 994664906 188320776 753316773 490044761 664557326 144901097 63824878 72678720 494694271 429790311 428562745 273251584 374466106 273574655 179585843 672107720 849473733 527555035 422910068 259113974 330896906 638244553 249875841 161738254 130252643 661613632 423434689 566235577 741699467 666555487 612712069 813843402 211208613 701062638 553952263 688646719 78794307 822332253 841486950 125806395 543162455 176446914 24630449 250023941 429400639 532940765 574358995 401990677 626357951 813774099 639866281 770631682 334100487 39792759 827066355 203059348 616390825 246607292 722865498 230465971 356297381 691385925 348755568 147707251 384666718 110810137 623206063 178941201 672817061 910835429 789175157 994271725 251101354 641814785 818951951 420209813 288708881 962636906 112608172 1454011 573100758 64227279 452112485 90382649 360391023 269136246 425259068 923221781 135811245 739110493 32389916 357935225 505232846 903664415 263729876 265872566 308643958 344583429 331243038 938369100 345495991 908734716 751958938 996635099 769696511 246996641 91517653 657426223 62649649 484125996 721922362 890709563 599694222 685123211 198632232 668241433 911032008 1773128 292837086 890780175 111483377 816171165 796089732 580481158 444897670 508449129 346715695 600861717 79542894 433725747 667716821 372313713 990845173 135327272 187141975 661189507 31133137 201570083 225332863 69999187 620108062 384282273 841092864 198317076 2689380 987547083 175441520 278952228 194880143 440308076 933062740 603063301 464553714 533937410 622399763 422410849 24568908 770359718 685593854 508310029 228069059 952463650 563278160 457902595 509090274 612714726 983619368 969245540 575074722 341534984 262507153 162975360 835131740 300136265 978395003 397831114 435526872 130096140 957716161 321080026 754107714 538565477 745071906 988275061 368790067 209287689 458751560 191645829 291177120 843172950 935217095 967145759 474160119 874683222 981237778 131830652 396858622 898545591 899170192 678869506 789994224 331786448 422067081 39297595 113990248 402451874 444601133 548207577 247643757 309787089 784296599 736022459 134226791 647818415 716969927 944634078 37277232 622035507 825581988 376448883 472239365 511702009 433993987 211718091 163115145 665689677 346641308 243129699 617541834 724712731 664237840 376248795 137667646 763497210 726573544 10158590 952360643 538364972 61005462 232949445 593734812 513659288 960268402 491968069 788209529 147067338 986372800 373395139 409696620 397890556 652326823 96377773 559539191 770994959 84251447 793840787 84675832 366167173 760561772 440547888 68856261 952725393 715696165 752115564 295089163 916399113 592237103 98675277 759747821 581891949 861423669 829752072 324517356 578014690 442424535 565285625 228880379 691254074 392797841 356125091 733813864 359519212 352648399 459848112 954296822 656817687 347076321 765690868 809739720 285923456 399048450 694165612 78404205 431439769 791148369 170744120 820043479 15833721 992130264 417033638 907188580 581355485 403090059 950092584 965212378 951184175 160505406 105682520 561247593 393198460 570899897 90082813 707125666 110463101 717668767 353737215 310284164 726323601 484541571 319736433 925532023 707910332 905163230 954704017 218922307 332370355 983267605 427855295 502128926 484665035 458493548 484268680 203984042 908048384 166158358 969197472 925109225 664163836 384515375 454983395 186553414 538230033 508887222 43519569 967969179 475690544 183116947 130559254 638149410 978914812 533459611 753489544 127059586 380123581 849419651 305126688 971661511 898966624 595305453 69216641 878586726 582044030 935298404 540144502 934240575 271991894 704930650 403254519 659815826 550761167 854043175 333376791 483461394 316895350 243742730 621698849 885230291 944809861 862380080 630390651 289237327 25375194 697351592 797897402 577924972 251524095 92580461 187907226 373816699 679144993 403653212 238037756 854684205 453476628 690175045 842733297 612000163 122771295 787923155 603299236 946213469 810291233 885256098 60038519 731139662 303368238 251821108 343284969 351064521 14979327 802487538 686938025 310311049 600791468 811606573 354024327 824923831 573186052 584746781 158615934 113060316 386382707 373532386 714285236 710949874 150414862 367932810 976270195 130485843 224215448 809417475 79087148 475860679 926998646 862971431 76253824 853713014 194182331 629450678 264116269 387723517 311771417 489604955 426974240 6143824 150664176 73213606 459579245 497509085 673381962 978552850 323182669 282538605 333207255 421999614 972073252 702468405 710450922 471334327 333739392 934210002 316441991 19017320 572919568 303791948 681095760 35226672 607119541 150539278 136898200 656487183 215971178 284951279 852516951 761230314 540184931 545525289 577037608 407392152 406424300 671617635 319940437 758754769 479573382 325662124 700230350 503651378 669095121 925410422 266399272 255834952 17676184 821419171 678486439 972363655 967425230 687180914 642168874 976112192 846016146 551030164 10568777 947676860 979056932 973601822 598322996 954962208 737385456 802251151 582364112 927964032 487181960 631512009 506494371 474598613 466449323 103525913 588810713 464007165 682038327 397808182 557644363 898820291 422169147 794740542 451697273 2938072 835728872 845675703 956932745 110981337 415352474 595324809 323252813 883655488 380070358 593301774 525497400 850822015 579288646 973179906 957366893 992447199 392028863 512005003 60985265 10114463 675745080 586640948 873997429 164378076 9094103 716977398 847303118 56582819 743797735 151949866 822425724 969251555 968406235 231215768 923089897 106980471 350967631 779488876 753689889 23521052 956092421 127277628 719299549 937513856 505342697 278517253 143050106 692553780 283536118 740614188 904354307 736031407 730052785 653881471 425011490 835693650 263639602 676887859 174137652 551191400 312349983 509574629 24846389 661257762 977879592 857213592 267603661 461523867 422170413 985417407 376651592 207107791 72849967 838350888 885556389 775088042 742064727 567822359 959640443 800829951 697789691 377287725 551480086 390207110 924672148 44538744 655690341 402553312 786742729 747841391 322170108 947668887 994193504 471546092 535697438 193828634 882612305 247797048 520487345 401417925 187556534 487383806 876778818 345723606 807643344 196339029 852353293 223811707 44442893 253501111 999891182 429860033 331784190 531570698 145698668 909855652 795653474 947273120 439457976 89224963 700652825 134033960 139760039 424630697 561269805 564198852 382612667 493620806 330677717 368976119 23717144 229089396 54725737 70406060 572975505 223699895 866650734 560197180 194354586 675164785 970033550 205135460 313721939 469424890 459682206 470009417 339680644 991402632 293374875 539977079 597392031 331505725 622403235 2836451 188644788 896207907 673236741 334301928 572070536 415040555 725686577 506469971 693998467 695039789 564169927 366408011 652446896 172524522 190345095 459132261 681154760 540145678 503758939 352477090 256777260 44748585 156131931 550949733 964187617 703679922 937507260 331693434 363077271 743696910 816718055 22950168 986814372 834484099 119933285 272895197 649897994 154807620 909510377 336691661 522197358 783377771 322460751 454953558 474378531 209267190 139271321 953282893 204097819 690262482 70794738 430920941 512829174 924417999 835145391 385280991 625413374 455720869 513361482 931436588 500658466 479694069 59357799 600600143 494520311 43730506 40630737 575557664 134357438 388121109 999885690 595467239 205326687 602792878 43891072 118067536 524689255 732687961 69337125 313735793 235791628 87431229 500017874 324176582 580472114 989792618 937340702 769109046 514445662 381884125 345232322 727873550 780857023 580788594 750862240 992562179 156193068 710913784 938426566 915613489 268570148 193592092 360573289 487670559 426944465 373045370 232378078 9816248 520527357 599285139 728472749 275639125 713512741 723636173 510224254 659111343 438799715 640798845 316810793 616429294 245966722 621185498 653208229 53147551 958318574 776949254 597014294 589670580 89089989 638198284 767828169 552088209 124878268 209610459 229854511 648516084 150489924 336140877 627144932 632730384 872730470 761276960 621039279 175598710 269762524 460823300 200246388 819696678 271208453 226175877 489061453 699880068 555010535 307419422 506828144 117743453 936980274 974441776 247127365 847850726 336095294 526662663 449590357 396375742 625741064 939216847 651526481 380237034 445314619 192049573 480583703 777632980 912951331 834055302 264670378 166514774 897526200 522218594 427604533 520763051 963255705 409218820 876287500 844625273 967844623 311895850 741699753 415670731 468133126 635881843 82075822 25994006 640402714 178676071 338238442 578461754 19885702 116464760 782824013 924914813 833358132 151473411 955735285 118348427 533861553 279800130 275395361 555048311 289282868 208704615 816256321 451044799 326019745 348514682 675371492 929430091 998283641 255537276 232843466 681304421 46429166 48821579 831494099 824416709 719403736 548405934 338890763 72511878 361470646 991091546 855540900 251040558 16650415 289337575 134792186 682543788 717888915 429300438 313831570 355107922 43110103 213282192 856849943 310340065 232094107 433699687 654817881 247475066 669715366 556239765 791109718 582003887 836014697 436442425 604053809 322805104 623279611 956244573 601965365 45836576 794316827 175473907 693947092 75947391 640078125 858767314 985424813 356946876 96968005 542939070 430629758 236339055 990530841 718273634 585748791 108767634 722343174 965751627 512382950 92228490 518607380 135458546 277742028 96182310 928401143 315632573 912602955 459893405 134531838 629835504 190773226 421214600 827100975 387566016 705148769 613208047 270171438 914826820 750110856 967435836 399937098 272705151 332353636 388260170 492108927 195165016 971833121 925528913 718893413 531770788 379435281 345444089 377742663 463443736 889771438 595789902 888658965 297030489 476372127 139227590 37083237 709392106 327882923 509393726 762191990 799185989 8028359 743922940 469407024 118127292 10103054 4177578 84591397 136256918 365948871 816439907 297991045 895924470 607575127 338944927 171940150 628032756 122233428 862075975 161580477 696092293 714771066 724827045 650537543 703424649 814960044 380118382 578185903 495262925 580345845 228513475 632194161 540957953 744179081 205196583 814158775 978626493 78658497 72618888 243347022 763800962 606878752 988487483 362021552 692008381 246470998 824241914 945695481 141448634 464572466 310448113 346105842 502037942 695676080 630683305 937016842 680446416 200282868 545147413 375658587 405048597 168438347 977965207 220843423 836352626 613897762 150402802 238360895 929484227 523273499 777405779 946971213 126008519 421207661 440879184 82223741 554516519 822840992 443910631 133013806 814724215 47702315 107052666 467641964 376359726 257840848 753159642 171377634 324451248 622348537 958425146 840630760 293469762 687481896 187427129 305949308 149016347 890645784 187918043 251528776 70418254 776171425 373444749 28503965 409993185 720778695 542440485 983247212 54548152 950097588 154226398 809672281 168898986 684641725 425425506 461107112 589414255 860780892 486961082 69822539 823337637 309165108 813409887 132981720 474874072 940242451 760458025 84331407 517769081 226402024 602736483 834080087 860733152 301586386 542255541 755713215 816073552 880833555 983680824 79478781 582147568 680223253 347639911 692784371 434035668 611128938 751005224 557729318 130530037 935879379 249116874 822793670 853788464 603024172 392263424 56527530 97331026 928110726 975470824 590730578 291742735 322335762 93591816 472473830 585165560 852537901 879113548 660205619 975483799 664801110 468860424 817812146 116907598 451267901 478984445 72824192 286752116 378071986 891246671 344905318 908124225 390814643 61020040 206112980 383439826 460208225 474113697 413362400 33471541 860358150 235725046 365879370 416290139 299106072 544455757 347105145 564545048 778819890 782107089 446103162 376234804 68837911 585264408 96970761 698199636 167401138 646143266 492241024 768860428 72373269 998672211 693154026 99562451 474964093 198869620 593593845 816837899 688250445 883135425 979498744 583307774 258908945 613574610 554838770 848436188 536240760 313317806 886850957 872923839 645639010 320106436 346711060 100511912 432209105 106292454 314831490 645006465 517311217 897456983 647357555 183679768 700785682 533670837 77185072 945110060 572154802 722370576 458045864 528247642 886720884 56480990 17989490 27309869 716311587 288923644 152952783 623753749 909881011 692147120 465558948 227663210 958581564 837397926 948841345 170970227 729394183 259635189 675183260 654363475 733682809 583432727 678007257 326212125 919331371 735891444 720998072 76703692 340565459 727161049 353760367 37735745 510642262 133206651 994245841 967362114 269871042 73273334 116235612 338092164 584845895 575611600 787887166 866231455 135077699 156403191 67112769 597894419 9810486 911984833 964803290 964839242 301460428 122418664 998017328 579525272 788059356 334870164 119908611 820496690 322595165 672554832 465716934 573218109 754036595 133226260 13844368 411647423 881222251 440237628 167134750 609455528 231288758 173211534 445975002 37387993 267644915 650505527 446532048 55993611 180437471 724507082 840902077 50936555 696237931 32625991 365812987 415175945 950580905 555893264 385717648 136653535 903658193 484225527 995221808 737948623 53532491 394812718 451366451 224057376 28608159 866708306 345109651 266270215 947541888 545443947 275156728 488116888 315272652 706204133 638919092 601948888 203293573 879284627 969175998 660043440 693619669 77742773 274708919 767103472 708514319 467873517 89311968 173179731 264953521 313102669 237558830 600123766 379851868 602033991 801283383 709520361 986383068 894384057 560223031 318744600 595151908 465679334 249282586 663124575 758211920 346711169 224007532 688971005 19653027 546325657 350416228 315801884 539650950 79922864 53639653 775186894 60315025 179358121 714287474 23721740 860778875 704333265 697380414 362496694 204822313 336733661 208267037 714836377 890620836 542350827 926461072 421634657 543980578 559198337 907847612 22180011 297954046 213512587 47733621 496258038 868377789 546742623 207276844 531915439 445186309 335647162 407194118 27471139 267126189 936895168 160012232 11149452 931108782 152207874 486045664 293200909 319533615 651599728 24613990 101300654 134335351 706373741 335525658 990208865 525759484 723989689 511635043 151008767 901884761 670558596 192052305 894464072 747616593 892063330 322934168 821099497 340229325 56923731 495257754 503794284 860595426 521111737 866524767 619200082 239230925 104316002 998594453 821380090 531990000 153952900 633129874 986243754 275195092 233714620 145993048 6801814 408429617 496970513 168233612 417283288 754547421 106398956 183100031 482583153 274869726 845424676 906766628 444596551 339062110 47471354 476059680 309419566 18580404 365281294 417013177 450348257 734067287 726467441 339437021 230903036 207756011 70221206 864735520 388611855 682028093 121466459 51454408 705625476 481737022 538936324 708395702 442493368 211918858 745799747 281585279 444964078 99599078 933326631 723018837 23111500 11329853 575960624 762671386 385453799 353932446 299089730 931186262 970668213 788254154 319925679 89706294 975026582 963708833 575874855 869553042 117680982 158113326 109890248 978782442 386235303 440680359 397909016 123091301 438249249 31957860 944966150 610498256 978058820 190195947 756428774 807625638 385742970 67090660 149838964 107786759 636594452 849123364 11878102 979289268 199231054 350981801 714540442 805250083 919993926 801631378 433885109 314591590 167352838 103192365 242613125 525118271 884446337 290279915 195044299 557357844 965587855 68558697 931743931 695898614 826862830 350257768 929001700 635152796 99578189 432080598 658819143 830094693 528843578 846873799 802433864 655787863 449954351 353893232 665780149 968990496 911869325 422025276 73374659 747126556 768787869 363057074 900156686 936591175 452076689 530869896 588937117 459031110 873260931 273141399 259623130 694041198 73527152 32225761 961138849 455681715 75284662 990003090 32099880 537195445 657446358 852225280 301668632 813071035 570882775 277001893 388569726 662760114 847179754 994952995 575764430 600465717 782575770 62836292 868729318 585356673 626765912 921274880 918908941 611758972 778643325 18591087 891727596 193373369 620459081 935889362 108716955 814575980 878349798 775285658 146870936 585182072 825198440 903995223 157906630 3467617 169292996 132474563 803692660 831198037 900212191 417498562 986632793 176501806 490158975 906700130 644001932 788648044 994226772 182621395 642643353 844428085 181990396 430460529 29620074 59946838 392012281 311655105 866630741 15895625 981584047 750633325 226986006 379440941 480491633 98451014 663158997 375186377 188737145 959133770 461493274 318462348 974481897 551027356 981287904 304678028 477408966 329946505 631567747 25492107 626909960 26974592 707544263 963874286 301059461 601568286 891780311 851325126 736247037 487635752 525292365 423130569 934207771 406838153 35003682 154807636 336466798 459434064 320920510 643571316 642741875 380224959 108853230 84811732 471762568 791070770 464949992 91331788 97324793 640811835 129256263 265242204 927596274 775558793 727161872 923463722 934082706 451645687 51004338 640907142 426550232 125604746 615664387 583964776 896793518 399627374 917147198 135662192 626177764 751244279 144606219 445308898 204789557 206372762 343533682 15247022 809831999 264534786 299813870 880271727 792026255 280124150 277195865 895970913 765562516 278940267 65115130 716639339 222086055 142005113 449991293 470111260 563839242 854764649 698968057 400229549 638020840 111196320 684696041 926220541 214037329 530758581 631513650 654358674 680807741 271746147 859690020 492818588 493113740 857851789 663871858 912630517 493962253 565098813 300450106 931260694 331336810 247812007 281765122 677169452 335892802 758330406 843296694 706281218 477878548 360770110 965359276 401523474 106447688 795650715 302219936 512736124 921509171 989554190 884402873 870840581 449407243 827019413 22648197 389262365 182080753 316547665 909643765 644167643 480599024 98734733 539533419 839180543 184260856 419323071 984041384 319354608 285756900 791622526 620999645 533146813 540879987 948081040 948321694 636767772 535864145 272207075 577938150 941227118 166110988 713453442 173267998 918960059 162442527 738288307 305451794 37209521 42295021 610269137 472883191 149937828 105240763 141821288 654770792 898819739 675204284 230764081 266090092 409317942 150099469 772788224 469689202 767884232 664779177 597972189 622899022 986990150 781729662 689808371 359660348 749944403 299156826 338752658 948463330 417235762 247627258 508242233 261653327 481144788 843049981 805167241 498985974 88767954 330256106 163927118 883109812 640287337 186046519 813827197 409357265 477374334 703147579 313394220 267546870 63253671 799399223 842422948 237579837 257837589 234607187 859348044 597821984 318373802 435792544 880613308 201517446 845271021 819089948 53851819 624098491 640648461 567619748 699172092 634204789 906968033 428659970 46700990 333745870 290736872 490013673 260351523 389514322 47214410 903993070 479933573 434683626 3057624 709012376 272243556 645738731 701468165 845063756 619383411 750533139 99633908 108174687 437492609 518310535 443593834 167939077 430180231 905928660 559229398 2420066 262335405 391735281 456007507 958418816 641773114 16863288 963081370 942071377 595494820 809750131 358268953 116291243 634509701 677592011 214787546 6211411 379951520 134508502 207592600 731593198 257850594 936104850 767633584 489621008 240249438 160603239 591077672 965392435 586982478 880191773 450075317 694945463 901203733 811263212 953092263 432131812 54509119 878050928 413554688 912451566 382129022 677056688 76373610 125764076 760013745 651019803 965525808 194818787 748210646 648654721 948883021 409486773 549052958 949120803 180996959 847719226 507205335 798639525 205225130 110955304 31026558 12138773 583022115 16260386 192622009 26008038 270115932 92153265 495372367 466066936 319917465 101800259 107089974 554554254 64335036 139978549 879580040 871128152 585241688 189138633 383225993 358238314 319842724 93244453 94035619 101427008 901122431 175530331 564665707 743305920 877342062 6965093 54248346 604971577 650878628 626643234 716953111 804778334 375717622 660726881 500413160 627716941 60106722 576689359 73008710 348940171 772908435 955592964 52151176 28790020 870773717 317702020 52926004 562802961 91696414 314422712 986672370 29095532 263674259 998410481 408519833 127076412 625647095 426970471 67347744 335806221 787176121 757997885 890410159 244657620 91538160 384468345 882047118 17725168 867812192 507767568 335331890 631520036 473881451 707738075 633152564 130819233 830587426 785279385 899642712 358453751 12609853 862182131 456539021 125474087 448299544 352014973 726233312 738156695 479675073 608281519 894220947 961229327 939405534 759950826 418336770 523942346 906066638 215653238 653070782 799637859 83568783 731054729 854475383 787520223 497057989 919771703 207680010 723777962 878762435 452454786 438756474 22637980 821874811 44409429 43594481 474679280 390451603 79638656 110760133 360209999 221336141 893165247 398130284 330491328 461638553 402463662 729524368 988942782 409434897 904901340 324240633 499482402 59935729 567433143 822709143 896040245 165981218 770291865 263365002 917714082 917513012 770968515 671819796 651985022 350572381 685504605 31058848 65613129 669112445 883409786 909578434 747206629 562266394 440569108 788186930 613832865 355210085 42878218 638600408 323011632 179566643 553366056 619180733 275517106 40800260 405030173 76633107 407809706 234987522 532755842 812912951 95349257 765271288 790474968 175580330 595288865 555958880 109105036 310332443 456096174 79966042 797599722 868868953 933023705 403406250 864303921 40312674 354841902 449148611 847188604 759257434 151864224 624912057 735544794 142863243 239195278 128934220 198135096 692534887 377966527 643822309 564095345 286001547 280491614 826129809 506963271 953895099 282380288 850200073 293766240 952804575 537654692 304975019 371484242 884022028 715776173 91916927 699508114 76305791 327878635 505291314 756128901 727337112 427740305 480732448 431407730 615035364 839394107 914013252 199324811 310262038 292669682 384960328 542490855 931898635 424220706 837611899 327782282 36234948 747487647 266424529 638427485 797261933 948369318 491579117 402975537 33680473 287103711 352033813 918201021 77236226 611520852 54926391 778747812 805091599 861767548 833829354 239586417 720694344 870954807 830037873 317675411 219098272 581162693 347712433 888915045 14746678 633482197 312930614 689421349 571845448 667217020 919125309 377527551 189516103 867788344 864145058 390843652 607757248 28038385 830306029 485238061 968910194 295358446 156220236 347473499 963562304 277109994 685993880 228162135 801781559 427757823 34637134 632742098 660547462 62447028 976437915 1007206 170991499 169837044 816316230 13941140 936845512 204487447 56621515 924354502 119695338 620808664 265775688 299361870 195705282 127128414 788453766 125148515 45914701 3555382 560472052 351365926 954146222 592989525 280347302 569970339 46307633 274013975 924383328 910664392 423691332 869536323 545804935 326928752 197613963 424997125 605345319 355993181 98635715 666571761 293389053 317174839 334548185 529828617 314505315 279000974 71260895 557413036 876678756 447824351 588749586 553442477 278508719 922335369 246369493 678277951 805495705 690749909 164983474 255606781 27033379 600514037 39519582 833752302 806952436 159933441 849750197 250961280 207879770 740077307 992357046 668718986 642321231 384839372 517776 102538308 159354736 391910727 899886998 52159321 378179589 205876515 287801921 945497043 928046589 866409731 706225975 363869988 590203119 366965357 235670080 411061297 573195800 518218967 176217426 328525882 61793125 639920279 658162057 135621103 703419490 496024558 965752356 241424480 656681284 10030600 399954837 162470417 275550191 483244532 648061031 683822051 942410982 228404140 317857883 334359589 229558364 650910480 382433107 336326540 77793572 393362668 811163225 435338804 810687938 402719729 171258531 536201380 642243928 149988789 476460169 501883593 799597755 86773179 107423375 426093302 584992604 625368170 942767200 263974123 618593376 124786712 876752850 260121805 186324877 579822077 843417567 919397414 972808271 137331511 777717672 803447025 663211199 667853779 425880444 456942727 358057117 773737406 448668107 459656364 313253966 347230678 839419952 964617360 373856231 55761627 698604659 650783179 67661848 138006132 890984315 937245013 952175428 728523828 680838746 311832212 251660403 343886995 985640270 502643287 704638547 746258932 914356922 512667605 623120443 23878558 230315563 734922150 54645546 553320135 711578447 860380883 611329737 889784705 199555335 370340296 510776420 542280659 442004560 475610973 746236405 685173412 622578524 551641034 810327322 939501253 585451642 339114938 186264605 992520177 434338598 612567863 545761515 680768455 165272838 230739124 606165528 732267218 569140961 345599509 727189481 424054659 878011308 940485017 517810499 685774130 16074628 41228015 442656948 848927009 626143403 220667438 999191412 258046842 566024841 318465745 307701861 507147852 403167415 58741951 807781128 798044820 916254698 221686597 764066962 572825905 468429068 991083543 574233819 54317034 996488741 886486608 198665052 674783863 834129254 148223356 38752832 332038504 721206828 176665221 376849750 549902662 992330748 587906749 829585175 656474486 14005632 568249573 48384417 552490316 349388173 82471458 977404344 34190079 716676123 857394432 826397648 824176305 248303437 422841460 68544253 13014891 704309872 788210909 306171905 735674911 499910905 702108927 815828545 744785062 318638976 828781318 217304268 244362944 518176970 831681419 193793372 286692634 774434498 680343177 767468878 196343873 852214141 562285154 653713066 368127406 338744370 313547498 281618719 794477254 403101256 488747088 983091970 916875219 114652232 903952439 18232920 781690110 392257254 887843488 488063427 594420587 370930687 702016760 431954837 547224083 485527954 461084952 14806723 12382434 559032528 270707768 602619374 805438380 346365191 120048643 275765852 219368230 954542774 468724099 8212735 701996533 102710909 572816429 31694189 502064030 561078827 92504799 293009634 722022294 61568431 868979934 682674504 187487284 406031911 577000664 923120687 163085755 584551127 518053346 325070797 211821907 774170151 733418616 331606019 454564879 242720940 70632834 196874068 523589093 742943267 317493578 31071731 132319928 985912428 91692678 90281143 153738066 960511638 860164439 576428575 963233890 352351187 594875453 475337553 444114823 87579258 224596265 643608860 994530363 891291922 241431148 268620536 622917355 865141576 517059015 476047878 30221799 383592172 773690207 797449741 121655400 762810109 681110721 678713976 866746259 542242456 768228833 684142948 470284653 63496204 890451997 169878156 394792422 653901263 204301113 402112603 187008989 618401144 527279716 691285210 927722510 481241290 894956340 93289672 218360871 649626804 405901477 578112638 432439220 939958343 537089050 60371208 73329971 750001087 816668772 158716691 582914819 135358845 844818103 650794996 814273132 576162062 767342001 807900846 215474337 407057446 709224021 710603495 19487674 263639969 500752145 803434988 621021115 376766079 10097850 781943736 807527819 133521642 596231568 85226475 709438458 708845372 946714165 722107590 35133636 360585453 268499129 965329980 413840267 944714140 727878028 865220838 745027283 421650458 695129235 706202882 658578195 426299224 879897612 640356214 995296160 281814387 930825130 147947730 319817663 531578027 286343038 245646925 427141012 551826029 459009800 486068423 878629686 201595468 81437740 878210503 595142045 247130370 797011513 254839418 747068839 342633335 779065057 475834556 742533409 421883312 22475589 101069833 736988088 427589092 871404260 133172871 355937803 588646767 391132850 871904777 564695190 168028627 691555330 127851779 359258820 906076089 835228563 294696343 722621417 357335543 182457476 805713544 970533434 82885766 150527848 325482571 933456346 892339595 202005300 797542386 817756628 906678866 60805187 703541825 511006998 338419789 654378332 637167260 870877052 818905623 509116074 931928082 198186183 560620661 564106436 842685021 652719516 753947982 777485736 257956569 358933650 473353403 67450298 127545231 792502047 249093619 185154758 99490863 586768039 336054875 20290821 416924940 76880750 168337020 398355985 302093868 599324074 477968655 123916784 693561906 844230260 800088041 868017169 270978926 120245965 984325905 692145732 509917398 103740058 886507951 207205327 608969997 6768562 220177688 231064142 24792918 993950923 616926154 393483477 693384354 64385670 895524452 657811669 138638474 532582000 321152179 559793966 546423370 39795190 224757931 260054821 301439435 826757490 814332260 609739620 781261468 666799400 407718438 745344773 997149429 602629183 540819291 285309569 304667829 55392710 149838227 299122881 481568864 933942717 84164749 456503313 562250795 874473983 685245993 6243106 378032873 707432791 762911093 599549976 708024091 522012279 898560928 907064183 816076262 140185337 989872396 376006951 468083741 326050395 360839225 946226563 381451060 348482313 894310609 399051844 438058574 972500308 391258790 338226067 527400238 845201013 771103417 134165242 209858373 16869772 417034278 201197168 667361451 645245605 695755583 200738131 476911389 443016111 666058354 213214055 52484356 780231043 995879262 444804568 604680817 754277605 538838469 480821823 11748376 524619643 256294544 5131668 906917467 292142295 178718420 210537794 282025021 850107251 725046478 814282770 809277553 590318513 382096608 365235514 368973391 793762008 129413269 870477658 359445202 833466908 766532510 508598132 333488039 861359509 173592794 898722297 157285398 514119493 270937930 468246457 890897437 860968978 26628379 392356597 17085785 722272464 867818654 913512529 858244622 755889976 582629712 552838617 557155377 486189292 14892243 621129732 543387220 128701044 49234421 497078448 16788155 624239681 653745061 209187874 624279113 549046190 79645185 210625543 406368655 709543418 942078794 943567473 938141125 423982928 353650417 716676835 678717384 214904256 383491713 213969212 404594466 792223812 780786877 215832783 623062275 311147966 85203073 275065677 79461182 983108596 832500702 395619799 163172181 338498716 602457861 280694255 669097327 815183437 247179089 525589634 544667483 205611398 371505735 996973800 972280719 635514292 603209358 876551646 312076845 600326694 265206527 478335622 250443259 76806423 676450706 507538802 662547302 373445798 153539179 90226069 52985225 124091356 283907283 835009867 712437024 821697966 622239808 822933849 847387542 889750003 331155789 764202990 297187321 612024427 297679549 145619359 552904189 393232833 359501435 854382696 971483395 129704068 666634904 617371825 329490195 760897584 884048979 672160324 147311581 917129252 272690957 259999577 260004279 380321452 391408979 284521868 586805921 144538103 121227222 937730784 650017600 387118878 907750002 363655878 889243622 352257828 343783212 824732434 822852490 921681904 89031982 322520322 92328138 738390359 909451722 974541368 320964335 86956046 500646783 354268614 9043687 584671418 850187499 891558685 191220296 408121057 876321756 841437468 284652626 568301044 62177350 747449097 213973743 486592081 940232517 101758351 147945387 548576820 103732246 177323975 890293437 590196425 316183852 55224874 995844615 139299616 443837209 392477089 256003599 153351988 240710548 956671092 419709699 432148709 454402691 69447007 567440827 792297212 493027056 313664122 310225078 152220714 435196433 675972687 340311326 569964555 437659710 370724038 178550207 641942555 267348988 547422265 591622160 323768008 426109687 686190688 743692596 895188066 920796417 901282148 859811566 551662625 9825556 554188498 192254640 635006247 24701524 427760801 145275025 149989246 122580752 751932456 576606286 817346326 664190391 778774323 188518480 30270153 112675813 837269226 614803622 163435864 127601500 156189416 963025928 723461741 206951179 808083492 585489109 412608408 924590594 243262984 565089299 381781845 453425279 700752735 494615153 850035200 946906338 55842654 808140104 509901543 903711417 91334821 459749270 872572728 718616503 610817590 973892356 790966543 258348213 197877375 869278433 357175917 224297143 879579222 834678560 566772280 167350763 459816952 751014759 564962630 844986528 324121610 686373369 379734349 457318997 742086299 299509957 660815854 35372202 758926365 56520803 949733301 931426924 110425710 541862674 681376016 641676433 268302806 612813756 874209116 564750639 570425345 459916525 613093847 300550797 142599426 959404508 985280170 116947475 829849690 489804652 513499627 827833686 914545130 763079969 331687565 496350996 983776516 427177514 942707572 725944876 823125336 667822177 304136299 433201835 176427016 891742017 584971553 710269636 605144215 178764020 359340079 570670037 936136691 622231885 755101208 589752666 165161838 558671547 276544581 841501702 978795978 32060770 383707652 189046440 703383082 472633354 522340243 548006207 684267804 715881250 125410065 70086632 749407636 64886719 508683655 575150581 994333169 571046563 120707558 53564628 337093364 338491696 723091464 495252771 374201552 955539580 117137839 769023909 669562905 171969597 734071682 496609349 314651848 537864653 415924245 354018070 328849225 944271160 519835872 327477587 912286562 754885164 519676739 178231392 14684493 208168704 883586440 78406344 538898086 23971765 325162466 934694718 706558322 878557424 206014313 641509788 773090078 724509441 82624796 557721065 294152576 302219487 396829929 432569677 568464854 599822635 859874461 282766109 511264708 523317033 22166259 452556242 337988695 365608395 788983948 460944401 938340100 72705190 994407155 995168166 635921579 903213306 461132693 657652354 396582029 890216112 703452366 198724034 504476506 107380055 936341216 69793961 861510697 304315685 258270452 585974176 43614578 120863225 35789851 628379454 355394591 983795291 372724813 990235453 324480634 423204474 246118252 765878654 781970234 109136684 334678592 765271311 554698877 360223475 863350143 168672032 146572487 326975221 520948413 794811408 653071876 493612545 877207420 363201123 641485452 110988173 217687079 196120511 535130141 837083323 720352527 132037626 51150041 282427729 188564333 199484945 405701086 46916796 354971747 956697381 985926257 474531606 70012918 603257217 48461470 150460447 362971166 343951259 585828001 38846523 687333806 269489419 845429150 666714492 79269740 121879956 880579377 672115865 28914433 456923687 600058964 535082990 946604539 323190737 418171502 271691911 393582292 739204815 933107789 335530257 108469743 39754628 710132514 81216226 768034963 833341823 396055951 603070202 923298804 961934958 178879639 770095877 510064680 375493934 154950822 928937034 563778356 774895813 274095764 79490757 22729728 751849305 12491932 457319956 309438810 433098048 894853989 643963008 388511488 159715321 372654332 103359480 388773520 155208480 801270228 464848144 163579543 476555654 34444750 378447883 477349760 398089244 959600428 813555663 645177514 812957436 360960412 944561386 400877395 719257709 165912373 136911509 302584743 266660822 908289906 395927471 7755187 723219149 623775802 385137084 772568692 721733644 199005912 388516849 845651658 101716598 320657157 228248610 988040833 957500952 828455898 186635215 809723204 130768165 276477664 678762268 775254960 541648631 898011905 535870941 492191817 248035089 426901 284877447 699329138 894740510 39151446 360165691 677508482 683175666 890840429 466601149 613748655 677868426 798896229 688457085 56612634 648123910 63089461 487360148 934639823 859310519 134437430 473466563 756031422 713498121 796082227 836646765 300329407 922029977 130911573 804835747 571560083 84710190 381625394 910359837 356806886 469897393 394569416 810057528 864130886 895737395 239944062 71672829 162672945 11143411 732196382 295288605 775290371 387770451 995230433 72832234 739058183 701820125 979628897 210381674 995277679 251605829 909690787 374734655 712462674 938893671 504097559 659724474 907167925 289319239 347283855 959959250 144846718 591235085 738547275 532948008 227368835 245947150 703009519 396024320 9292150 916562119 882800777 916395340 122590207 412042712 504204941 919626661 782842018 256335886 524718041 661024834 868460244 515208030 955788211 275418901 878709484 865189088 188450502 197111204 954593071 183556569 725397547 653717036 597684417 304301749 571093082 668919434 232738484 696615940 123761725 73304905 699093252 630009732 848747040 307109008 643154835 332500249 96310455 707020095 605189415 662456778 476421153 31239632 81459315 343536849 186498272 400771948 857663246 902636674 831770852 387268323 945347196 908340582 728957059 795773865 15416614 518905125 925258104 34805473 34900829 144621972 888205291 227736657 910002777 589243308 12648807 639159143 337729341 284039314 413289951 657036860 176741904 925723795 556064948 282982543 281394372 812156446 899707820 356853446 478005814 875681488 511100914 698419952 833381666 175961198 314502938 245934537 100811570 19874786 136711207 821768616 831354364 410651711 628339318 8190876 817309684 43760575 90596571 666927697 919697277 180228297 744261255 245866781 468611553 201373925 624731160 667713281 923429969 472482244 657669271 113645986 747113189 72177224 606719087 530850386 212354462 770406257 534655091 575001864 593458022 163275112 293976800 948553059 75422481 43046531 383788641 71050154 470638677 683982397 334257916 245642187 887496917 12944953 270060844 13461086 69960470 193460542 831263949 708127141 434942352 522010184 526691360 917564546 32477593 8755051 65111257 359676809 191607921 269382893 867428614 703272940 636328512 806714424 174940714 839515281 757643549 277417699 63271976 75120891 650278908 372863909 869783119 194244184 760069059 59510114 536009296 222497925 985098805 127958054 665999181 332643067 881367814 963382820 256577737 830051811 535703251 371811000 680017840 221410063 683449880 252070245 537749851 705616115 347550787 417748692 958297731 185817009 801640095 90890205 267583056 752304653 753638762 395137655 810414414 116968569 510249670 452572358 444970610 217861643 511386553 794269206 812298269 606738819 722429237 222960602 421788942 311362631 315147540 119750320 436745593 265554792 959444248 203135318 398430188 693101213 439142888 693541306 290837611 486347074 614869016 431965169 371119445 54822755 288823584 946678067 251603581 765768365 480530528 596349669 332102677 678555508 826336291 414663058 376246715 725846462 356242072 492769772 597868405 437697583 832219357 316408274 634433709 791053589 599042031 160677186 811490620 563849574 928602551 348692333 347467870 507302854 53337096 885786529 614223802 486209914 395326874 847149659 768698458 29712752 455475473 236070462 926903221 794299202 863389685 347132184 580294310 501428269 946956213 346948312 744851062 677794327 892679851 683411103 508763600 168788626 153438491 290630570 328178124 887676884 916423211 474575974 379980514 953892287 2477295 430673257 555614204 655591637 266192733 856414828 119486820 9976136 297308505 545490259 246853075 248968688 993649067 136825128 14041954 368935245 648287493 863773472 363488408 918141570 831077121 693031828 144229732 876787810 125217565 771818763 600416281 156499556 148827589 57809709 925930612 559013799 413279562 46146509 733571740 141372912 187226341 818335720 200150046 697699506 210249654 807355555 151522031 246563331 797987273 806712899 33533548 194457502 701406988 273121088 728026712 499005424 214938204 809901879 468638180 13899014 112802423 612603879 800499365 777431449 575363334 769858109 167258007 785084419 683096989 670419276 790533148 795118417 330057909 578279759 132884230 669040175 364939947 86955179 454357899 294575607 419166925 989474536 117484100 515891620 106814538 227348925 183137336 271544032 838171455 64460290 42747861 313907964 539702695 958055613 475303409 864923116 199959663 414973974 389563077 643359571 988250214 865663077 530518779 652555635 811554120 184161057 246842015 415345215 21184695 385914350 139029541 600859724 695813945 77458328 374138219 696391645 24726848 410479378 665018037 200905684 173974055 925538424 707081138 759515844 528717613 631216142 151874681 93153252 941021820 440516925 122582658 485252115 639845415 786660761 577307576 871691478 397391140 995865564 477290340 215057761 293971033 645358316 58137917 955530119 792934795 416944850 835120734 777446599 896180331 566836164 60700752 837308747 19659156 671964443 170607616 837816545 21047688 134757465 793625792 397789694 811212720 372844077 366256975 662871239 474505564 885237095 180580562 281951742 790424263 197829123 229060569 92988949 987888145 878618148 272188754 568908832 366016066 165534488 416662435 541953251 121817164 291334223 7550861 386444738 229735946 917460070 756970810 732158413 81651517 641475614 887404871 679525053 766384269 399931238 152434090 497198060 146923659 831597134 913259724 71013223 224919728 425207317 482245242 428002010 129935967 895996440 67990760 383690398 941144544 668404967 860624820 645691570 554776932 619699509 692766436 320376252 149854214 459475164 903680996 248896525 47596230 53187550 17183370 604366491 297549711 477651306 212015634 172720644 136754733 736388818 839515172 105872274 553966942 196887695 335961035 107216436 714454469 964142918 885437564 12305280 600989413 773966017 357075733 452326581 429879861 285176564 134358237 179467195 969945097 626340604 39122045 628427809 471550630 504957466 791457036 88138269 917951287 379700410 865386251 983120273 895325895 281149295 139801434 27617027 345041237 184933876 347254347 224070305 59075774 695626286 159049359 267230531 533628368 599981350 823964228 803907432 153879353 12274704 338262002 101940282 239506066 815453511 1291138 783479940 273148254 952438096 858012495 887663553 716755973 354646996 899554577 375649550 196316377 884015271 181223153 464042034 108121361 644585156 721151096 464845983 366771665 4783440 702134687 612972648 878198051 362955412 969887682 857994577 767340277 590593796 239781030 56960957 378635299 109790269 552941945 559375804 191961963 714373631 722874318 672188937 875361914 648300856 315559 458028286 791949023 246259963 180847973 846022567 917034772 132929921 551920852 155307694 531035003 497734957 989410863 892197744 813678427 288860559 336657935 393866472 824382439 531321429 43580281 233489600 155040056 776927836 33533149 550206535 907853646 822832298 601152780 557326704 200005908 919402854 27406408 242891744 631115612 230567654 356525366 686406621 862633437 111861924 622374881 437231954 369202232 960042052 322132668 19073754 205360377 795349650 137897384 192266933 722891406 129008255 231406314 423108552 183020629 94664743 382965807 301856418 773234057 384602063 546640266 916157053 949606486 689691360 186346619 373719604 767740112 506099439 390129383 348187477 722340845 715842740 813836312 934218504 650918542 924465943 29372360 316423462 364017790 954141216 613141778 814054707 836433774 87939077 563431291 439000400 223622134 282083357 312051182 98937169 124444827 840157679 587082183 883044267 767273665 52165666 896541116 808588413 129674682 447856017 309017334 763587215 880632771 683583023 498385408 401550929 775551738 409909285 211919826 326558422 850268778 779911353 707655369 235135205 182230789 176855394 867827113 561152476 901764256 801513660 577532574 984043731 975741696 456723848 809471553 102361468 629894351 751138226 139976842 609365302 345722525 581673293 739277282 351972364 743399904 35426708 756022806 237126571 283025405 859189738 467219804 961650280 845657917 843309277 105959246 857431622 845647313 271417116 628144117 210519533 585164496 512879239 54024381 147560871 147794751 926779677 404941688 336860783 717264645 977397405 169657705 742952164 273174515 341992610 6219822 990221901 484584643 488287587 268245725 414853017 993750550 398275308 860455653 492308573 447535991 921712907 549782821 654185436 826796627 431040944 827112161 507820028 753779975 595721723 817114312 626344525 981872595 941574955 467512303 802432772 673211873 540783532 341556434 258569218 518433344 358962709 817891931 987882447 602136300 239712796 325215952 435769494 476044230 631578025 149930219 299049780 28091796 992183747 745062598 851315236 373763853 740404641 471641834 727778448 567194053 599880091 424410434 603150151 430953278 357593653 597016100 867742140 204479458 991489818 109598031 903992084 81154565 553972768 815685346 889717523 736063197 233963585 329471602 498552106 556962700 305229470 428537327 438759279 678975003 598686598 626554041 580424097 21130364 468513128 415537299 45590566 305473416 872209378 481898668 605757714 572063744 202111160 987055256 690598680 271320973 337404115 367093078 419439769 7425473 420729159 628751946 420736666 889637652 846662737 621100611 862825935 570686952 879090768 609464947 279555979 803536776 119542483 936105337 232320716 593584930 238040460 757967963 224374590 285129938 254434134 391407492 75760174 975788695 99980087 49016267 264393620 747875165 617672023 145247598 952854286 252051954 85524488 223654673 866628837 572273168 429273288 44717249 68759300 369799517 500677437 577148149 414942217 448748123 132523051 899459975 139265581 942836606 693877386 894252223 57363035 20692515 138965623 910052939 469159712 402379142 87267886 330433084 366894517 610634707 415607074 582807572 597809913 251284250 231588580 758712757 791607920 770332244 6683693 982856302 311539022 210919013 289733602 472014837 498738536 438286101 950776333 229658980 138487358 270913043 513692387 252979267 428917241 759842296 510543295 606016895 171956835 739220298 939513890 137763949 106237942 739526511 746823355 322957257 615098579 487742904 239810651 433209016 807823296 216533087 868113659 451393994 220773162 907569540 608630467 204189682 410518061 854195252 521503483 747491215 155012996 768544605 277436695 589039461 836285080 916119255 768843186 276399522 954459769 265786470 24530833 654824667 69794524 647226034 258017437 844827403 522297122 351467596 350199018 414037659 263079248 703658161 577123253 177243989 642906394 17426748 77580381 725302129 198995155 269389883 659385714 525600907 103834235 79167965 456817061 109723302 729013435 614333243 560124113 28196147 865785313 612197209 881059065 397746694 849960675 30727709 76824392 710650461 945338466 674717016 96064276 612608987 929792421 794152391 892131031 579299215 303131034 273585160 497347379 794362093 728940506 762010535 445704692 616504530 973181349 874045459 793394956 917494919 462746848 821659044 82204057 610558642 196762394 662002982 162833628 800715377 471421580 878823981 458941760 927394876 266112788 673470810 222345050 821492473 491753787 661388836 754447588 748486388 516387119 760641133 562849730 297769703 723985863 153951483 892035840 346441449 848432002 739271809 720100303 926983043 335253897 384453270 254756492 617514658 345194152 688238270 974104504 922212507 389385817 953147747 608746755 11038507 888004027 872093907 432215098 263250550 816995476 691700297 202768476 628777994 639278165 348085479 815109262 436419551 221619477 87594677 79046423 875572046 103838865 890711461 758644333 516862496 954191154 427822223 942946344 3110782 39083782 649347125 286146576 479983874 597161161 538925632 816938767 650701735 420085970 783628866 624208949 194386640 630447153 714622132 907727809 865579343 383056270 905550326 776969746 385247830 79395909 645163861 500501689 120926850 55536979 708179454 511654244 877998810 421985375 644610572 79524593 710147531 512545977 629262721 603279459 287921704 81769048 614483779 439937509 324578867 13186781 377080359 858749387 467116683 208918670 334676452 977049996 758669634 921749848 835617822 432603346 550864588 709216727 122959708 701619301 816161028 335265863 333774351 388811063 303466036 111537548 153236368 338580837 887074308 136972861 420521762 357401904 362447502 312347021 429044461 238482950 19536204 95743067 975853315 445529976 281285669 792546862 832889949 921257029 279295076 189198391 710295516 15541069 800834497 589565515 81867593 874359962 234433367 821774829 415167063 89502819 787975853 392837950 687263642 825596929 796896942 728612885 607530394 664389878 186437811 67551970 586991551 266655218 200756596 458579915 685873494 690122179 725938203 900726161 906518170 627526246 804076853 224288935 133437361 886194176 299193267 624987170 483456412 133918173 909510646 505950916 162200914 299723626 979245251 198674931 183877292 344146760 833115204 440059071 281986411 739719224 707153173 883024092 43532340 420469801 810622763 379742125 692927902 962044201 603537649 763756342 221988129 327522933 391539250 959396649 186186778 811290480 600161061 296459228 797725910 545166503 576792420 991070544 692165513 203965645 663833847 311945771 501012804 83824570 960438090 756291259 260519697 154420086 630289973 536776695 756922067 407350569 345928433 361586305 660659294 590223911 669037860 617684894 245000810 218432235 865480158 525570110 480429981 230372890 960888980 409848313 878883193 419347324 805811745 138894351 65308531 161917193 200879562 618941539 50132962 667024342 968717375 587121801 710623501 630638893 517325459 609364660 908296726 574010229 840811332 585224393 901377045 790362432 55200054 926846792 652768509 391627852 973120186 320257126 283664562 265875582 293579907 866342136 306298880 38905564 140442794 968821119 189918101 240555678 259220412 648829726 938486025 517180958 215274400 53242536 849775583 927578590 910863536 878896020 911510658 245937544 480559270 585238273 328722241 632699636 311594408 837487797 442515285 106016024 276553541 932550689 133148641 301159196 62144367 592900442 718550765 607379785 771452804 683921952 980464234 331924497 658182988 165589212 545530164 396955408 217483762 207768989 808478216 606047242 720302861 340354840 481451667 286804971 965369751 886117804 811360356 408681922 569594617 692877925 817044469 193934288 992097276 222077932 631157158 466042484 471430106 421140895 552394946 730213695 867741997 452602487 107800184 834081757 655474939 709618204 583851238 464939309 185104819 364020194 930477064 225934897 247766567 989589949 426620107 365653268 176608406 227746124 127771645 6667821 601580455 194361047 621964121 884378866 731111780 223157836 336641664 739382024 563948100 766505540 140588028 317332796 47938085 911867134 661998142 927658115 740659016 127291745 534881951 782826738 214850400 155713018 657776735 320757456 295372417 315080708 927439273 827835784 497154085 19843165 985193613 281608366 307394099 766725259 168877060 861215484 881082872 383358398 573424370 713001814 831217965 610813389 378555679 813558728 760725224 628406841 218427878 29621891 688949429 902574375 961991389 274477283 760340861 64812134 878174092 504755309 617178262 190379630 357185965 941114824 198372032 827773281 207620242 893351837 470156574 430929410 76646519 15878772 403681853 9387202 840377210 664146913 579854098 68722361 631182502 530564956 878180860 885399204 940705514 569393246 947633086 118618606 642818082 742569343 128284297 622429603 471623695 555891074 10501869 916648828 729006936 787694163 592640234 359683799 854160528 303427079 375278824 697917882 391059760 843345877 766618286 13355480 219826329 469156131 900524152 399520646 342241045 88173692 396679135 380704964 178296018 449521812 908899048 408550969 945624302 86210885 107211522 215960115 757187176 124045970 147805699 734276011 211338026 360572328 298580261 368403263 436276485 375898584 286992912 332005943 677378222 556699552 44198864 91083139 767530190 645789600 445338587 296078007 510028009 374522791 727728911 274877719 379238515 464187813 35050158 835730055 70083008 827961525 143969130 130312342 939982616 296385565 334153813 315527549 682487203 614356039 892252652 770247451 467295343 950038471 304471831 514941941 32434548 103162452 256232992 215303742 891845275 758307288 648980927 395306187 266667173 699926874 779703822 498608667 500888647 491406862 724279700 285611349 494160154 694194256 924252737 924777803 828381345 662281891 861866598 107458417 593741633 642066609 475773891 927744232 78549838 878490190 670541946 828325750 311862784 257571959 370062878 347551884 712690813 968390731 914037406 607161408 512526535 395180568 499964763 550339152 311337171 958845524 74019352 237551401 734308218 837844118 186349063 15107795 609682301 599393955 678486711 531991560 227477126 935948644 136592168 627734312 179025957 832808432 367480510 958516539 307001556 120782465 447549514 159439085 821541108 240151417 801113855 705557913 526534606 395685986 105445751 516269626 360769685 126404341 725627580 923463804 461848929 261763591 383009595 629153708 178331696 889360540 310280132 262550464 709121011 303954146 725212315 324044890 263422834 414942508 395602017 368401855 591297645 620193014 170759973 243210209 430395011 73047009 346720091 576030034 362601535 580320951 775406818 454006870 160696334 333000303 468956671 530777043 805786956 80635168 695262812 349780056 881471290 284053265 80972819 130677533 904285188 261331373 45998748 685324030 508535735 611269764 458546658 783272329 123224908 498668116 175735087 735377893 949773736 174194690 402242616 8490479 866988179 675253653 441828379 706921253 157436860 318313795 108129373 312888749 405927873 23005284 443890668 159995734 996901148 850134657 963836445 842858139 441892157 568056896 74204588 47709590 243553136 52934775 931217344 842389778 598269426 546592545 358256359 967470463 301609189 982179422 120535059 144075246 465478991 33002366 700309922 454725414 848972835 781107699 685279324 250390664 556910904 296956500 644086381 776759081 278557781 615764331 171326567 770534587 162078746 787355934 647218253 264275105 306762018 417430403 598407806 213073120 389611233 730610133 860813004 477756200 734350520 170661237 476885357 137121744 482362608 165348593 125008889 127247576 88044990 268933371 274912376 892162793 283302457 157531502 395842648 675020877 274808672 536992334 848387440 954365950 436683041 604988614 172111097 35069084 153093960 913108011 99082394 825288561 787404946 464842484 394319203 351341924 285595553 520758726 964714179 373942805 214153210 183746670 714359709 708863678 842279697 827715296 948212020 875893065 230569793 314138162 68595252 382365507 263794887 430126510 120357302 402836197 157993677 58158011 553992756 768611341 564543590 377372397 395644052 703086914 573697932 958660863 97664293 995675829 317912096 325240275 327424666 883520317 492592362 191531640 398819600 278800215 443946651 560957470 370693903 559176236 771187916 800472354 52587648 481965709 482234624 692866566 55633341 399012845 951670177 644801145 136767615 651609966 225019645 82653769 981105391 39525591 590435917 660861554 78463126 827446679 123061943 691173914 351742318 194415559 796646976 574585739 917741266 326729507 771313883 198874937 381433990 211308563 736832353 378910397 513248185 228685478 799556243 354163163 486393344 889533335 573432344 901072256 481747032 968724802 630833543 915055806 953354278 671380143 782573396 815059933 193040439 778726540 326154723 173076762 261801923 319447090 793535613 603541544 663994210 742301854 529418833 669650603 432829468 143943035 33080187 89857409 112428641 280900117 377855482 175291305 898958082 428612709 621536952 991227219 75196991 644727305 848432265 228529358 917700796 819316041 367176995 702723482 786364039 115537426 458858534 45438807 482361362 140158209 344934431 53173456 361654593 742650958 888803196 545937144 42410067 181282023 631925146 719404526 22216439 467229527 744930745 890741747 514835268 108762837 654181887 127213168 468814004 732082754 831939713 25645818 467308337 745482020 427306548 342901326 373500420 600205996 265912320 48576845 601734882 541237937 573786024 296006659 623190764 9894576 179362016 687529122 248549287 982652116 97875010 746692233 216794108 908222697 645272652 408710454 613122882 406271335 352099435 925344087 658547769 495730284 690371055 219710913 56501764 592210629 950338320 192452205 308132656 183400665 376865264 548453756 746029747 96600005 342948249 422152254 24280809 649653319 227467002 418504741 894456985 842309060 797725166 500030922 335621103 572208462 852777016 82116082 317204865 878711963 366600319 67249802 142849356 58558730 588196179 707971489 953641397 931157668 782822449 354183284 954534539 547312921 803621495 482602600 161252862 962444475 832371822 412482054 221693875 588873613 788606026 397968898 943185321 870420022 857809698 457977401 465811793 649151750 761412090 878076076 561315964 81838834 810891960 987051142 572628588 106247324 540111151 791622941 360577733 932502344 777260056 960133864 446466707 982701545 430184978 541034126 507981642 463920658 765577387 247300568 229065162 522296070 187005264 578161850 381682008 975750316 866068063 632639058 326779041 693426321 859281427 141217246 676279993 458129133 27669400 142444492 779376156 322746271 571923968 348432049 128416692 200635182 777086789 648889414 77296587 926936012 162516295 142286958 753232661 967100495 118500558 169898037 733960115 714318643 257750159 805842127 957024807 224389538 686816286 421521044 219543647 51010668 196661505 211493900 584145587 363018504 322680223 450592478 734883035 937223829 48021064 66850017 215624449 896043736 715248187 87197455 873000112 939569474 927758992 122929289 246986718 768140269 795198297 336067996 994597353 320266386 725197954 279951546 898480275 542265757 682220262 191787906 112849165 239369501 752497990 696979893 797002475 332495815 411741004 999399995 560048936 267113468 787951240 863894572 433918764 540874435 587132789 219210689 998232005 688724170 161859187 785911647 980708389 842624364 707595465 159000717 504600812 642621861 244514733 312666370 615461662 275716378 958220597 189350298 553307432 916382494 590906723 753036630 898165729 549530024 341083937 554820194 813326722 695327318 285438271 961369360 387854518 340888433 741067126 238219487 870173065 358705383 802766697 407186796 844978282 165880655 370738081 964825993 361278271 440244454 132913804 807263269 98125895 393558680 467626889 756475740 491191091 290351859 188506069 965240690 803088917 64350509 558684570 901229011 930684525 124699684 417912042 204330000 38720543 979860322 138684605 583723239 235875448 606260756 15163382 645926198 480959791 893477907 381442141 460136206 551321440 814586591 579011492 339744931 166102159 95862427 503076453 68805962 358397867 717142299 271230748 267575434 712103944 326264019 532996923 738595598 843662439 574373860 731798540 825766827 254260711 312435476 818377164 275026520 845918489 357171412 572641435 791704893 964047090 507697210 775550848 938299808 929220047 580403206 353864563 94973177 379457653 207052702 871543876 963103201 897255699 712173588 51285948 324914973 856714811 397909786 393127554 863188628 328956396 903605783 412373285 846411358 43845773 248019722 854052641 128230836 570030567 322319783 806602709 161780219 367008819 102583364 25102732 684606908 979304716 98628323 12526198 130289067 366991995 395705383 818453421 975879075 148108777 886210655 982620722 232182697 636106538 706109575 909434350 983406308 887684482 429239099 451559605 518844591 427881617 704846274 96984380 399592829 452458853 986200333 525031974 522120693 824462707 998608560 255770876 834894819 37295003 401825265 792752432 300482871 776366878 257000623 379045148 699585296 634848428 98061438 80109822 37540526 254097755 423054228 361771523 453027969 653892004 328934352 966357307 466981142 772397170 822590396 68291228 342053422 598632977 880740740 101214221 602176425 494034224 636972033 15072852 998839443 943001076 83415472 537272866 122511902 444506848 202018747 5126416 371125926 936408542 470820078 233948323 139935920 520899400 622081220 881952063 5703654 912841432 537929306 114469175 620696091 808195764 656114040 979185095 228535371 416429163 465358735 815511053 56753559 162564079 225277106 888712211 269211213 260633759 624086178 663025098 979755742 35305024 229544393 316227597 258174184 731591169 822962738 507745178 712875052 355387253 245783190 130960414 286360983 241839000 854907222 277162283 565304376 796736978 169934713 261587253 338738768 617313010 80208811 821448353 670135360 827327529 439911238 188335287 506516370 840240663 131276104 22822569 554693115 111495102 578253656 925536398 858707540 777614736 236248776 465855594 952226722 114417759 32827277 481746726 59912208 477753961 306062151 102311315 215865330 658629203 89863739 899912554 672676547 504918056 345645659 848469067 808475173 400770659 894866492 459418816 985501922 529422044 105774624 784210749 677318640 33566685 804916972 802076439 667263850 418344719 926120753 688733072 470756757 243956359 14508068 906434772 99386838 496868806 571541670 135601906 546601414 407984302 388880959 152718052 588894750 56641678 296578076 926661516 304230339 202238746 72190485 379022003 862678716 765780338 671725994 163718153 515573058 446840601 319094530 573871655 943322797 791800059 139217901 250892174 643573374 150126190 863682782 147953066 64139111 782608946 319386107 797296586 935590453 43801449 648254471 43268136 284799204 943750818 291413873 981945572 228242331 623548626 511521617 71754506 760448931 386277460 580337255 322550152 282167404 105956338 80512539 403856955 987043479 77174231 874033017 77479649 135216356 411032213 950245434 199302693 280414016 757050924 533442496 70677654 864945597 992121602 973681679 230926256 455964053 720544485 416661206 939853010 283652142 9694214 28863086 558299208 425661457 581548038 553474263 10461762 838978547 930793706 653165236 691057623 670537133 174784542 679897177 230317579 173687108 455890296 10636475 974744775 539101668 156732470 236280952 619518426 663522527 67939322 455825114 891584513 198574257 666715606 295570128 198971352 367985146 876076859 797664239 922524398 145920651 814597897 326533496 215304881 409898579 836985474 204302674 986551163 300526702 250454103 784689419 695628170 506916897 156790685 961957597 86429199 154701269 754025167 906599588 958894100 817234973 459090130 457354984 300732309 776300727 214509556 361953757 267419253 808285570 246590701 948421203 10403704 552746895 325000663 859483340 403748181 957159436 85300024 195781745 475613602 111342937 196428031 845619729 571548131 879528949 981157246 632971552 559883900 254481292 854686836 181939905 347594693 245344245 285009415 112648890 172153074 664335399 383145923 750170234 873539366 553187142 292968863 167390232 723657834 372635551 607404788 802739026 472435889 34887587 833756045 497533074 171192019 87532783 77226642 678923752 152327057 206565189 778443166 488726022 377434770 677775250 469350824 928403792 243359082 445968614 882231323 935408845 792650901 814935425 493412799 819341099 264610927 495763907 122985420 238948800 712649283 439325496 416173793 567498637 626843970 753237907 552395265 393461304 119427464 925047727 288062870 325195027 117967122 421149839 806060668 488082961 163568846 31933025 448327405 931318485 944003464 374357876 803339149 877282210 458388735 911453510 15166570 612179567 167799503 927697787 166742522 411100106 417852291 843760346 33898011 760604664 883209612 94466141 467830545 687999455 801348164 846939673 482176136 54465038 829304047 698192468 255754392 732139964 431880624 706095737 835087551 533799880 680791709 770397212 303421661 137323452 460759213 946306038 509997125 957980354 367267522 601807085 29024422 480454326 742546598 96100106 665899301 645631766 79054859 644741248 649293633 443536393 598714761 322302638 999497194 419485020 495671199 482271509 738685556 841166219 755815864 375489117 391816094 210813104 13417254 94121310 737038477 779536279 774007332 991748113 167190988 54077611 284297423 214565528 974113362 246336774 976795699 56649283 258626173 418080103 63579457 631819904 901525263 134285620 663905745 41636846 353790520 239717758 141255590 571519309 882333326 871496699 658892136 883530890 289771020 486133770 219847080 533531066 14550299 581499316 849181664 388864532 601791362 708652711 626704755 823231232 346102651 566530360 246856871 298825990 814592675 64478058 978431916 326359259 470883580 182755301 558719393 397794393 579978743 76735219 862252932 954473346 273846118 312528783 414541117 297782149 159381130 613975127 122457248 480953264 421200134 83949205 553928804 410778245 314008038 629618483 829143339 292214434 315809442 661640653 910715007 147656660 110470167 650513312 716575184 829194254 207594375 776741524 213750136 979862636 212690850 386029112 763097528 965376561 240712062 905087685 145437113 572134342 837844887 140110871 559217294 741814723 352728784 767243958 842927662 218432478 531579258 619225298 210225274 832836094 781681225 269367109 507936319 473898797 830919001 918925960 385939497 553103517 574358321 305494985 445448148 144488106 303974332 954131923 884892354 210519515 601303378 377213469 64418141 241784277 756990896 972479433 137523186 658176111 103442682 62669467 871527870 424383138 947579580 233846789 254045153 563287444 464396527 550853151 24421988 753623951 288805610 257065124 167190329 740726534 685971579 422860798 525631289 589325716 159596743 600310844 479401764 882321662 723944807 823222295 772997284 866388013 495944536 478014444 956666189 789948980 230927873 517739715 484189588 770182992 703487020 266909002 627482076 662424038 769494800 2710747 23369072 140738429 358076747 44384881 216685438 164475338 278769121 288512950 700669986 315114408 659256638 472983547 318308189 417200669 632058427 519946548 533297173 643695439 526601489 179334915 571661086 487658902 107896422 868993453 66912306 28824171 576220236 309260064 841663216 112607088 82047282 844851193 28403170 676309364 833000186 451294833 964434300 196109673 881912807 868202867 59247379 629392743 492441509 330183565 969330155 889219509 510686794 413362676 896173611 694810557 334253398 668693900 455392742 493209360 633701037 205169112 29649431 122313839 691845528 612038666 419008923 693829303 27301843 663149560 554235965 373135863 712977527 526333730 296340399 416270432 673242891 435316145 481810571 207103312 637419641 829063534 43101519 227764297 279830042 177965270 872846696 476868596 446597290 463449606 452962853 584060199 756942670 710389190 494818240 104569821 562870933 97160326 925597786 66093625 358301040 615280989 732931836 634183044 670238787 205015305 374930585 662966581 824410060 472218864 519493895 825835492 807093308 624366116 978770954 1943127 924112425 41157722 82431050 355732087 271712652 983278837 803645018 521679449 907699920 129833977 671260592 719187766 729650623 590200086 716095921 783740018 444597903 785062051 342440099 495934107 835098845 896558238 639602872 303345763 574872749 998857651 710221066 814519714 589340527 857997357 403585692 546998366 795871988 863714562 704533845 3604930 788420735 572579542 284582149 467650851 338142128 381258477 692495976 840603896 561457561 280995382 867593247 827053545 599178154 667572298 580830129 787389372 453797061 121830504 495688334 500327018 735810093 177632376 202444055 331290379 281845391 638324230 395721092 958700769 601926401 284746572 587621124 268202074 274920446 798258728 842877095 142120968 967836783 238811939 482088039 334360998 305828001 866150507 185742369 646717208 109796164 363827415 868527266 204712298 193160316 683988709 608159900 984815053 836421834 201804734 777784231 81540253 994163228 978090034 495289155 231812190 819367112 738898361 139238362 720106685 126564493 544437615 469929920 407725449 771677068 906278173 49277482 6865342 978237782 449830960 106694203 536639107 74491356 824541381 490880508 269271072 49727104 380850324 338522464 462150923 836949254 7937544 845672766 72126171 419286170 55566131 518826073 12233047 311423696 296689351 325922904 995269993 347386537 7740711 744037582 891441187 185885064 472824151 265744948 504816579 303880251 186711560 932195052 828148392 642032117 46924948 650795580 451373667 913845589 998676468 128899930 945022115 535297376 374298583 976360541 184818243 357824134 431752581 235550533 225983560 643841945 917045496 63868157 398720735 5126356 992071121 683642965 275938905 738185954 773676117 402603271 866949679 177076173 921561204 384721586 490006025 657287178 528443079 690074084 609790127 588138872 456585096 200134922 309656340 918192218 276574117 975124353 868128084 621237856 321805737 806162566 963018679 220154781 318653644 967551559 148536225 35180942 915950062 328211153 360739494 100098074 355349654 494082334 752189830 60431502 503465971 682022417 556696866 133991071 990283227 753069426 725623173 140720489 156172239 433657587 657970400 750684786 683773943 85664556 528763539 741914281 271393312 28835489 514149405 797243232 585319107 51048118 530322474 305765206 805680639 586340546 997728145 798447539 108254872 477393660 791324232 438222078 805353218 408576901 716390007 289092656 825087570 548871524 699443557 687438248 787275080 470262161 835487368 905332777 783164747 353521629 626609787 588963809 397995880 373974543 694161919 402461539 453410651 926774990 479835394 238981295 212309121 523178155 637691285 680736295 681155806 584766753 836245239 802473373 897509412 103868814 648852615 594292034 937913004 12837440 78248145 401301687 468485236 123783525 380407435 162587134 68748833 351356437 985730957 449197188 79312388 35276628 301742042 838034979 399586070 125978380 108362403 957319699 686269428 417638666 387573045 351271419 614219238 813813261 110664717 717368042 635950555 634288817 933984718 651608147 315705705 840705152 831507014 135944979 932851152 518150382 145191782 209474161 964212475 139213909 347618376 870993689 772445813 772569328 650815026 78778403 8690292 9155057 614955917 847489030 333368026 471935585 698604783 390386607 492264496 50203199 429231118 946030949 309270178 787433320 249915091 684219873 557611785 549026473 896127047 455255359 818134498 11430577 594208668 949463554 352483414 172685080 421869873 244834333 483275573 661259109 831287171 64817118 828272117 905432059 892268099 183259913 548863412 378281773 300931907 360305087 218517565 336184375 659780474 433596303 735603964 287281206 642512403 972729453 662597642 909864758 185707858 757279672 182124837 472702249 832370094 163387699 397862069 62213348 603356865 539603468 676021449 416651053 758017615 692252634 149560343 472217515 76920643 719420827 465884416 160088048 423551152 251544750 549574797 374972533 658917587 934436326 86334312 68805531 850010635 734980728 33090797 100718762 833006566 583138049 181873178 526673622 749134873 626502786 56265364 390878263 568536444 862033773 149668782 104233165 314068247 943646359 421789020 775566210 858865934 418288696 345721663 393988394 188091833 892821244 64883614 639602555 418830482 315802862 267478120 580586004 616822078 744317058 669653044 769206149 690599559 230561686 412150082 689848890 790722913 321066094 746727545 34397582 944416741 61340347 462151782 752319171 789539926 498745998 602019909 170124288 669005859 250215 719847152 925396315 89075420 463730475 816185331 635071943 640120638 205256996 611723899 881676839 554757677 37330186 126419548 424346694 953286577 554212347 222815517 764891095 977588736 403654010 241583326 18074991 45574260 591164537 974597489 253365136 413799571 176505927 539341647 809761190 677903618 699511203 948911765 129693952 416935579 487673781 54749192 79494616 98537813 632960776 58862111 232542286 878955861 841880209 155888617 319251311 457795047 577094830 335674920 509483048 767014013 876006438 180075078 317395541 291834800 973502754 563832143 775654836 594246216 353893949 995967226 215090416 917125164 158425966 172845226 735355037 359225715 513246495 371333730 315100209 349477719 530251034 510059476 863199503 759621432 57660822 872581463 742989180 566393766 873898544 583964905 216584625 597250896 33825519 954636081 234379969 435809302 759179068 719077502 335891373 468739064 719448305 10344906 806964322 283976224 471569734 333258674 608791216 374549991 444925926 762958207 289317712 311975360 152010714 55603743 283981539 833783382 361963163 530386726 984617202 864612209 589462785 429793243 275727086 744089347 987876950 297687580 449464626 559346215 243058500 593107328 480242686 156413986 200678626 168652860 32916090 93997409 777569198 121419310 464770490 821327988 508883084 492691420 995900855 387168022 102799818 590387576 453469774 891783982 598975516 162563035 553631821 807745476 723589536 581882238 653854309 212688396 811177180 837422476 256263211 695182435 165084602 420405463 416741668 146192713 149663892 597895889 220341689 208330858 877159204 790657690 192109114 523645341 571620243 228725759 937492450 698500566 583257449 52816489 528561104 147677248 239260316 872815598 214526479 937092899 248924815 303013461 513856654 314858224 11892992 23252479 284721706 898710855 754217761 836795135 666205603 421069801 9243781 387143175 803245215 62558143 131412011 834982266 4281523 488622046 564049782 980368481 794820692 631416962 145098036 498559848 472591848 5283854 176993949 404770791 256332470 574664716 406934602 218803422 518555634 310494257 128870723 342941684 364978609 660523351 560252916 857405559 335341559 695325937 16248626 301339745 434855850 344837596 22554428 241678158 44397470 863014843 701603000 169951110 397857678 445354390 783519664 609706235 758090521 437043477 527206554 899470403 308143303 802311937 43931989 255134106 967757066 594994762 936063013 527338986 40524604 750107411 607099063 277641669 157530272 206690710 632356640 122091100 585274716 266988870 842201823 669478035 358068098 371300274 689275865 128629231 260335631 921001367 206819673 189743008 90618846 822372311 877389078 458820991 270005436 245923967 108897838 816942857 72109659 421148096 247165988 557516389 203991889 17366262 305050086 321538402 94656545 198128551 815282893 810703995 344329781 383610 378704785 390511563 505295582 951702596 612125527 686811163 806089812 702931712 708882609 711875545 843051707 876398805 732794512 113083422 605672728 513712904 788550485 663275433 819910751 955770126 560237507 659506144 617226347 916628358 205161991 449783253 440270584 17251633 557203127 510320955 38536372 147987449 469815758 129826165 733409326 302730736 856780212 520214664 384168160 267437142 994353719 443105316 422692397 117419659 977152907 321057441 344025178 248883994 34405195 439789052 41856923 82044601 602012031 572648670 208426762 107210049 968763285 550690712 659414439 86999732 459328862 918956319 552471386 200451648 807527452 746126865 582930423 291135288 714499953 752346041 987467316 276324372 795942509 54926592 250298037 415696253 448752771 479304069 863229187 691436856 189249680 2147458 257648783 946679101 873102810 103250912 843501489 638774949 723817233 468939566 41666730 866673842 769887556 869514917 898419367 765908437 50547958 572628001 716719797 579785880 603410701 748898859 956305614 31015614 157863376 624774897 900011221 320205353 630114296 93605197 802665363 538916321 134264227 47940027 889597366 681792285 403199317 151574885 551792349 259322932 645455098 193534744 492767365 803266476 706525931 474757197 968013080 499392817 349853922 417480226 306809577 810569877 269299461 409583710 546428719 409367762 690388194 627550322 629156106 79878415 397027436 677163124 544589961 7770005 475305733 529567781 411727767 761037524 462313581 977172971 907566864 534272111 889335252 528137170 236751287 680806944 276144335 617826967 287774003 901484250 722375258 841357463 13294355 217206700 250095068 573549783 124875733 519843026 78345250 819574281 796568025 788357808 115277920 430654337 856702565 955308755 327276853 408792131 141269677 962849512 11353508 417796082 585354442 12855251 133899804 880123361 396690622 592779918 756968304 486193669 244083057 46771020 624750051 733642749 92764597 87431773 275846162 40967184 904916290 166772541 742724625 835110447 242646458 554979212 590642771 93114608 375932838 389406232 854123186 998205587 136476538 595787735 539898744 460240383 942396043 765066977 944887379 679630784 667589661 901606265 597948755 281213205 90005590 352365832 646696441 696694485 15334220 842228520 432477734 299022988 393201143 216203919 328088878 584940905 267493172 951139362 306321602 310456129 18686673 612434924 202945536 113795477 392156284 943263777 587301996 761754252 424237266 480895513 364904182 437977588 807636048 968814939 631473394 473672262 347118693 747448977 686752540 790738336 602312794 841800334 701587099 343433418 547702384 988862286 127956987 551275572 792819396 879666930 890564145 750871144 536048224 760204489 262142875 539044299 434991671 947151939 542188287 992814109 766351392 866564605 180295306 7927035 450913757 348619961 252052177 353680922 12406295 632816227 103915470 860893919 337721696 984209166 145288684 442716493 59170609 647973367 107922677 644595475 447650538 571960959 57627935 618412171 543199446 864557360 985389061 327236529 677851943 392194241 450992049 373594414 558513396 553620235 299833226 262167891 707108159 624771600 640191852 583577875 23351280 987157249 153703569 781623056 710823644 189885739 467098268 630979217 213488824 492808459 573285022 541976709 921265704 648394051 483345930 385469571 943841972 884600227 861452734 534919115 608060366 241923097 188357886 20643394 459360718 454234051 240622202 622939005 336082678 344698340 698834758 41284012 941173361 159672039 271462880 712341171 410147148 961104223 783699754 953670934 562106759 53046535 384086388 431229193 499019002 122363331 74809205 740088671 132573302 217641631 996814661 153306774 240234666 940558028 945990508 443301851 148857135 811882662 998192603 180701177 437962118 47390385 460115169 830587497 187850264 424691353 556631103 901674056 695254839 266282030 957758489 478002529 2540570 846611569 407609851 79860511 145031654 624612479 549460956 900689307 946865824 400811172 297164570 682961559 343718462 681763673 55367546 118449780 282531222 374656564 31961639 304214857 974509930 646770936 129364664 735520198 459995493 463643797 744507435 715885648 791725332 810244120 349487074 339516906 991427316 351404994 417980590 839536966 238970727 464522226 61504965 144305594 838429618 473141303 948033470 675333702 206958345 667131969 62624165 357826706 55850372 918382317 45836770 97862122 752672550 489705788 333087566 910955592 843249881 623202650 734818342 610066251 832655210 197808030 649015052 412970809 543684246 852633985 16855570 94986754 826559996 294623906 91648939 300745279 428063785 254183379 217238448 757557803 594687880 676551683 531952238 862577328 905400184 338591054 72205196 152429662 95699769 639958520 414250789 186354797 348788978 974249837 921100464 58031545 651655863 3090750 879239190 817172424 894792574 708004905 553225893 118717905 8670763 763949837 966833678 837570979 835800198 940185592 476360563 562970817 219731009 98619681 951778902 961473362 426971636 153439707 683690919 724032807 303031842 985289136 815826614 966359730 366364722 337701192 868122185 553636886 67256184 885779321 636133245 59193372 101941805 560815162 74232548 979075888 170744431 839646129 354086768 716123243 15834443 900341034 650363778 425408651 924357038 757082134 199515612 544511223 844418935 155488018 217849516 873875647 306356832 11040482 420384393 564665243 751583514 899379054 422233454 989905640 724988466 238321868 33471427 416576690 205869856 787141174 865029458 96713378 61233992 573027601 935132754 454526229 615113973 911101925 172795488 391951876 900799571 284146536 625480577 60661788 597247102 755838837 46164770 824031658 586877558 339277838 14086426 176027559 607672872 993590879 120314532 860413615 720441184 390801850 881647975 401235976 179695325 140083871 728324206 390643881 792955707 519719339 497981234 74976289 720459780 586664106 552897164 486068659 399281324 506731412 956952005 52565831 590436749 15854464 451055494 672075370 74979 490324916 642229992 566862164 44034525 83765402 808719976 848412645 862573446 142411972 523946729 213965988 273639390 14962161 776412859 993492416 430124738 255314430 972513425 564762640 397467389 191165436 761071238 509477906 2759999 578418970 394140966 925325555 103493409 168153528 26539609 734812539 755352614 903384151 955751542 690526500 988137142 162192032 731652922 740779279 797211429 733119592 174141642 445450496 941882535 174011565 210277045 422888042 628730465 396613260 722140396 594597728 554232922 878137943 287397585 806623142 672715911 437120124 663987751 318168481 618156477 582937243 391322139 822720351 492084417 806526579 896380994 306502551 632532792 617065200 650552730 962911402 138695350 326051623 662388107 864635809 218299828 322227026 878409949 142720807 985576085 446893526 116871880 421603989 473341598 864569916 105871848 865578220 105238276 205499961 155298628 13944273 986883551 377589926 249921867 442972308 454191407 727830665 773785805 685170476 428744159 473442826 713436171 574017336 955239616 429276545 495312809 495427331 74471306 351468132 971560372 943642230 358966752 17219672 988893346 4771885 476410955 768886828 691983439 683618914 926555961 739908303 601640707 414455300 102665735 929525340 938827881 205545885 30481910 728123160 851309207 547565668 352286508 650155121 843645193 154838330 9033665 416465908 538640293 176992167 722227366 517399648 537256888 96382167 35754688 480680601 243911419 749165732 392814554 806101671 949564548 707666062 165728164 350492350 439762398 995586233 516741303 700033086 236341749 835215094 188663186 986545829 959709212 21436862 798026147 939553438 478407956 578766638 142186039 131558147 558763520 121936396 53886856 491677127 964556653 362235085 771854776 915301137 75371601 71498369 235388370 815146538 506766089 758778346 725560518 259749003 199914584 393657458 538677357 666671816 16300657 487279909 672780934 207140267 85909475 338756538 104637373 216217371 259198127 662459284 598165667 398256938 697149754 654351542 435321009 961003287 271385934 516391122 691704137 77966915 586966823 933454398 40943281 474223931 492276315 293169914 193058591 353650865 963687154 42549165 552471977 264607358 461959771 112384676 652364113 336082091 776743016 52101338 19694591 986437214 398507096 806175980 335443334 54074093 348786643 889734179 134141089 206870739 397369313 646745450 887698925 626621105 737495032 138792030 193145591 109105237 33141499 48305213 949367597 858344368 405754921 17808105 838237931 290561505 776067634 96721911 274815601 93908007 476418602 264857500 835152103 456215789 581085841 374145463 19320673 499879115 897797705 300075729 185064918 716668793 571623329 99345174 717668905 413876441 943166797 965195106 496238371 35898873 538691434 942052913 761192819 752625675 752157822 284794536 968757939 654005098 596593273 482245532 46971495 774090394 481035180 794261633 351105270 999410503 111684055 775094901 417799344 54516546 556724508 626990915 565932755 484140937 834543885 165288533 408214139 200617787 691963292 242341831 475946419 721287337 740980263 738981719 749146735 465727040 741593715 512662891 439248770 762587552 197320111 895197714 698141109 547193482 306174317 592638471 392984234 869009386 264634027 591331749 610668537 593846484 21689040 527260660 84162069 387282818 217930923 288268710 578475875 158722137 544846188 603817487 751445804 906262241 616848307 210723888 111724192 227415248 461068934 822065072 325126104 500513536 651401299 863963612 849102040 357976693 509747178 819889 412564103 953596250 582220174 72351176 627620788 566711810 700653026 382293866 523524638 450523112 984127220 490263432 865448802 564460208 172231480 554020026 320318474 364095781 507928719 900799805 533841033 666361915 171623736 450275319 462539317 814929931 865022180 871115130 48096851 449471194 11385257 249835773 707797769 937856019 903688448 911092060 485270121 502311241 140509396 765926434 98560366 643850041 287623790 87672959 127177464 262052546 334111110 260918343 678350033 85565940 355133239 185565434 86778537 591395582 782119174 708001473 734347545 526483777 857560037 429018984 318085795 270359096 576637218 154524522 662849713 899371671 315927936 48193765 596309652 535648042 133599267 344261279 383208581 244408307 485613975 479760646 148521637 805413135 946652880 883280182 923377148 246035916 576412206 198705130 110939518 869157278 543295094 623421580 631481090 452304158 798259156 902922283 342486602 978849042 622627548 193108090 757933568 849956197 59850640 289471198 187356341 917915689 934808145 493210461 94834144 333126807 105110252 433637283 644282598 934643222 262392219 232650248 107406863 970338096 371768309 783725199 324013450 345170584 123542019 671811546 89688178 919199273 753695537 346088510 244748745 491647974 123481943 42021550 770182006 533406972 161385901 278877643 396571980 298812607 79759836 876873434 642032132 209655207 498173680 962192590 63497280 474640985 27210337 360900413 679114119 881988255 332543752 227414373 503662412 682333293 42636846 56830765 89172969 515736799 837156477 632645156 140744092 854394678 948680972 266510980 550275475 783068641 459602521 435666987 951830235 368595312 600674631 977362847 409097583 348146080 857232420 699457807 364493614 662739540 109755303 62539605 156535526 386588822 333356013 550100205 156382023 450693531 6949752 102386945 43000293 63708093 424297528 263480925 219952711 782924672 475911811 534888573 327866069 93291150 936091666 408837242 59229663 180444349 915091216 402048034 145049246 389188356 659428614 269055712 269301300 809320586 388172780 31997644 728347821 559693208 733444895 823018918 408408052 636329124 143109728 222385110 726345960 414510406 332648160 888070504 729007177 454932290 368726070 348294422 5838271 596166022 823542108 883512641 751648474 180607267 730188217 281713386 765731348 260395602 773202454 408278725 556339155 701654906 521119662 875416617 587911513 82521127 135455 96708116 148794844 152352264 355187046 111634990 43953522 796299771 398245112 421908422 751266848 109362435 962207912 745470164 224373454 800803145 904997042 124878070 364179530 893515554 313220030 351505524 704560723 626606604 742970838 468206396 197334148 686631846 692902256 269172713 324554093 220201150 726415981 517419188 164693881 806943302 194720524 299509386 280846340 321162841 413778686 436666359 850824783 977890618 978254424 952067637 878494341 393210454 293704344 805649438 756155571 170073407 166880162 206611776 914698710 426564273 713716933 525733063 109163215 246669197 125054897 850812552 426319717 393847777 797021065 497756678 177752907 502818782 281164752 997063526 207547163 635655906 896258420 648528507 942460245 793936494 341510088 277342134 230331233 493202735 79174028 468667706 315028624 663666677 366014439 82483150 617813280 409594559 676504927 955987938 29562670 587673519 542192880 346561677 733629893 292246031 906453236 830965386 760361429 207390547 100502066 321081159 342840633 913357332 235154647 928409552 855192494 157072156 966949750 930392538 185307107 766705233 161255440 665905864 719240807 468316100 945548550 522703521 618674865 568618678 575064106 283153169 751338021 258364553 542885805 593928307 759151370 993811908 541296943 582284482 599233428 183247137 445890738 784468139 370529501 258372723 840003497 179267190 471593440 138789828 282352098 809287971 97117836 29463100 533443744 700348233 100884659 33103152 908476295 728058933 13867272 672101197 79748002 561851603 986022963 178427039 644281960 340486842 462031289 545581958 313233078 874509613 262797068 433768392 786010578 296127502 827325574 397163133 96628840 188426483 592952936 909007078 728446863 407686157 102044124 840825717 446569408 733984061 138186229 342943415 420980198 904719627 444006055 226999400 73170506 60146087 259439062 965261422 885303202 92637671 390908492 268055507 989554703 407558217 715174584 868216778 546042896 142758903 271320973 709807 698516375 892982206 887559112 670559493 850234616 540695320 654571604 479244917 473958894 841223458 160925868 591653079 90667171 343061925 233603082 559678240 214169760 619838989 773229456 844643960 90302428 575740530 884164422 893105450 292599221 495316120 704519964 15824808 686898668 990858976 408361455 429682060 410228661 741604702 846241917 195327645 946877089 903804615 582417520 413429698 584745900 626372474 950347611 142801937 943543358 574817919 885531573 105714114 95606564 959532164 104599008 845809982 691291539 175821538 744742182 978161677 675967017 122685081 964574902 958564830 793391593 815181135 613762220 943010197 548522304 262441040 510733064 951536687 585132807 290151833 149707957 819577305 187943798 836857541 94977153 62074596 482329400 984592412 287168039 4796625 717950039 654099857 613480776 383388991 823780168 756432311 760971885 105612024 480679402 136423116 983833096 850304243 66544257 673552317 69022579 294197575 468252346 113384213 367719403 755600443 246234795 907207181 225596319 621374265 5686736 531471234 871871645 929267669 440151568 664513788 447103967 723478728 334652089 228640686 412523589 702885112 656710525 411006314 379264410 234608238 91336573 470010802 698502031 905040223 640719416 313871023 629520572 951056676 971186851 270034988 788879781 953647939 150862862 273466530 814745519 387166821 649997113 561041969 60704814 570721119 473093448 936260000 551544669 147764266 127577800 159038814 509149016 769010925 238786225 960030851 927575854 742573294 334522202 212749261 350270925 496600999 544912783 818143906 798965518 730297772 282429818 455910420 955064501 130607044 686988208 307064282 545633639 160853978 681921073 390766419 486366648 200927747 500809055 157507717 278905120 49258870 652533117 663417120 670984964 815721883 360214881 603987324 455920040 77731578 401752585 169376663 329902913 659725382 381747972 161282072 122940646 749679454 429996992 599765841 625944473 962118720 523168784 312844854 213973828 89697821 361252662 808062825 752595382 893754947 180041426 522356269 338576812 387752751 553443828 594244471 857132997 272826757 788014096 519939288 622070153 577332497 379548678 294042517 594811501 306368450 47409944 825011603 693024964 279855803 840412148 457722975 453167831 285484345 176211889 948345908 788651976 63296934 95533768 893759215 822853804 746029725 206959140 505913112 404696959 291103697 859915281 80933085 366250525 604345128 125628734 304477464 468806480 823707057 304052688 972413508 602143692 40092314 29813321 285254542 40779562 947811392 509174934 579186113 361031912 488174889 726454543 52088917 154329458 951532284 117475693 544939625 167926555 557868430 506251735 8505796 44779798 535563740 679907800 718419417 459737739 587943688 820165996 130116281 132761470 509805915 987573738 5531176 46930917 409761098 780847899 586875532 519239828 568507506 45586473 609283060 59710034 102435477 724076203 82005271 970299589 325768349 467541405 641064532 813214077 85752734 39047780 138917556 682724597 684443090 305848787 732531429 824369039 201495457 854193943 697720381 771410579 406278801 666151634 546453368 825298227 463609430 183253000 501450508 360820614 318191055 683548969 745299835 115274131 361613306 293356292 779807996 851507261 444627207 907588572 757849394 867156567 984068934 998035540 927445607 27890586 340365877 501143160 559321221 668810154 33296244 929833153 45213220 518063886 128483793 215079688 943637893 742489142 365688380 292877206 970345873 946103936 988156628 204648982 146688210 474084649 584766941 692186268 851664516 625420378 866735804 25194154 54987141 570653223 326656778 166151712 69972826 649127815 681949057 493165646 287942965 216375644 107133699 969522921 308083949 914438511 510619546 365314831 261819905 906341235 578145150 956183106 215172756 762328063 624473094 352997235 44699772 231201685 224400055 2361844 311993902 867649950 204178492 879711878 310601161 952015725 860772713 133677642 740442129 304436025 78809143 731269587 261073784 180598052 764946634 703265809 807381272 742133302 25046640 401368416 678172077 143624549 577085081 651035788 809077405 282310789 222824419 985495486 131305210 115610969 119403277 692107658 493751930 25379466 36855815 281678833 336524926 358755499 525626081 113420628 516922635 691852080 966891225 139214213 547917776 298036610 120105294 678875316 172084007 965570022 555322062 895348355 391503117 395642509 806780431 475109109 526873129 32279697 380286696 654495095 638702283 159218930 503624030 286168542 293699562 652260763 677987482 742259050 92320807 841402460 887449588 641065405 301650631 680580081 142013923 461870052 523538616 174747895 919869708 828132184 336716695 455014139 716104504 306321140 594503324 154771306 263864927 948397565 967101365 293051554 488838041 323897631 887016044 641233122 219644456 754490227 391795964 225444690 334617722 432075634 864338240 897062150 330197793 488884229 107277764 603611639 67239384 981051253 225259189 977875459 711234181 806644347 772174059 857213430 185997359 914424115 635346146 226711681 550958603 48936994 132803525 164849980 735710835 137707830 85408867 777358248 955422190 618602181 175892529 557333554 234094629 99640969 677093454 402230567 667474152 446541480 748841092 476805571 726226744 489544882 578281027 952508197 169803318 461474460 794873247 989693784 597187628 639260608 29546585 151077965 274080654 524797927 32493782 759890650 129082873 815559738 20485929 44115911 179670319 365286483 60541959 214596790 986420249 702351149 202080207 363263806 284140492 154350637 899371401 132727253 378944133 167498783 962079204 424806623 748004514 849538107 108227638 142551456 999069111 884521245 693865347 362552142 693121391 743911880 880991595 817969665 408051368 364030127 563944259 198540218 527353960 804245155 653938945 447555427 99707095 142034400 429471808 774765005 410481224 683121423 830064975 248695982 916353081 654979643 139548182 385138605 923510858 77020121 519739187 100960078 856335179 676066247 610479326 598535175 80091176 652351562 670268419 767381294 107488004 290170129 235335985 512119300 655504412 304025134 226472349 382014133 252149985 718201634 428076071 827433809 89968864 610550735 127241814 791273678 857479897 552672132 709804893 295386131 236430764 486478837 972990734 726248165 874465640 937700417 767424748 944583926 389793342 954656746 630602525 472173792 687046024 564103139 826321775 349412133 160523469 286140282 395297883 47174446 717991602 32300914 986023934 874019915 106627602 947870447 513857826 194055349 573667 810760826 818301493 790460046 190042954 524613905 926088270 261941984 96348305 438223113 442828333 759694492 418890284 13987624 873728312 742296474 358906553 221533600 385549953 954535324 910340342 573700868 734482875 136313165 97761490 282187088 470140488 691399482 641262174 767009005 323329071 252274401 732601560 428812195 732258081 924911008 284973473 863980457 22676848 271568834 878396229 207021214 977531680 631360888 35497590 961035399 919381207 289963483 605762834 416723150 651877604 597738986 614915355 44316492 308948543 388408722 37702587 965418815 658553221 554982562 398891588 909093449 393346559 490738132 161000246 608435063 566725789 604196811 822289203 286707264 250462453 85405197 187239426 820656515 439261767 142964747 256909722 283526272 760562808 30692896 596375831 565844971 598170907 451384462 666991032 607824084 296665189 713695870 707838445 33022906 48405044 68748545 636766791 69878146 620153618 808035855 481298048 690271354 871182636 632110475 846409342 457635671 112671580 888023098 246229834 521097781 402167838 106344660 363477018 116239259 932705948 171337967 885552967 877190005 398108579 569588746 281442131 741699097 631048364 449649808 159536107 194776389 778840788 542152405 417446627 587812635 80431590 514862094 719001908 907754285 478226255 913976673 799343109 838163821 484961573 287667920 161745310 789743926 595041577 10386005 862739570 101644883 54395330 98048193 269895199 838309358 386072831 871768795 98917991 47554973 260403094 585069643 328117810 641817180 318659560 559837857 621752473 690025875 255964926 588360276 459083221 4411917 626764674 449852877 262643783 328605439 258435792 400792140 737513339 35389702 558224358 254828299 383383846 496153898 129741418 364884506 568228899 853787095 736517037 810749315 144085365 765466081 655639973 64264235 147289927 792117637 239558128 987642081 180755946 931818856 116362969 870114147 406757597 965649819 873086539 900476750 650810306 193197200 347184353 460597041 615534434 280953380 681691862 126412150 670389941 914151584 257807126 304269693 193817042 113209260 402768429 940216448 697743612 452209505 537024341 954783409 170928034 992006971 284609896 742379032 684693334 131112222 835130868 119534006 435770576 658030168 552701989 481051241 896001785 91434657 259883985 236316664 746617814 498616594 223825017 653634587 38796701 934690100 74799682 943300962 569027498 438044657 484859136 861223511 455137664 673331872 120682790 157769309 760695754 913956862 179784917 408867016 840011612 327345457 408099026 983777233 341097006 641507524 481417617 935132056 198678633 563775406 776839204 837579049 542467922 608088655 747509580 874582386 550843489 372192615 326136244 514784337 316717615 290319140 582294181 957463424 701459326 34216991 157776283 758569392 275788860 196613713 732554931 578558317 526624892 947358754 773534196 740485170 166511992 87105886 28200206 918931294 733405330 562531389 773753946 24348992 787298907 961489496 261536724 748926980 605302654 895196087 251512871 123150021 161170397 520967623 559010204 754852483 526512503 321381979 928834866 956120872 290680184 502159539 655463811 26375305 652975414 224333939 539022808 656680793 207687466 738897577 684584225 106872381 291037689 197894344 57553651 751854269 717618541 661301169 133932686 857798730 757895542 197639334 777353179 446519102 154743092 85047383 106138728 746293724 791106539 820980694 525177452 392475467 704410625 547095971 472812998 582035098 525713933 512532129 840372478 802920903 227058632 963347745 730482757 803964593 640737561 8505811 178106476 671560737 825388808 734601433 423504378 943993033 280498888 846564020 595595282 851848257 207014584 212205909 887791492 868752394 233267542 402860302 311438792 854112913 80076371 719413664 614479357 433415202 724961660 196753198 951890918 580899834 731418577 750457157 740330235 841362746 765107317 917477851 898281803 75000810 968823214 582682700 865471641 444025851 849893367 643547745 272791373 877963335 848028901 603374915 303893877 270779792 252637246 109312134 747834823 299854204 102695151 599894828 333763749 188910496 231744006 277320858 502013202 488512630 654089669 553111450 500177859 781688922 302657673 283929954 823676939 664108698 992665568 825673361 781784298 597186148 368179583 452204074 497035784 58130389 692052541 308664479 845078199 998696682 797651232 397021886 772236521 453721232 238380628 729025737 669541439 542662551 973640236 659481444 94743809 37323191 202251808 498219164 664466718 469916819 770891736 187734761 390307629 155511473 610916380 389405732 385554286 726306950 491858400 999807124 982323912 175018347 989935424 843603944 6147531 333850783 709746302 336843314 772178348 180537931 554072327 816762610 454488907 933763714 356257387 367487501 95017521 966856767 600604009 606000334 591782797 481827422 389599459 590396140 787795762 142129838 407938274 390088581 12834469 230213340 901476253 886786076 255419403 795834244 279649900 520516000 592767281 379384102 761169108 885874534 328795795 381288748 443874691 941485099 929546315 384443108 252971333 836121877 330594596 643548812 227015707 330736814 764521357 644767298 333180454 792751598 105840794 145811218 648879796 735794485 567756047 100714986 280822068 224430914 161310799 21704359 701542980 272183880 110384491 606598406 87787174 347554008 896260122 697444786 492201545 190028530 569262524 318051647 718395194 242273017 547809369 494070563 77790393 621279932 940078495 985660606 387007014 813108848 517729764 449691741 472700430 777036211 621752617 866852399 25876774 6250633 330391573 186728270 900159815 82641500 74819318 721895100 607724148 503031560 27196614 206252128 787924441 545100742 376570402 855515151 432487625 988378685 622946897 793255036 932555711 670908792 453023813 880865871 195847008 885886705 175524240 461478671 861375348 177614206 410355575 672585258 926649330 48177771 303090142 596196861 55960050 112452193 310806100 574117065 175772858 221007481 132572437 556211636 586559668 394534186 608715768 267555797 567664243 413053280 936651146 460173598 29522352 838019941 258725371 914697078 762333269 859952623 63958047 653378980 263186788 467551514 782675062 840212059 482898457 75503468 617110571 245847346 798304459 49045717 370151431 751241131 888438781 130836389 175307140 470447662 226401625 771528604 973503938 107226384 305208503 733685984 127921801 593890183 629276431 305607423 951099205 630378165 674298243 897333738 377992209 827740323 182876769 934142212 697751723 807353155 306683419 195777037 372254073 719749485 719539277 722515508 372895370 136668644 420347577 340820241 491650711 963528272 461097546 312245151 804457982 33033283 344770069 699828544 806285256 128832566 323387476 151695558 347967139 898045576 264593258 980008294 142616548 187759751 23084263 93545916 323780751 951580000 721621623 605801676 107664456 929761583 344335096 94092037 284764255 455941620 221721966 190878010 524845260 403755161 474309636 835586477 843099949 12885996 247819022 62463230 967141322 913166762 614151174 131448639 180081297 644614517 278614671 670994144 4369946 70429650 96613750 331439043 975542438 136646455 439586732 642418217 576644891 674766585 956195150 243728834 727318537 564560475 109973663 1852069 454583460 332856198 202013961 252589130 520437711 845608588 497914912 880589979 273667855 573276263 345826976 634011876 64571794 601720822 740662125 130621657 69287732 277568773 87045777 795837846 721333105 637421376 903894589 612130468 465122417 566909767 356798927 138655472 106549763 204695446 289436362 968883148 573944478 764496795 518344664 662948342 776635489 26239139 284352462 508126358 561658388 990151400 903554217 366092342 395815975 168141967 26392198 395254222 912567728 471005341 169459380 427614138 811801454 57021443 506685733 521314497 753386696 413090973 260469499 909286667 991874769 929366058 674484849 829376307 856474938 485453142 897430259 688300850 879095655 776135344 943257241 520555377 22010719 236171187 333940377 918935483 66714319 255380412 15725145 106125381 830482959 422267674 363476068 361912493 59695901 229768186 295503215 723849464 616549028 932094328 776006480 519246485 966334705 204715156 827927568 196567383 533195003 435463992 869485273 257213050 48084320 989614386 829835003 773240745 164718955 611301184 666606836 12601834 781675526 420332035 296965991 117671609 888324303 796744446 802838047 81295597 232549631 119007144 471852302 473583057 337939073 483768410 549868880 360964621 95087458 39840085 83168298 676718264 519861341 286801856 282856966 427207763 551436491 832904877 849845624 777303999 773291193 627189782 510232633 912313163 646224978 911826909 188931119 16374186 400384113 835416267 718437986 524587773 827430293 551358862 230973961 31116742 976355041 797319108 448078205 135695858 293202216 463083 932715329 95116763 714687969 734633839 408178433 110036793 679644200 762202014 593062032 668448821 925093833 747779762 788065514 191248473 911143472 301966799 503990576 786331547 929697143 57675516 787463089 490417499 572078938 93449770 825991902 195182939 751016002 491381812 669275219 68289736 738752575 780635609 152468432 112828219 216501254 865710274 612606020 295973295 671855609 641138820 372451010 91432328 830052124 891036567 833522052 629258132 12192291 333483096 163141871 313038090 899691614 843641876 248092298 228428935 228898516 586093052 376088590 812583181 228218663 380198442 927066706 39381772 586487977 992237724 929905755 518972761 88878417 10308670 84033107 57482288 70902458 28201443 499224718 70360635 829018930 216874303 532751498 124515710 222099109 152172022 247375335 516261497 599955368 826332818 486636399 140185344 637825662 580828036 497126936 975702367 478218767 364591143 532956157 387085119 991913188 790909367 874778976 371134135 992267837 250740320 494164397 122088258 30125808 48053814 102988406 513220811 921825931 444764207 782986875 502741144 713145915 372398381 462117529 541397605 271217110 273908985 582501597 30843208 287997663 535450949 760202620 534572239 480033657 819479720 27919824 811110878 717458804 773116329 440761183 137893842 115946314 662271403 622426321 808880995 255325464 925099520 574610681 170780089 205843878 337387237 416075732 767502689 957870434 759647352 568535940 426817358 500089703 543334852 196941143 360826336 823141998 879652795 721168061 845156317 447029732 463767091 867322448 545361262 803698391 751824623 376333528 657245485 119901435 510980249 340503103 889706258 475504563 884932545 546039445 992262022 534813955 947714530 842725656 41107542 622060701 76995163 750340909 333498296 872897753 161012598 227360089 127485767 560790963 779396454 270730836 398905097 44943314 376067907 500835323 320176749 255979402 596326925 774644301 880226628 868493263 437438895 215158902 435293393 322441535 860855801 16848332 64044723 407524643 207213989 568982216 604908541 973256298 677282644 391890957 471806496 262854316 477400208 964539751 915816444 520441129 94100681 762506442 154063060 706304964 398176344 276385103 854616409 76616721 715343232 324325436 628375706 810753605 881753963 393357819 927730458 550150206 572188454 340965150 874071487 416647812 938834606 202338147 897434321 827082570 90150885 507372201 21366023 830689123 887463310 408292352 431541886 179876688 10237027 94643865 231501247 357054518 779005942 182309071 471017139 480855273 36665293 311149860 728115633 735135965 639037004 364754248 266260086 429071151 782442442 632503563 673552167 5748139 604881279 992312167 249184593 344729020 233388171 318833536 677014250 965024636 3812597 156212642 900406096 233968810 650825906 107238466 599737414 51539886 96576666 591635705 746054908 478946964 921410925 27628936 188551940 899417622 733674711 396696289 199441758 681108627 328540774 874233872 438874991 229655827 363413654 471681877 6402563 437550656 89456582 792932624 110404175 860888441 359523650 665105617 331898096 54525368 125124152 743523396 39241454 351444134 794388165 651414093 652861108 743538067 174681829 284151270 256290582 934305396 995000199 797159746 420438615 365227754 505523576 934437552 322798868 232190779 524434546 906684334 858817376 995700056 887600155 890246108 596412849 830990806 541223157 962881545 639258591 403901176 269788532 367716645 525844019 787827616 712655093 748596554 547721306 618649186 237328564 940322497 590223464 685901941 851110109 739615985 559875547 823654578 209358209 363841388 389181592 193317032 293864854 824657139 62832623 433433986 441721346 624785507 772104592 914363160 677662863 981398987 421723804 427542763 530744553 195572572 428250775 140639006 434535338 339559540 307404399 100654470 447892824 934623381 830078329 287130263 875297113 15597159 891261552 265861742 129725694 161187522 872252540 611934678 334285953 757700001 97106474 357936958 29990402 730285347 634040943 166547389 889480334 54113943 344854438 877967375 830879506 332943727 939652760 861593502 685697896 676308550 125716339 226313594 564872020 726258656 410227911 850456923 830264189 309680683 132815507 445408413 743975027 352021811 19794750 548620617 405247923 99928121 368995477 222194445 224127643 878499998 78210765 699387970 552714612 301375214 464512384 66369254 753522803 347924957 664217787 974631842 493769389 725489988 705056227 180280515 937396005 234436906 64975058 859891010 801479111 272628918 445462213 203874748 179410015 304147263 46018911 238920060 926137257 249148733 438981036 296315247 379148359 398831444 517400872 370123563 429767105 278703953 715643562 16070640 21161865 135571236 230695289 716056998 286290422 703563758 99397187 737362399 468570446 310345453 627298845 13450442 715606198 175425676 771253125 68136016 315697473 277173603 83199324 278847731 65714407 355660586 585520629 949503203 391229834 314631620 41186819 993248500 44734453 640486973 85624224 785916844 727124183 441840073 107865942 696202799 388812233 947613377 945893651 99780939 645448269 517649322 342220070 916772473 972529869 713943087 142899027 413470423 710418840 85658659 412945851 925755435 583379435 725140099 350936043 470749161 79889637 834759279 730804699 737917986 591085711 209484852 483870439 352592538 535007963 261004357 828282068 261172665 825492128 250448447 660688079 337305994 393919139 533050850 603169903 231978695 781791882 360479258 332840110 671856078 988026857 189503487 369638133 734837158 212170551 104035781 836017166 962712832 173036244 96421332 881519411 779113779 250642958 450380212 226721018 332919100 360480789 384582941 934497391 163102404 635195647 358738663 437309435 954269469 525658830 315765780 148750965 14559801 935320173 291054802 372773914 823803832 367382189 318817139 191758223 349627877 327073095 964075378 686101731 790625964 931394012 489798259 638070921 476016293 368844020 157571904 73978460 818856465 770780421 962672334 920158889 430493141 213824866 441558329 292736789 632197760 295657809 851870912 247447994 251217739 146878710 245544659 660992533 987480852 192302697 671878403 784619528 587737956 740208798 800598027 877084901 565665128 523418235 959806668 735561821 644118266 993643459 70315865 256412046 907880854 525808172 851919836 390482432 231280998 507790924 446927798 529202846 315344950 479156392 99609193 574701757 655017602 881148584 545352863 32681244 821052516 984882588 911789357 251124959 542888616 767159741 961806860 766889106 555578299 757286702 720589155 625422126 403097267 62825718 51925112 20892943 208374353 408783369 935495874 590266615 371381243 488009790 659848924 967039252 914161344 26814808 866292106 478072831 146877530 364452862 342521524 459315634 380278823 868475077 453928048 896742549 581155372 942591779 650627577 696466546 748510749 108126841 578365105 785143168 147317836 630482193 631720741 987509596 459493562 917079838 182744069 244681227 767893521 475042230 380308271 776494330 28075676 923502559 423105191 22134272 698035030 434925949 649456020 66507864 422327514 831894117 791327056 467689896 799729268 978124621 323694673 148835582 71712017 959488728 43048250 556806609 285250120 965720723 206207451 817332473 657507161 21465064 887813153 167734207 679173162 789946164 399084845 211909327 2676811 933846714 70473789 17413951 200514034 130235297 37263296 733987724 132590338 879355 444363337 236362907 15360510 815718078 251243923 489901243 144712472 291922129 305184126 514057886 70154022 979212792 260450075 985620066 926061736 868099816 700955545 252803217 635416260 851345722 338877779 813550352 171015245 130521708 715479247 52349500 543687348 541650669 532922294 73397711 448697117 582610695 505169884 122028525 544581453 137200119 698840126 910233124 671874226 161558239 104433660 782115946 267195240 710880198 9440612 452596252 810338093 208165024 614987496 853031680 270716004 934737479 117176357 770883139 939136287 808503670 55510746 852730232 310899734 739528668 442026487 308446623 517084585 407420680 505985164 663548956 959828700 677975414 954574548 931789757 951546464 639083908 376898359 896152503 438496652 187595900 699927866 406530213 279871840 380033934 228909205 668193678 882746245 101740760 718541344 984586979 570889028 375223895 485293792 804170610 877118620 956994292 112512257 973419391 878079783 533771650 735493845 810462123 229755180 954699195 42600407 181877763 880526494 411840319 426102698 597644543 36270099 10286742 590434586 52005499 991696329 126988853 323061531 298046653 275980966 578577264 148880838 680226673 629297983 423604108 712583011 101556909 237224642 766709938 419638615 882821612 540754968 787842802 266844473 796289814 976683202 139681607 380316099 400319864 963658737 379009168 106914264 395392712 589339004 292087449 445006724 244546081 111168738 621838 382181116 808621832 370466893 212878479 434915225 500392557 224777096 993111450 753794268 832216482 561042190 713786263 347721079 588530024 668454651 901202393 602715191 729548003 826024473 209790104 760373529 952204444 706385621 135332345 417754689 821028238 936088137 283719936 790741243 111066644 868574000 629555361 840944823 444357875 193898740 145626293 540176405 447984728 735786663 681957628 838020562 463127257 522960890 932742690 256078304 462141555 25439312 370081975 904288846 78077835 343158706 749438515 379650136 87225327 876518348 145956855 637205349 591129045 150663926 684323406 723959289 691411158 828292911 920998248 629000396 694834940 852255520 647899744 564542907 128096178 984744726 708083767 45938370 55754446 757550091 750292180 412564244 439559564 930885275 360727051 836388865 897304981 935398927 599933073 739916804 338839537 995316565 480551693 341346752 21507606 797899783 244858115 196972802 228303591 605074273 931451369 164339133 198827939 852375372 789803026 749730059 131488506 432014168 322971078 303314479 373320704 448615354 922362413 274577813 894234933 865196629 631048789 587346382 446238075 525885869 92727863 237505691 605863200 390151153 86681529 12807129 339070170 666709497 920154526 983038614 932403398 94039108 125503132 347555848 429326696 529971709 708365900 359137924 766993584 450342892 31406639 907207826 15189747 253892496 488165034 538101725 983737323 453243907 584830484 181441079 77965247 486566668 388121507 434879643 873091069 14308895 786020474 71039533 177445019 46100815 571733153 744979255 260205810 635294812 189295624 497981997 775333069 743996847 758839692 943663786 295246166 396221269 814261739 821087859 774533667 545528838 824335056 936344179 878834735 834454562 413299658 500893624 31621858 522971825 719675734 927810693 119048458 340874335 317880275 615163193 217566683 429330054 209344648 628348256 478139886 376494116 627970219 935754924 272070224 84737763 539463763 619565050 309146985 279324687 769486207 152834636 941422609 843371424 981368091 558137808 343273602 643039029 280114680 748936918 523844452 865741590 602131919 298149594 610595012 513034034 762327105 679298945 644140311 879406625 253598168 291774357 30847035 835464225 369138436 159310342 849711216 387072538 64737054 456901365 79412588 882072731 365900137 396517538 833448767 667358426 477437455 906903672 113488740 186161595 382483740 168422414 23106502 937257150 874872207 282615834 877841327 446179096 185694791 83864451 945894101 232803999 379486477 349496402 278235731 993405649 270836626 936933051 402238384 180812756 759171184 856813595 445407196 195862906 122464811 863080946 874645032 479401531 843939367 249176301 944801108 829093939 866791351 209305056 960345732 11359274 801382164 704478917 259149894 658522257 355388003 719261118 212375439 264894078 928757417 510161435 639589051 348039856 224553176 2768714 89511569 960826001 480818891 277728747 378838331 824165677 721369153 411754173 129121619 334819899 210202085 925739435 584074965 750382876 697797704 594937549 180156451 130376663 452249314 400101720 128223500 385250842 682756374 640303286 623553991 205194817 699212074 22372207 112473585 525327429 523365204 970630709 293422988 419232462 315844267 196548324 955041801 338305071 690313262 827397504 759924029 647365982 947559882 516382005 85275744 947064568 475736399 338037586 935840031 555736646 345471348 93382232 555710593 627289656 208145119 827135209 827070974 941081189 983162133 100921037 488262260 874348554 284652934 9810937 991380777 206045968 391168656 721261448 648204485 190035207 383927413 666391231 610871394 317889570 487270998 112757254 1160316 780724294 556798285 829844981 217967609 304166905 647460175 113188931 649885476 5131625 656473662 631598804 107267764 383289707 362753253 272921268 328423112 698194563 889651697 737798422 613047778 740142034 118270207 923034711 672663536 216176686 714257295 773799672 788044105 510526733 390607370 144488613 290894758 901370249 277281986 594879281 428856115 859515758 543989998 683893143 685558646 589454890 428311476 526100218 733196394 170960341 59071768 295446950 31186283 487872045 182882577 45833232 650933818 100679065 616852594 120100304 404658696 102851114 895074304 844837037 717964909 110088854 519598434 999716749 449367136 35739965 616697901 640419206 995554123 406455077 392112343 876013271 225723895 162006271 317693888 452336092 378932636 185109536 48929847 499538980 548397786 445768074 305819494 182657381 819633328 707286242 150564205 119467637 897475472 790701433 391393864 945931354 661921871 229778757 435845859 991910718 205697319 328152036 109494799 840358776 608026305 613715870 191407491 525845630 820202278 559950438 464034021 719015927 587303630 694750927 632117944 700044973 812275609 937700123 773690226 440250771 917702086 641751085 316570733 420358339 41987847 56618137 453790439 985812098 294443375 809285011 611318537 572474941 124105341 592217596 350270182 5401475 935805972 640607581 954045302 395216659 967620996 235001568 237757341 149630925 544801406 481391200 320119075 777621438 279306789 5218141 869839287 626559258 342733306 58847226 263128562 844895037 10386156 520057356 586435163 394467750 775654990 230064646 428265044 484342020 130351840 118997001 935622965 16519209 356698056 584616155 187199793 633733905 255136143 235021549 374208110 891572702 242811694 73754453 50535410 788643805 531734785 760414929 862346929 361366143 556106700 958138571 241021056 513465440 710180799 476051537 853339943 266395716 470459757 993890586 967892808 395808278 141845205 958837382 366491512 616748522 31931992 21505692 584571698 704442107 786829259 87976714 368765396 823337128 862663003 801750058 369263529 439641986 799481002 826812921 428518112 339912253 318779324 213093150 159782037 3855535 173703169 830999528 786586569 819639517 231777609 879867219 373031523 716363762 647421653 902486006 892364852 52356421 825009737 284210464 975220729 669217613 248114867 151074237 257923665 265114287 538840455 332808547 932356804 5290804 918357923 984571730 141748934 958379732 153022028 894545267 315988654 448356007 674346545 263514963 510576320 306717167 379160676 723281194 974575138 56683802 455831396 69326555 954466279 134884027 986994201 318373095 727652359 854989450 274122 454667646 178327652 853297262 330956849 944882557 358588360 362654066 306357867 70529374 565516004 966489287 650512890 928907851 394814289 551302856 426716366 592257296 251356814 475783676 730748222 918530344 614981385 286705677 303870211 660421551 908222223 724418763 945464389 595473006 908645339 425682227 967118481 601276631 937857678 921459817 588951514 733170427 153429299 418656441 961917312 354049693 351265721 335230612 194395975 603629093 376065272 846739351 691707997 188064673 241838516 930788740 64249942 892463046 814764950 735297865 326467633 935725815 145871406 939606517 529762129 896062010 596960247 871580614 169714821 120748606 121184591 147681566 415579904 733374043 508272002 796639626 197071717 746825614 740343747 257147581 845258931 812326784 863571494 445709199 386278744 748837763 870145200 93082886 477625900 135751560 945366603 928649550 244477291 877637938 701441988 441740987 851212731 954419912 560686294 860557506 789905703 807695418 593690406 683353871 499804710 987717149 876720443 302998119 946369174 989468850 604644739 804073407 425055418 880819425 534730586 724184883 140323906 442312503 554704387 879364 479168321 754909931 117248420 630271648 656133941 9432799 11497040 674014617 635938306 390645912 693579518 655135914 288943864 516846406 945673365 489855672 709178315 237049539 563818199 421815757 343018902 243849 286304634 290166810 322629602 285590722 397595926 571691774 203809691 222676797 91780650 301873658 830549524 236081779 760703012 456756666 563493900 397463167 919013971 38041363 55989418 454730283 611069165 847112700 339345017 172647398 436460057 649353884 466741359 110382283 779568858 203617340 715380966 262614929 618149416 97465938 506223272 595537830 2424790 545654135 976092130 892890134 322345386 381430381 154535718 625269403 874925131 340782882 652728948 507868817 537796682 379254184 42844721 910444032 775946531 803859258 143592487 242264730 620604978 690316093 408795278 144829620 732858308 389103673 491839748 572882509 996596237 478228708 971387278 383242765 955725343 242648857 882923928 528866882 629353216 145207513 319767798 312322535 349385881 885664595 371337449 382622101 493463738 335497174 659388180 698070168 985917469 400819937 174957700 904852447 128971109 107418900 114626735 673532672 631635478 208412223 860418163 319276347 748902823 281957969 682960658 555697782 414453358 234605668 433330493 954873921 393729197 100028865 916807686 532629203 832965004 259509964 911077357 194625549 527538209 844398624 641479639 139755123 436913758 898966386 867106321 126541366 296167467 398737576 334013773 448473646 516512335 174352590 631715026 568241882 246119800 377802519 420997042 234563425 519606083 676282332 158994255 326494866 292462385 92206496 544390356 9511908 973097384 717590034 462921217 811847287 91261692 917978884 278526200 170199057 803592809 278393710 657417544 619711008 322456328 156275321 985423082 77395648 793639661 561980011 200166710 962706863 862399998 10680761 263589365 459569999 699386655 211338748 239977040 354743221 562673417 551444733 665409505 204634006 127011688 637201826 127686561 724207443 716475344 612541187 820372727 742964719 861570231 915704662 401204915 146049566 890027647 99252993 414529541 216350516 245163633 711312271 853776271 701688371 186479550 944396469 625603155 526155456 233578113 403842889 995762366 651917866 891767993 440045141 112202667 664809578 281189712 761639423 924844369 398605600 621484313 132891803 843253845 82256017 155728844 144789414 469262537 735260845 865751816 679257797 924221214 635717130 684731226 817552574 917405493 536200939 721552179 437823115 797853520 530085939 6824425 341846080 138301727 12955765 352779455 553162788 142607027 789154530 560760287 693324194 393387404 294410850 871943512 192095310 917006738 16924279 745080871 877857506 711969294 992024143 896365866 641090114 450096822 774612932 946858541 494128762 945048234 857317461 65736927 546800571 725516140 385406504 512308696 867044192 234705386 13459215 600033693 369482481 265819002 625125757 991064979 619256595 66169050 87709077 744475408 495634076 384101165 304549405 181726283 93915016 273299202 662389123 732174179 827982330 650279247 477299936 811796324 321556798 28503660 686052083 513423678 540510919 122175783 927982881 635160268 832439596 800620452 208820861 148279759 653973815 669351553 307834554 695515374 32217292 424484789 869674811 369923773 901093380 364615079 243844102 32431282 429670427 848386597 148956363 132884016 884038255 915663202 383677406 846042498 61904782 471166207 578539328 505988311 736070187 493496574 733382043 437987144 328989731 852412623 472815933 487901656 595115895 752320069 875399448 866266737 527634257 163303071 887563220 227751648 272335113 764222846 489253555 200487395 381463317 927802869 440023203 529069078 935935004 903820151 419541311 296194310 486054376 719125217 65146306 49369127 672657517 272358774 112847384 761401293 783600834 519950822 19870670 941933112 600459313 495160137 139413275 855395992 743816993 211236887 364029919 976076795 319495718 700399413 334634657 965809238 20925179 241903349 263787919 710746514 929598852 772529672 807137665 420866675 149747917 982502543 540588790 560671658 643608071 273682700 38745881 560321749 147499919 378868590 919623858 323002225 181679078 31190025 866946878 713534438 589977274 169618588 590948829 137101963 663155167 872272203 54525521 176013460 140555850 707743139 737323020 475902756 29258535 753735579 252923175 193512005 701443259 965594764 197461854 821452774 256506748 758150208 529520410 516550372 341916419 435137506 629564010 110920700 19496726 345940745 883337734 679060701 616729759 2859185 865336397 579462416 772863664 403803198 711481925 910827798 128165255 382905470 201092252 630607180 775489924 494643881 149150894 722942205 124778549 891363672 816939895 554965337 450661707 188640147 859560094 183155323 149093282 915595718 852491637 138867297 193408576 981273289 565730286 130698744 122370380 714631893 732912558 902044686 564005660 584542352 666052859 467074656 22071595 331077131 787470784 529971340 832844570 205663158 41803417 849469212 179869113 580153714 46982594 630726787 18034165 342151557 789271590 696462870 424759790 862656921 767544912 358786332 561157092 551826884 371880314 525052859 484213063 810160518 176196740 14862850 554472356 24346304 882786035 487372527 457845691 879262914 275463159 323521888 998151278 307901250 123864934 672993569 555393991 392842077 19190976 151245281 693014522 138541716 477588529 222939706 651379811 844385754 465546112 461293741 700136068 810112641 368071977 347080354 354359050 250800967 698400589 465637741 792025286 681567569 701413036 804414278 900365749 668368171 159667134 278014029 470914554 71624142 769531797 459794316 458748640 261354389 435981043 446593015 319639001 739511619 742168893 478377826 410946947 630547208 942918528 269286804 590248095 74358139 714507642 981349170 182953241 168501397 269277319 778426574 690394371 789702335 753877674 857104355 901211034 304528322 834603928 85181905 536791105 216438231 680683942 911182561 218248066 30717083 470975703 669726530 243864594 989254160 190937546 786686995 796640205 213331366 747028180 278284370 920186034 751868210 384257261 829442022 623061489 70780915 670224051 91738791 207038682 335696266 713545578 579138886 873336808 819406087 163238406 471987816 121524162 536811487 220138012 518633368 363798065 919839471 784763114 923614791 90921255 824088954 862222939 449336522 856380352 950707762 248498684 438126439 302985537 197135914 839680515 322806595 701101076 41457630 879435344 356460403 760584906 665130549 132666732 770841070 165586211 17247610 382911367 308302489 214097662 883082341 357161330 733910585 669289833 595093264 3172788 434443646 206675863 590480900 907070318 441396743 214480864 838434604 197062004 226009425 501853386 505450719 219568442 180864966 755300353 947752664 908411363 883591608 5435223 871036732 31916850 700305504 327883721 731209629 371360921 177990367 459834485 107555305 612635181 764390206 511669164 378922883 625467311 510037871 875175902 47622188 969056133 14189642 945470635 444305174 424139713 528489106 136238543 981145042 368391447 130402799 616405050 123386208 626415591 853707762 852872447 849199396 519714104 735555863 498170966 597318637 864191421 567043002 382593191 475776236 102210248 832676138 566530426 993812674 173006172 812481685 189392515 203082868 16344351 970101781 295160991 458554991 977465182 60429226 887459533 841711495 199410194 28111422 322854205 572668920 415875804 751992485 943169086 158526571 678234115 694404757 253634896 288822507 101721460 534080430 579851283 260689390 613137351 190956668 334117202 631079248 135714109 886274417 129833472 277116250 571757753 534595044 745500733 810102709 877004495 190652185 713369671 254895735 437375155 937590069 433153929 272771359 588901702 690916941 646491547 484292497 314394126 915915606 189563186 44003097 314925631 337788729 795158841 915916655 517530024 512287671 685173173 885871022 331627471 851292293 865552603 157482844 634325207 761799740 143583237 445028201 246566032 510630749 586679480 893070630 250997621 571575122 42664864 921322835 20710307 653353322 187321232 767868179 97152479 812107234 832949891 899289844 692856987 958565593 290078360 530096620 38452971 823608662 998852897 446021210 882601363 612144207 991543693 803947264 571590134 566193561 128365177 173453325 408371494 519433464 296543911 581351956 213795034 970040085 683785218 326397205 657409137 864343169 394074273 442780533 775797745 959616690 177049019 535872254 557939464 995318030 329716404 347851755 553049104 807535069 788138520 484427221 834178315 298961742 219614363 503032000 346669209 98068604 459743766 228986910 990564623 461776491 489383566 180697536 547584865 171383039 423191345 553901286 8716336 96588298 562313036 832915765 20774596 768008267 786899807 943967160 754618891 788205659 173836808 105748454 659445146 226780107 65821467 369879196 152383669 147142661 857139331 121883937 214741311 196438888 194878303 924573214 345369289 323618355 99570419 916335788 744679819 782072718 962090919 978910534 316206436 721644685 46472209 437667538 177680603 215597862 865688043 678258591 453753884 432930110 841677594 524912737 679061509 222531358 281455783 540920116 143524113 669668082 127920070 94555295 469512807 292951769 935926994 301427852 9424086 659935952 599357008 152410964 860470743 856943941 704224745 872361653 16791688 584259717 581337457 640789713 821543602 796159949 597380069 53085492 212541891 256304184 63900261 2828761 573774802 944321494 177858365 153409560 728493727 505832598 739541730 124212155 7151760 594548048 77783793 155787754 672711094 361361094 151164198 308220988 574038727 397428387 236059252 612056497 959169569 912860788 304037866 246828973 120066766 293915830 474293703 719343354 996168573 759125963 136897640 48714961 188792707 201688822 426450783 395462605 234361313 103042929 184031835 190503668 494869053 49750862 556258872 368159924 337278951 991437971 135908346 72166884 912778967 774470182 32924618 768911037 357822637 437026523 147827200 649132007 35967405 271086185 419811861 557173100 900858310 361108080 375186856 577307591 429251477 546881407 315053450 17521872 750016852 586636289 667968173 111952590 675417581 427659091 554082602 19562353 237969900 651788468 197722439 542161609 813456522 734463569 711136365 800327255 919975081 635738167 450998320 335264766 43047884 822678368 796266317 112157455 383744292 465494190 55208099 658786106 713086090 210294251 192195137 524666784 715914106 231683785 450526811 162572743 273576478 448155103 200884294 750898840 937878082 400710062 949139855 806230380 423827040 894471072 814586584 3887359 760428697 534276361 721565947 845911670 846166446 573520414 447198190 131284063 965718036 792684802 717974487 516083117 297370849 688325822 766817283 515653312 448423123 961907271 583444960 383862364 451280722 139296110 958621710 88307887 832985965 259046396 317427024 222737486 265677530 976232089 244609422 181486902 806917371 495092688 977708255 250168778 529349076 204977443 614863483 38305756 542639896 686213100 903762887 346225054 351250203 270228603 580047693 98506927 73360863 561160443 901381058 222509843 786407945 15723655 831041281 293943348 65628137 408864803 921042189 362850286 958562932 911516597 297856782 973855610 924938318 882151696 720670300 595848830 364363965 370645231 303068018 407326216 167754412 83619823 92012784 615003022 874339256 485744538 806235810 398268394 98545436 183508837 30350463 332018276 244652737 439067558 428533149 140552617 177983543 105585310 2890051 459472077 99311026 687156602 346560986 253555790 864839447 471863110 485200886 961771282 938632423 750623745 284163924 30220132 531606869 134852999 319412692 727683068 416828727 993819298 755739781 430853879 404566284 535472135 427174549 490583766 180289021 383277386 899193445 142196621 789317849 450642418 339475572 840224619 945707794 250329701 215947889 200068144 485179344 549464819 954048555 519977475 275339988 251633880 252776609 309765743 46070158 133978932 578066163 925662056 327497752 677411856 653098862 912412238 732098095 853409118 280349830 842024167 996507707 967983095 673104854 469533277 675491402 844459675 263649569 585488967 888949526 843221749 944952657 492720035 669688572 519137942 776871289 608221651 589558531 810006518 683058134 776294310 13611997 553672569 52751564 748069973 457868509 253810788 272375268 154273400 149901060 917053933 57203923 13727510 558369788 503111721 423524978 690018973 156991248 134800154 92281798 923111393 126165051 846820269 381778682 755785505 102287643 928974510 484662370 941929217 190211572 49179100 790494584 842686351 100298939 550912723 181325280 45030207 195973122 270027807 925321828 630058991 171233292 168493617 965460472 679042530 971523007 539880032 969947832 122496203 850601384 662688241 400291046 635159739 520957698 767889162 257037296 611595567 471484075 932236735 191168358 306748429 163893801 795248904 709733893 770250402 148337836 230430660 59800238 792087719 172633612 880932801 314869614 781139762 205900742 64354476 341614200 123569102 955103749 977788704 11221291 368287081 155963540 430073759 708640515 882895698 759182828 522066320 679003311 206091339 777198126 972787271 43909893 758458233 58690593 954390011 117743099 651790182 374581809 898233549 565126582 372829453 855037302 96819144 594710914 765740742 572115637 403000287 100445397 598440792 402307916 506366693 197314629 276803826 147065427 545543328 686952601 3395624 606617467 521141691 683984826 848856310 275724836 406016706 776743868 719560130 717740635 56758066 681883610 679094874 397317574 328065644 47705977 741887730 481087685 351543479 621689122 970937641 550531410 399208007 15828363 215340291 989514263 569685552 412319371 404339693 98852707 463399803 212405801 885293501 454602280 454823949 836132751 293410223 774509324 632615863 383280655 705855851 462611796 796144434 670130727 27477499 331104752 832049952 484298358 829302998 347468407 267723021 27432140 414961368 306610212 331940453 97943322 671570763 21278436 248295301 166791292 710319317 49104964 587267244 114082356 163416719 981751418 878462213 903452844 244686583 58589544 492319648 984882812 573669616 956989845 502465657 462413661 171466954 765361452 880862572 524249390 673401144 929001224 236925767 448766720 537592409 913644456 546719418 263949317 884748977 926751797 75770204 390232726 327626283 345248633 720052914 7694137 76897057 935815918 195770146 699861911 328677196 224535478 146394880 867720581 77719767 309601172 830273413 798971388 338192712 221067258 590464974 527918114 334637721 769582334 54087656 819272257 162273830 306137697 363720645 417835211 695901108 345147527 889631293 295877469 118148208 785004416 687753232 42942904 43745776 775192583 506869992 782288074 271184691 717914742 509660761 830476711 517243291 128933848 124564694 491762822 885454325 495112411 884011206 274254287 947134841 160461526 259706736 601820425 477537987 461607113 981618185 289798635 996448983 82201179 368606883 248488268 960736293 824550107 529093445 528250930 635569022 982595134 629293268 838359754 6397733 227040296 256493604 569977189 844638141 255258847 506419440 984359292 614400847 820527182 580565207 261322935 825332310 761818385 790210657 367564764 388983981 415454565 895160832 434756580 870610073 206799922 950719759 862350566 190145990 99107334 780683470 897154344 736939597 447128091 745954663 759545363 638385063 109413199 890096360 588704571 230247356 366121766 679002192 470407517 16820184 489229013 92715642 631140184 723745202 911027246 323163446 810334524 249419876 270699698 887620142 143139640 632892792 525075083 903242754 480092844 924160470 30006662 313831727 413486871 327305432 885524505 387876126 873961255 26013495 135727204 659012387 122161580 731697179 747527985 795941239 507749030 128664081 511808236 698175032 20968500 854124045 973098668 348861554 714601381 632068716 214976309 769828629 78426216 548380662 228689384 551435260 387284762 370863831 476054486 332265191 647254657 269459874 944934586 742623358 860730501 925549143 186558959 637558100 675482939 869844313 809056127 23309026 253487578 106949750 312577815 797203083 449875916 544114662 721246990 130463380 410064793 100761922 99111783 444043056 429296115 351708307 380092615 765476732 3821749 457376068 491228538 708499572 960786917 634070315 816970364 403821061 925551278 786457987 237731948 930659836 99654753 116119541 107214990 180817686 167599483 883214732 147112404 744014323 867532447 786226110 633992149 990718493 930651030 661683560 664118732 998821125 927104086 399386575 277272998 832477443 547752443 826476960 484638960 29761112 972560325 457135088 405884387 992013360 260688416 505029950 575525979 356271515 371260322 539890288 779216609 103729296 491134981 51067855 997368229 903244018 591540010 646093333 868674427 80177549 587477535 256053082 380096740 555626252 175777300 774813224 932100363 651535 615640425 606046314 948097722 6659347 986997407 762900599 406019435 324520323 743311710 137951754 411139645 448366767 624397695 215351113 725114103 502197201 748871160 738677184 411337991 93265928 697447920 149207913 108439684 592506211 548193201 729501596 223994673 425194444 561722287 632517664 833979761 832808483 508628866 213768229 738709334 488095525 625222384 264078651 809524631 864228987 735024870 464898659 457763472 888959416 854222964 838760192 712849741 284899671 335079894 47091682 925727867 740299700 734480753 273090109 943694193 415203359 910386382 626366124 206975790 790220227 603036066 734325304 218199387 960521404 961658054 138621771 932969797 439669004 115041601 953609916 261315810 832210330 570208568 356193995 924981718 804556602 347770118 686100502 630920807 737181093 378931745 901640880 396130947 453396089 906445869 540558607 569346751 94517824 602386934 217192714 721913693 94932336 207988337 902056172 740093252 177296220 568946100 476225123 881286404 689225546 292600840 562634623 390822354 763189600 375750359 423117247 913851025 714923955 854799281 98648842 813348034 346016569 829820245 621924014 731240859 578333906 978493603 853121630 408510193 123415626 263867305 125211960 713144385 476495186 847376024 153899712 722300850 102361733 842818766 117379046 13874966 574764126 792949708 855782398 743944421 51091535 917000766 74914245 953035068 49459104 353366775 752173663 40169698 197186195 850322931 342943323 731619400 612049730 105198933 285204141 848907394 789004987 287349863 203211699 192668244 304327661 630123677 436398643 28999971 124982963 461446290 304499289 629819388 319971019 561180427 708316347 795112602 404207328 692001264 148904279 174850139 167372166 766306135 531481233 985039684 220580914 544799866 392286261 384605958 317230664 108223166 315553915 674653176 901582353 601166509 268466429 508430877 811574716 86660858 483313092 215524884 976985703 615996288 823172667 27793972 352514317 210810946 989232184 900333424 927334811 253783149 559550200 148760683 364577761 489689427 581467680 614623847 687680155 381593455 885102780 151427159 774880359 7922020 863715398 294066130 869241038 997514494 102239639 102771734 246336324 804331058 345759731 569530635 76859425 698562072 274166282 634660414 879648165 418319349 290714355 338487787 451303163 215104565 197925673 127952876 702843187 369630568 818914191 895633103 495134281 920388941 389610612 334408890 893026840 146126277 39955089 12669580 927360880 507475930 762597373 229934275 540528384 540381381 290239809 451643522 155621472 259451099 746464330 234718876 305923348 310765730 250539372 944689287 414155648 982940102 279173734 375123299 175461373 186444825 525271901 925746934 854161852 724045460 251825115 223380656 184790498 540005983 681291736 778635434 35473019 590142914 614036659 343613088 381545845 970075954 870511150 768666365 785927081 914146377 811766646 547534282 659048409 208014539 740686372 462232006 478110126 650513314 843071795 627198283 308328122 505809890 889470470 320072035 894706550 918137799 991704431 312257211 289142340 95229364 113472161 537125547 395072621 904764725 241396791 176327731 943501087 995505145 985284409 260889337 841002103 722710752 724195347 49247309 668062837 612341485 851090330 344654887 782530562 974032968 71364111 150875174 945675761 832425798 6868496 499959440 572092920 921680229 795698099 435167061 298855354 8028741 145268583 765740300 325395394 870774449 819025160 824471031 785043071 625366429 979333858 96150265 2664779 895790882 716404893 820648098 68343143 330595208 997799504 136928299 42368253 722105401 630433145 418224242 539613724 929368263 476289019 92400896 943345600 436047340 787249954 643496707 850996425 441764494 500842154 798733907 83729153 351332535 394702762 489920109 823729686 396478104 191712170 829307769 651412135 863372176 367994775 254895433 400490800 314061089 285780674 211241040 208186140 374960116 874152945 891982514 247398847 633098465 787947073 188719922 223588174 916262878 165633602 994331202 176479725 54633234 143652588 812579576 540232869 643619782 998487706 884771860 263085668 39314289 36660240 265661693 984577289 530666153 83614076 700733123 344577102 709207602 49117557 164137243 996640996 973418491 909049846 440833380 850074456 211980308 157593959 611413417 791227683 939859899 386964371 273504662 297237926 339356241 669657775 418657666 387225390 329312355 376757337 261277041 16204264 81513120 982975636 117040132 622879984 198009579 491500243 536860046 139979077 487554879 681120999 204615429 100391122 866321100 29477388 385022729 809689446 491939557 967784426 964622049 105422783 289192451 434702222 255596411 688573049 50584267 422115437 712085617 845017887 886710025 882018660 168514302 13631778 644191919 32937400 228858125 123586271 795663575 688374806 614189101 230273680 499433671 57035669 879990418 766780262 322387686 268157617 941764641 817923181 835041743 931633229 160406874 542562208 478189365 449893050 977752178 315772129 122470142 461779629 391075903 310506743 183598136 364844095 1730879 536590996 814021140 192193018 196153496 814242643 875128045 110425032 314266908 979547317 460579654 763052546 495005763 679020320 924818636 425190499 600469801 334785257 963539795 701901070 71204760 200141128 976258512 100200340 689918204 45173599 228628335 233360361 416788849 724355892 564831347 845536105 506844849 974095037 510067540 619958235 588520231 865644238 772525487 688708715 538052832 311264813 316541763 958319791 738279574 656617602 434439420 245919138 768221350 834741596 521474032 626811054 293213719 54701367 483756121 222196893 746948504 882627699 507787926 897583781 144740997 678744153 127937080 856179553 484666839 886810651 526255857 847619544 978335033 386778576 569789338 468851323 604670455 122967421 319654712 335482393 508469771 833916424 444624376 420700402 875643156 947399239 186155561 928868268 49245528 449383916 208343368 699877970 169861833 63101087 665485050 935274333 682159098 232889571 301217801 620013222 321277743 6418735 566917991 530031734 582668618 116967128 569584433 667034744 482433247 885090597 944218026 780848322 723601699 970660918 404109372 945651921 61539572 263440934 771499133 849653385 25300957 285895144 797554981 965360441 328840970 80029278 559010584 508653718 759066197 254005588 636986466 456746941 771816249 476334203 931640 2770482 884459489 362028136 55537907 688596708 266367514 846554017 642894100 827221289 596462685 352140684 112247372 597878205 428506824 933577084 337381226 909095364 688625700 156220843 156888682 760791500 13083871 684543031 347304304 838239437 848526862 171335212 991653833 839303456 235672180 180678780 337460963 165097356 524822393 213975295 806323550 845369409 567131686 519987573 681434106 532212686 114317370 28337287 430284455 197688887 568791822 836344009 134191987 131605468 118260397 803065266 641808796 364549775 152966852 604171431 838793860 321897091 864776620 225841643 528959159 879588690 514935140 47378357 687521512 905544967 700938386 959623451 577494773 445694219 641738630 683351327 634753756 942237493 592700216 785485224 258983370 215492288 618946119 797116557 363618070 993813334 731036664 240402050 325952311 107007489 123104575 254632490 630125778 102771253 465461678 895517456 118203313 706695378 861516935 817327266 831780809 494363421 359974832 629899580 64798260 237262275 581517498 701242655 873083958 28953047 236471259 834447728 67905083 253046745 97221363 94556487 830620882 39678124 312197257 368794265 633323964 45073566 812201163 745084743 782729434 569164392 148670609 276742683 349529910 151856162 327660122 105238984 831866372 232389202 489408849 336145892 466460064 250982633 80972351 965820404 457836173 855894073 303744159 941058656 653999221 200237566 785266576 708863863 845812010 130723424 343377112 189336181 935227309 988324589 315087337 970744441 853981468 670295961 704917207 216133004 731200965 106446270 640103779 129646500 828806168 491553063 197355507 413265301 494700981 812669183 508252310 460358691 794684508 922851545 475909638 306417909 691086584 765417395 157583521 702583198 187193503 271143669 679510381 72172695 955276168 723431275 885967128 621149760 672298521 976877127 965596926 892855270 684677086 75269163 990783514 744514231 702538376 231194139 143596566 222442186 290848501 605941889 953295424 659325478 445078055 993857591 733240462 657182129 297417286 933794678 233097890 715001402 871753130 785736422 820459203 552575873 3574732 678425748 567190237 39569185 407465552 597967605 903031177 832983972 292663811 997964263 263823111 769448830 770935763 613439402 921520190 946599942 315109856 156356596 387789757 232641664 864563307 470803157 612210363 603090195 316680417 886751177 565310488 141996494 248872147 285714105 156767067 445470640 942424829 901868782 804735922 21270423 717517379 631414816 731749623 79626058 733495984 671512431 994053284 840203902 940721273 466178139 768434919 492537802 111053557 472190420 212873612 564045745 455655850 980063535 84111625 541359515 384231237 380664617 602462590 683775194 990066325 457659111 279564213 293823398 381342102 612637942 654869531 325240867 488567408 648669772 834690501 876777814 700459113 38061382 402970998 837419570 215460087 98511531 747439251 274337940 617498293 508370594 680306220 546618424 737316452 850670025 430660090 941908938 177974771 146819607 66664280 333689307 752127344 999209461 649324114 751640547 483095068 260435245 341499541 580910404 260974423 388360180 98579063 681556041 192899501 481788908 829701113 601559841 216489425 536543511 186600899 630121700 221317534 169123552 529658912 190638230 925379865 5559585 222916108 180339745 695475562 387722004 197455399 324875603 971044328 557757024 132952499 225164006 405755146 925832208 862623650 188849022 939045241 169691037 896480141 425939105 39212283 985060832 685615279 958499267 29560708 575051810 763184882 500902714 200108594 220245773 268780518 20203850 96005703 512049080 576828867 227198748 516004396 650340000 418369637 180562369 908984441 585680042 163062357 773501744 921954020 111417381 936662977 59670861 49382741 163014595 554844035 309965025 257685203 874523557 925344790 164212891 738707092 135908428 72359 748814358 404095731 331804072 762786817 439730388 61693552 434808334 271975322 307115327 374121658 480312123 481966742 948145061 981796773 299242325 689028280 368996673 780480553 761014759 799053172 733764915 97762666 557971689 348109532 153850759 166408631 219508660 372300979 892086314 191545212 128718356 992375645 197826554 309822043 942204721 622979821 270389687 897484820 903079074 798883862 789021960 244867475 795631972 944476986 92486527 337800682 863438045 189530977 520346519 23926617 30630359 129264953 200652208 958261821 103421835 691251736 40559891 446758434 575112853 407833855 536013040 211680960 779113979 473590676 649474405 261861102 859814952 825076010 598974575 215880114 866006516 243677106 557855478 906181942 271496091 562117840 39754704 150025676 902548931 778492619 553173684 531391217 867479159 227334544 887049027 431979592 992048685 58182582 408486919 302395035 581560005 78606719 929231727 335659743 90491521 898937808 654214868 436130606 544897295 571455803 430943613 593625034 898648708 609893618 551064462 873464867 692900448 446051291 547065624 128722376 363527303 206458230 889357081 196308341 202160195 551019768 838087788 314704399 443704652 521986616 672936671 764105630 530424512 695376563 335886881 225442390 341011492 486526095 677785804 881533847 644066405 975669149 312101730 756249310 157378261 231575125 202613067 683598042 890258997 368322263 651248598 724111454 125969321 705321446 560810819 729473378 678313918 401811957 975627693 294285327 587891052 635044890 859654175 146164138 679570188 699009302 591094666 324015018 35853670 357933646 242576842 923464874 473180839 525782739 670108317 514334061 807726946 543430235 488082605 288659420 831677849 66559044 615486092 576517135 817296298 412709015 39586739 304175932 850822507 500368644 276462979 159891146 128443145 938257377 266355268 183354691 660592678 730815790 961723434 49719129 194222278 618535824 662834766 875837672 447245913 431122779 336741806 310801908 666476207 95906688 970660407 599380394 59017480 699654821 968457144 199709529 51826442 51900426 407865066 652687231 259255234 27125924 843851889 760872127 476407460 941470219 647027155 217084132 916387982 948683638 956847234 730259425 981913799 390518999 917561561 175231184 727224312 312805812 929458966 573274873 922962746 304266827 184891494 729116865 679863561 643873910 821878746 462051519 335447115 340262082 822293353 860248748 485363530 603896664 715710708 632996974 933246142 352525588 100642630 330280208 525572806 965745780 858914063 177860547 267682276 641036958 825023977 619588325 109093382 682148962 112449878 622340852 668464516 424495927 191261631 88964514 383247895 166679101 358878579 479836350 796092390 238900539 441730476 450396485 616390784 705384350 334157710 208599131 144288729 636460418 438342430 937544262 890450253 468123811 52718674 112906113 926194848 535799145 15067649 625877921 469698309 449206241 510892266 986522221 988407821 572625094 73540794 568465102 751306420 474122357 771597057 887551961 716626531 938980855 169983543 610103241 631292388 390384120 83459774 763388159 721240687 179166162 391836640 455757065 52836001 432881796 217920716 189212056 424523132 109333428 354911135 488994696 376524145 112855731 89498199 118622687 272720210 388215670 260157406 753351365 687190879 253891998 299443462 420569230 286409789 952598901 577526664 65107637 414816246 485225698 482065669 306021598 708572933 390445701 89040903 247057364 71374659 475522201 747508478 328174731 514075892 365515269 79353666 55511836 573600203 111442262 336128536 380196300 56753111 656554442 632564649 956510214 563695257 374128189 257963523 487905119 524046324 898142260 341739041 565378700 404932408 354138337 749791459 904855672 912569368 230424090 942790677 329498922 716417970 448766302 312105828 542199511 709523853 688395477 109889903 276929241 381276819 967675470 504772275 148646069 352722970 821507648 37647001 13611795 353806560 424344781 525437556 862477511 758702604 303726775 198749823 348254159 525573161 779307633 527410903 847764556 908561964 25169680 487453833 556250509 279382130 469475670 395040386 281786622 157588931 895414952 941783712 741833536 571106890 393125912 54345379 10800916 538835612 306104667 854353713 985347688 57729208 965015502 942649566 864891213 163878146 920114556 524381474 215964924 864188743 786354708 796666723 58382045 221122493 358868458 998284770 591713143 904875009 367689475 697869526 947423105 178346520 284594176 344009561 926647506 547476848 781698356 973010534 872139635 462656476 87769492 407576559 563195529 522786461 310742467 198387644 424594283 987439447 784472836 264906383 18974356 505071380 443052617 979800323 276121766 370461516 840356136 505780898 97632621 702552286 932579041 97564384 805514972 763113226 59536728 137872406 902521359 551213189 154459683 39232133 609522249 890043485 656153458 513695058 280251380 573083920 965736746 591076755 260651429 584947081 433875919 658695489 783479060 486196238 562175888 106596923 203946026 953204059 717781830 955882315 978576877 708343177 654058864 280106786 161629074 675557660 637828405 64767837 282696055 120498695 144517986 622438775 357270555 537101978 140911986 564841948 339997483 697743509 759812738 953443040 476482681 431543834 418293339 607166392 52268291 72736953 931370603 597591433 975821800 548083304 983790281 826313304 400229752 136124547 555663155 717874202 366803493 209910479 412916243 346656166 770613641 946791033 588137335 178174400 313893223 69888278 408467990 45209614 533673643 819590565 434499150 623254563 188978791 894959496 706898730 717006454 24275161 434621330 718643031 899305837 495521891 366449906 78789164 3246156 83070094 88549450 147039401 342400584 609962768 502070428 135697523 882547577 856883396 664463959 923582173 985496032 8852653 977583696 759522267 3405414 840974069 634812612 125833998 629195229 452852209 995227222 556009149 179715068 567598362 369276184 9515735 827263593 975496212 629521277 787023346 40029609 682529199 589688160 138445905 533811756 783523030 718080778 415189207 728523091 455995818 165880358 820508693 791867991 64100972 859633864 756456771 811892068 368507016 402734704 353628478 990330508 730971538 959542532 379686289 23822025 63817796 438337487 172465000 281680123 103603586 747335300 380920986 4613865 370105689 504964679 211250859 713133128 878679543 243493015 267935676 596718513 67581115 701682786 438103969 493320098 325279529 481804545 540018381 646255497 845937641 761820975 503023971 393387186 756335057 712619535 776456745 475910491 424916188 323744307 936922508 210537891 593146157 835817613 596733607 85966993 815507981 245072760 514284086 370001691 487373554 985435072 152260516 442912022 899391094 815927180 545883132 588309575 672343903 221214583 337035002 263958866 429767570 402845561 142480888 462093006 945165610 940144121 738563328 251999282 737524573 390464709 449838018 594637024 848270223 907785745 306439317 691897119 797895245 74889594 702808950 855931170 979434056 318841096 836474127 225830402 757422941 757910055 880357293 16660161 709684622 871994538 267617865 59369285 827688968 504067539 88357760 122919779 48888861 379060032 750987932 317468115 317233225 773229573 621266573 551375668 196088108 788918676 777806053 966865173 406165655 745976525 894028521 433112289 85885049 418645744 371635325 866525428 573828589 985261230 158264112 735166353 478223416 152697119 873965883 396295133 330435014 213369531 20260988 766856429 214402346 12689510 858222971 695992 135578655 333373557 321636457 340888864 341196421 987299223 582516248 140204272 551668587 678963178 939266316 926085334 21860355 287354358 211043436 174611567 662802089 624860071 890615557 144341815 373604830 310998351 933593166 734428060 358249808 634203312 105432427 202074093 537524947 938016236 315839516 911767396 682434910 950426259 989433303 586433315 627036695 50462361 167766702 990592818 899132745 234184537 67048546 981422978 865940840 458138778 733770591 341224684 309979150 38305675 316362669 915308084 970996990 850141119 751911943 445135617 762098981 498760756 957887179 818711780 784615829 274257489 105600768 695134295 225181833 951396062 395539798 163921851 782436 215904535 555285286 617277018 708103347 523163540 965139820 449155429 177487657 848563549 111982034 853209331 9010846 953220831 38699431 838658824 240644121 103510255 774502622 274778765 40527300 41214921 457733405 939556435 975262704 9058834 976894631 300260881 248980510 851590619 802577771 101733739 875797485 798258069 199479297 624371433 752707111 819066143 665872041 492710141 567899074 877647039 976061000 204223232 738539224 85961760 246163314 536869426 923437998 152995675 978225498 849855166 389584813 382567915 123388129 475347126 452476009 613605299 982048143 893066513 805432479 334671363 699121809 586853553 264341807 66984080 321575868 701049183 925980709 372083832 914728599 479818445 610517431 698639678 722120515 982768530 971587388 105103314 508607377 95902771 227951164 441844103 546755577 852880918 530707296 895297819 80640153 716533904 365961082 155163571 939875897 696304087 495475337 724113883 758971208 30374925 62145706 936045706 723468509 255959099 678155055 885278753 8358840 882459987 247967110 143128412 35535678 152142637 221895245 412929649 871771267 558585739 724527686 903017457 447588667 497407766 302375263 105838552 773515970 266979937 873979815 747387024 747710759 603642083 796953693 550184418 964340755 129104382 390223587 402296836 653665247 598513661 641184704 461633687 73671307 718540047 953345968 888424858 630496446 656988749 151838342 249624703 760819911 363408056 131807307 174029592 169953692 378428 494019622 149605031 405785568 966500520 485917551 872853197 846190295 865161911 367201949 15374998 285847408 491760904 329564755 521703805 361700162 731199781 986579038 870789210 543097232 490997889 670258357 499311221 102264894 543578483 909655661 615468155 72789213 860761661 411773642 893123456 23420835 931501577 970375738 634309123 837722734 223467494 431963473 647474407 442683848 45227985 709265350 79011962 237742047 583975335 463017342 961325938 942105994 23159861 439796104 714239468 804585289 120889899 689583379 174199919 406405698 827572000 968008314 482592485 944557383 738801817 738272834 284122021 250615242 844388091 774749208 585503341 482865393 350426267 308176332 149060446 544925308 788438193 427168346 551789581 144818145 240010845 819087078 973411942 30418229 511096747 588984762 994568143 998326836 933812362 841679693 439191558 912000841 764043730 969801524 199546942 893492352 721680969 966863158 774067209 651537559 792857493 814065729 188154468 210801125 73556807 945721186 232499894 153426804 144144854 340477657 953194956 377069047 449868715 85096199 958543579 27087041 3121159 109373817 268593790 507082448 15100449 375279071 172632510 551267793 573649932 748737817 82993926 43690255 616357840 67626020 797103917 923461251 846357077 401441075 862967404 324380618 128612966 274968211 999028076 326124847 436071876 470210498 814262330 951346845 190695948 590146147 120044877 353289902 180473802 871944000 546218109 109632928 876563820 344623439 320261140 90920029 665339983 182938790 50343868 578159472 127435694 615216527 883674508 214725139 354096570 279881072 618981634 465515812 71995007 975696350 582169602 622078506 233122552 372430743 105618905 12166230 124400135 349570425 783991869 124072831 149714803 455252883 395369547 183670050 670093041 533547543 359956871 842481003 890081045 986540129 102997729 156091427 16675940 467821042 651184556 646625220 490593350 868377976 67517606 548091503 515712526 961252804 65348341 573168363 771542003 674927829 99160356 882592674 988865559 336220360 697783339 475578291 496244098 468352750 981556839 939700696 816118569 599482043 175667355 406087547 783770339 814597827 588080372 173125033 847308399 301509583 844995595 444204059 660512378 692663242 837150680 426654765 27947923 137210565 998469831 531834858 106832179 72162812 687642782 8451330 505563324 965109460 218483097 945612744 645458554 10163159 239090000 621812286 205166744 857718199 611648459 686315277 653141046 822361680 283668087 859817601 573811280 226815912 101019943 932360080 622095570 721682151 207718171 688621278 489761678 947018080 105535991 858354095 72509243 499196304 544606409 716641523 800006267 195993114 769284357 374858817 886146262 962262728 263459720 683450072 607285697 17470863 588638106 280143522 217576848 909999499 228480998 741092139 34936969 123019770 173495170 193306794 885976530 408482125 982673130 823408385 463848064 741679637 611082500 259982005 743555209 807834638 205971486 290125814 459102158 477167386 912134895 934616988 291452186 980069444 393067408 156888615 245390109 544027330 637895304 231571130 143359858 464752365 36068805 825086504 864066456 845899592 109769626 733069799 254700538 748289406 735001544 223749399 401497321 982504293 9283699 91821951 816403868 490441206 789770532 987454092 84163385 407857236 561067479 67181658 634705860 742217933 119236581 260162724 731356976 125450190 14361365 75793364 886442584 174505210 298487443 732988406 233519614 790972945 166540274 390230471 652692934 367599098 879646261 804055967 142131526 151631824 677825727 60845195 420967671 247628744 384142938 414226231 335322424 582599242 674885694 96604923 67253076 815210205 189031177 445077207 711672954 304973623 813721022 90361457 8550087 117630002 956837068 157244696 283428921 352533715 785455370 871642823 148147130 612377923 50204337 663969560 860831772 717672917 28725353 599061079 410245400 360132102 171107389 996983409 736713297 412410744 362040484 277526524 304531018 582218488 596607357 436178745 943348092 27272056 714662153 465889039 767780157 398812436 496718073 731961356 756708557 815617550 510590302 612088170 429279829 648317395 598254010 76738054 675440616 933530612 371713008 768494952 234726528 747019055 295149903 172676286 819415804 221344354 861639048 265232353 836594985 150318916 954504636 27481169 338465459 61748502 776249713 185422897 635662903 979460131 877690257 399847253 307073077 324520518 980000627 837549104 957886487 717742639 963139539 459165926 15317803 610120878 634785241 851616826 648976815 307436993 413899278 380188319 16127936 105933705 890568043 364554536 161507948 347439440 54731340 450162328 471248544 357770893 329041270 838423636 866672696 62244825 630200087 705617262 264786676 487328761 8004037 206718363 407319932 379683541 679892345 533834808 711698020 608682627 198348957 509378384 777074978 349725244 775823101 414610065 817047837 891042663 372330700 952615506 727394455 962327180 371723179 172301973 831718853 898226783 973418395 899038717 266572224 420179643 653372428 989092059 495452554 631872932 725589204 466332709 162846475 548637766 728814894 558488700 150426133 183344626 935461057 460245288 711631710 101867813 335849624 595619095 361160077 762127489 405117996 83566558 195068969 445652435 11518550 384070338 303524512 25520906 850641503 279760805 622106447 563902792 802456305 929885720 983767671 661542347 379161891 287614034 531553598 654188801 375583090 315297844 185458362 470422906 66173637 156753474 355055328 861320439 490163044 792141998 484551060 909549396 429949963 864017486 239384478 139793315 195403474 338311587 737285041 324368658 851176512 339453392 857436517 689928191 528723012 453957033 403989048 281113324 994610993 145774242 872691865 367345030 277696197 94984668 483517142 843038111 25704228 818254623 131275304 535589426 289466847 261122008 240279986 858337890 49003751 598620704 294228860 740814460 810184603 926110645 347966841 227078898 915875776 826873598 416519294 937420128 703133317 633248268 982973778 251465609 555993981 735227796 726242202 782133334 756620198 862056952 964262121 472715486 311868516 333768767 747442104 711605592 398837383 301279508 326633574 576795693 786702147 771385812 402075201 882594530 570372402 107754875 778746487 907510575 922842976 720879023 817556257 786560492 908547636 443380675 450584642 157143583 717804679 587887018 235831490 632456689 232962709 849956616 755967859 799719350 742227715 616191521 243413516 207466218 487843806 164182245 148729906 314856240 582329244 295817706 38543980 986413906 969131034 466325363 888250669 557630532 361290140 511713378 784088522 814879779 173902291 76371274 633369992 339610928 953532624 730621283 455043728 33496278 519704594 927250312 66848499 756890282 110488958 765468996 824869800 549749095 399509603 575451079 304012692 470441967 544206453 645086946 582901374 714302028 210616014 130064413 365190166 218205367 905978617 619984792 784382712 346021508 724686817 105381158 844273573 926908730 750298840 1940797 39695749 816060806 877435550 683296765 179012073 210740793 575320155 922361389 482533642 366473548 313248919 957366842 766484748 610703591 735769162 878884159 172747509 148237395 679443411 116858872 204063161 187026688 702098930 902122448 407785263 596824977 968404699 288838099 516365593 343907008 445878559 379843513 137170464 200823936 746889914 142125283 641246934 163316961 723803157 632575316 375168692 354933021 542039291 639426753 351114011 376655003 682358176 937509245 364659796 203443681 946217381 4435849 50429072 110812582 610986764 296538506 284934891 825646023 813897028 3657683 152361058 473630273 632444963 687476056 196184288 163686980 434168034 629070010 762532408 214382370 893971245 398028608 180326691 483623768 265091594 160517083 817613889 646005127 952439028 818468893 918353176 958220154 513622724 286896459 277709599 81008935 71999684 548117833 927521965 278482342 728218524 80379300 259962371 78018109 245763684 804376219 996825674 715013973 692641691 856437255 953681042 673788801 526585379 43995247 174847193 741044351 396438091 91379718 346012411 305238062 284454087 867553185 436235205 636084126 673096629 153365438 800654821 628049411 720021912 156878726 843433206 648830897 796526178 8316362 759644792 467844912 666437735 198289919 471485657 889305647 1122656 77575492 533273189 353272441 756144504 249281888 425936468 856143631 628251704 743837636 347858893 424495379 414188439 437801095 449177815 836185295 682074866 445622628 933111136 144994486 737859599 71449290 789589060 191631975 954924569 555559107 429480519 475138465 760900263 627819524 511612685 244354899 613073079 773640436 656221227 426652810 66047915 191770772 414287384 408983944 905318997 276797333 935767862 410482863 236885991 141413199 796637390 887237001 249762046 825729727 761295891 673570759 273675424 148096910 97083675 776073799 454394684 129005836 735039979 211703308 823878564 934563118 952562025 188683584 43882009 77912470 522857064 985407544 346023231 450385033 991949472 760297070 61306654 831490040 311622581 818601863 640640565 386087545 570833964 484983372 863233624 654095947 432718970 597170096 961202643 122602581 133130232 447878608 893569102 784230184 183837668 662487280 165019618 596019706 949196907 681655416 842565131 482762667 14922652 296886272 789535406 21533122 957247089 100657215 345686809 930935148 87263179 886682649 698638081 707385477 646614386 776770459 755574145 578333321 627986203 925558004 740332578 660463007 587037019 770430343 439526862 891023766 32603831 653212880 35403742 906705640 248173716 350917501 99242250 432676274 455428166 450263650 110882940 38192317 683037190 713899897 965374657 234354806 822433270 878923492 275364042 778397685 527990046 770942450 160563961 449598968 958174833 531380244 264624144 300413419 750158276 320783334 103702591 426799320 184350429 643813930 83389977 741055096 566555746 333218507 504272795 452447276 196440807 123347423 462807850 97889787 679577061 272441501 632742038 823045521 314454712 599423085 436991509 98835783 325454768 820315094 720121663 712267549 660807932 29943694 383241244 740851131 514434484 18739569 651144733 143464301 505778394 26566527 738509585 566717740 373579864 712424677 176307766 829692825 607013886 299946740 632503606 412939771 774440071 960880173 219959581 571840828 988205715 511948590 377275740 854067963 813405098 130100677 290648786 238933106 924927295 300146146 389681352 426632587 681581994 141376677 187074025 668017106 122358574 930688844 370837830 315025795 888443637 947259975 544568674 972893305 100279821 887824422 238510370 366495548 875453553 745439911 194305743 988766204 795043843 989245867 457927971 446316946 828686729 193179709 739449399 12655226 575904696 532075920 620317331 464595423 70087208 584960514 115230755 777874573 278359131 217973270 134041916 304800763 311301302 620858740 303429021 315415882 972523409 253183475 381090154 263884353 359722528 923587210 53475889 128234574 641948040 19729504 625028582 494400908 675702735 388404161 601331688 900470711 933209833 598198554 296073210 69650229 836446634 808945164 214951757 716601366 388792539 838156890 632459632 963077397 353745953 161079532 955155814 441233039 91624716 610548441 674315923 867571080 577132568 32498779 500569027 32686260 150623653 265760723 51385899 351993704 486683387 44080332 135349864 74430114 602788175 471857919 929933698 441138700 961213109 975255872 610680802 526477045 681297202 86650521 546001507 709746514 877745584 946783536 546345278 618931908 544212734 237564763 867207960 229833619 738929877 834082451 959849985 642771882 388255959 413611645 848535661 129341350 996808591 707547108 541214263 77683138 5216618 416468412 8951718 367706344 850408391 354806815 907172459 702875558 609948128 526980945 378569876 25966899 335747047 178778812 498987427 560781934 124038119 903156724 519097212 138235614 492639449 528956342 662245231 292331956 974303136 569506019 542168364 181396167 483249160 767580038 834038741 133697941 10187710 535683540 501173995 944879686 670938973 387218217 709773150 468705449 162388327 380187397 540340867 691633972 541279554 47588885 716915993 773862409 879710788 163667242 207683649 935364078 338202274 721268804 628409994 694782288 292730497 539055493 985086187 99407178 321256169 165048372 694987199 103005338 92876488 982789065 507522509 99485862 433489403 66245853 129639233 768326782 27492930 786801202 716244145 422638041 848736327 943047095 678082587 298929175 454216857 300497277 644591075 926025535 393925813 45755582 98012116 80480513 637967353 934977247 777516073 468414384 662879918 566089836 573204600 592347984 647850249 499708438 900387534 618766472 685551134 98026939 113873042 212379046 52243699 405350235 840678302 97169824 792310641 610902051 400301356 82630425 380484452 207418214 254327010 20127059 774344587 120509344 689655756 554900288 987837060 426404212 396974436 299030648 313633754 230661293 824786563 480270907 886000383 296783678 503066220 721224302 997468744 708625474 551838675 460675232 177071613 677351164 393688009 395104011 577314112 166592474 263275725 96312715 962633511 685824364 29515201 693655721 634568617 903789422 252281076 900360340 280294056 544991173 914166559 456210981 509741807 336343930 919264345 268517335 380773677 432999872 850097963 818151637 772960506 712787190 174144386 307735021 483903962 703324570 337402803 662441111 739313718 747158365 184338299 268045296 859864670 53647372 71578877 45524931 927196045 968253094 235083211 449705338 764238050 825771086 982146007 889189682 516404841 457029457 155571326 117100710 671643150 393267231 867146631 915770943 464917171 719499858 347421726 326001164 443043600 626166194 671649242 520564933 813193938 347271976 360911799 621627081 149703566 631641031 442073368 649212700 598179257 776424906 475647182 55853683 887273906 413191061 786310158 201842210 84473545 87682738 668457843 593715494 201091115 540948183 988061699 963685165 739635697 981715162 506890283 700975486 489660444 790697924 77816001 853314070 156212630 552489406 166076418 198335123 890801459 529152285 5868178 566193466 884583080 985054039 973907075 164661246 496782747 650310676 209528898 221272436 28513423 383350302 525284277 960093658 39822330 374564969 178548508 329320986 477484853 61063438 819469348 193235139 230619518 336147027 229206759 533731083 724629761 971241376 151353052 225170385 45474255 64128650 723558380 131298973 627055329 791998927 949641058 866696860 417032472 535982159 554956537 809533865 814258236 860779541 231992263 352569155 673116673 788407125 972776277 184655757 40805630 389252459 644694159 345357402 511490998 704272345 251136200 721783329 894637971 12386637 111864005 568413952 654413283 555801749 592288163 423529919 391615710 878720945 733922290 146962636 531869869 666874563 579493035 20026177 193914448 439926037 491247655 416122331 544935103 682952220 484110635 651935744 93469648 672459891 459924453 654818499 672467271 772689114 762810091 851434457 172713929 434694466 997850683 831344803 676996586 106558394 130081849 791981861 239506213 368191871 77898419 980083983 710406359 718754803 186469852 851976891 608607563 105521569 466165077 376490534 643314867 452656958 344080158 980407801 657897001 90868389 881069226 767093375 686788269 93635031 358509517 437846708 686936615 24982018 922594752 95231799 7218795 13797497 254289965 457437005 709162031 26822580 755919390 48222181 278687255 92038234 480199434 446001815 648955309 458950199 789735377 525356707 259608670 225476410 743234995 551332337 365768326 64921728 197930846 412333071 625766505 606066510 465701867 974961459 322467115 357592077 123024852 180970300 815333344 351731026 708680702 718602935 297738880 723701463 641995450 575942093 777558767 934802560 548151995 706031958 479489522 187896662 389245978 639260628 708559935 925526673 269810020 665737837 854580076 604603016 972813952 886787567 7207674 714756542 650255817 472454099 27859797 203170274 185783543 438275895 131741389 174132934 220283953 131588579 491285657 610547555 794405637 888456519 293631964 154101983 896331622 379156857 900327072 99703171 63667381 886903350 177920215 296583618 589607092 417766379 730033497 944023353 887406227 148264099 170944741 733030827 813202405 973375252 58108710 607830019 899380134 576167330 646901167 424865108 15973696 718268242 147742968 952737755 511067517 97638099 7154530 82255350 449598867 204221309 59027510 271330614 439740957 107353165 681733285 848141134 595307555 673460459 18942154 552937236 533306899 101730473 117777061 61281683 184413374 60979578 591608094 709869807 930374246 464210691 280153865 622107005 172118959 365677956 574430237 878106299 964916386 938661618 751932924 655979082 127752123 892252643 114249008 240609015 699995858 447989909 658668075 79867316 467181105 624421358 803783234 260962460 375511937 60536960 702122683 230801907 162636504 586362242 252484029 752660770 294702004 62418387 787713368 347653057 67014139 251638008 684747913 707528327 939587832 356599844 273993774 504791128 447835237 407612203 756573714 869650243 996216665 963285391 853000165 663884149 220413276 385769333 916964417 548380748 724937053 421884077 603512231 720435022 776478894 205413804 568774017 718482210 165527057 250844823 928339231 961268383 143607974 187797039 813567674 776021948 862811900 843509480 822519415 588411040 97206282 244008918 173775194 2516119 18679341 60828090 26536535 663198481 8060967 101459964 973390151 719446697 510870569 582411688 300208106 731048996 162578629 347816056 104894188 192553325 392768507 961330125 773965533 281018518 642106415 93456297 263799092 931150558 304986927 354639294 686907220 895299492 787129649 119616101 98313608 631129975 71856079 650874266 377079295 600389892 647291664 580520967 575097298 14557230 814192226 380457976 848778757 73601781 462879642 420133992 217179774 487387266 990377460 208053237 707555086 105705514 699577111 898422244 92541042 784391273 770327057 546100009 388802890 862799842 17764435 231996756 956372253 361912417 690965694 853582253 679729502 789633495 492072599 381280276 953069668 95097182 820933259 290046491 547068532 512461374 258501548 878478330 239691959 254651104 129195132 855637392 920510009 266986456 135891934 27993955 327148792 941064414 695879711 38760355 387865812 430628826 877529589 120151849 363694745 131576276 227159934 126588017 349512435 863654912 270059325 571119778 894363007 711166650 122286368 497381520 785187260 941794437 454964094 470761391 167455764 682709771 740833811 372192541 268933339 352767008 671710466 303690405 90922821 469847743 314088412 479060402 695030904 105179660 981936279 854055519 483729530 414327379 706320523 873710694 367548223 213319687 814579585 268083252 602065311 400672446 501234343 101747672 678354008 132039237 581376911 879093252 103476506 856314238 61305654 139153692 986172784 644840834 144688903 320671270 880666072 512645258 220656586 432006098 78717617 52176634 791472308 175988598 605694787 376963677 503736422 142261777 346689729 559777380 521582564 601587531 362099524 25388016 621537176 33224306 828395724 825841150 82716765 41603454 861524549 282870460 186701931 740030992 905733247 536771710 278234216 137581677 31910192 596207806 336526437 369680005 965527550 969058593 749617363 975735024 318953842 996585073 662055314 371568620 948211705 810141600 42458852 523390561 133823729 808694986 502824060 33664734 115371927 361895986 418059881 184701594 73614359 25831239 85014060 812868212 534796931 460369814 6166953 292996598 505066960 390857695 25626158 157183051 349979877 420767493 93020527 376450380 136269191 835753231 415330442 120409722 944436072 410601012 61564164 909007867 6838562 455552463 442789325 102855068 958629689 423197538 784900148 755921881 592719121 499437979 282593021 469773004 676038141 332812617 962190152 456101697 951752246 241142379 239730599 550626723 102261728 528362785 216699146 659087629 444006915 650719929 859797970 154188347 477527438 292477602 216222916 398806678 172414045 615367039 250037770 131805487 300347950 359269389 476816446 185936313 358003119 249286712 444816731 907128727 932297070 582537236 715061190 163852494 951054053 65264350 233055564 430903054 309117299 18261494 555631650 615851183 546619237 334405610 955153896 875006895 953412330 674567020 656106145 127633588 888891165 584984153 265696696 156989458 315821821 226986160 596627718 400170685 911128180 211362209 33310665 676268883 168726356 487907453 878121379 349912863 626627159 666701758 727319457 415268618 662938653 770147337 100586810 907550898 408628270 647257385 815392076 586584404 777804796 490677520 103940380 928659671 303365603 521160924 179283284 14723273 366880800 391203280 656306958 352746851 708965180 650497620 418422981 373254786 324750899 224194301 913314140 973360305 639827217 921961350 338014501 696999450 559520860 623076821 709982929 465257882 625918684 388298481 992729728 415736748 380905799 940685840 623993526 230826875 147729201 224010636 756855649 505914322 391598621 743322089 807768276 217524267 423593076 638441683 13675215 632039333 320656518 47362073 132260727 236975109 861032337 283231421 909061719 239997117 199717042 447932892 93022055 848896484 838996466 377270724 766320129 536355640 443947334 247688424 892778990 343146272 779386757 747490535 627641433 208334253 597389166 696034685 584373464 569216404 368800941 175200154 759138920 879634744 46406354 25612369 908218479 945698204 179895385 456653275 658909623 887803763 496161182 61097629 23020408 287923728 255939568 765501986 4949584 781126773 784961148 861369372 536387909 783298120 708591455 904448363 185145537 193025242 632570516 740539146 100705690 149303842 832051468 193772845 455956494 622737343 367645588 843230752 628954820 36456951 746399205 373166437 923129287 896858297 545824674 336069784 33106826 599729823 914138963 67137675 978520048 416279524 443730280 392008234 224336699 121738612 89278271 87105432 919411478 276764635 69465621 899551509 584968090 573820498 557935634 804124682 450675269 122442166 707465036 298921997 288644856 173731730 364131001 467877847 843133187 638458643 446360891 529328207 105008666 771163151 132721309 200648061 550358364 261899271 536544396 56094613 474204239 427791650 883648420 510893553 482047964 707457839 683532904 655422486 788752731 589785252 810087487 37600433 718483848 428695970 390168699 412155539 549199242 871441649 248969555 962443703 229625327 897921791 536340202 30972991 948659626 105888995 495892045 419756408 626835224 607382364 184144999 410265814 305287936 636525523 996277010 987623668 305926031 516906324 607741972 304620693 147650392 874253720 500638738 87883170 406840924 58911745 533686686 250225715 394539261 469337747 881514037 551491454 567643914 819679996 965447987 370014443 48598710 167778200 933569251 916529409 360837539 652322914 814822774 904488053 695552976 154512901 667655686 576375587 710256817 857625293 811774359 574312717 133779989 88905136 511592973 819187553 792182077 208390995 443319098 235554670 479360460 473034487 357831130 296024498 702267602 876828559 972996239 215411409 723657667 957504689 426328799 149432978 51503995 42028444 301470780 959782125 753807680 915170875 936137984 736605947 462161856 182654998 397104494 956645376 474525200 281079146 162043053 626391655 719881901 371698709 412883405 942626498 385392764 389697692 751365320 381259472 864746442 232312627 207724419 121925232 5541196 263874220 364436163 748921519 257319203 807075720 705760571 228830912 625882062 995684080 556026499 812106495 519887166 303980466 346447900 206946799 345395658 875985222 900446835 102011192 871610155 131857098 171797972 923809458 9328008 721275398 492924797 118484824 185251441 582832745 915932813 501032011 876258262 91706376 274767117 133816790 246619929 777971368 486610670 403457644 797583354 2844331 875608842 752071085 726041004 754337315 805904418 796387668 439020483 559220164 212923361 585682004 336961336 51080690 403580885 739498942 967935861 617303984 933549177 364248010 241775429 918046640 581857837 405940447 576968669 776054600 908704829 838125702 329722332 209271160 61480920 847022197 22850119 309147113 555174680 404021636 538757513 492805604 607222782 430383289 248387704 350317927 515598707 824221756 570161491 42992140 682564680 780039779 528611518 50133534 123397689 859976872 41074887 463890828 947986661 462452911 636306402 195842285 137766612 567610690 158797807 370209916 96181369 441063254 674022190 528122151 728587564 297252614 46396243 826424184 990135344 991773333 533852781 712450730 161430958 868800365 230170620 99438491 483801013 677583138 53655527 756057038 26041665 562563185 288285561 674103930 11270962 975445048 259679334 9825137 334962001 814043273 842741710 568610355 556685136 947447188 418710327 311125736 778541510 753762482 128084875 188087136 292441400 449975661 249652257 467197968 192738062 184231016 269944245 144187672 389135512 190386300 798266735 790475074 815872015 105726370 978887129 540199162 355865494 308956159 705280490 840101209 736837172 625225947 114494462 324535069 148680415 304239530 144937692 552423853 367352680 803365642 549759155 386883097 153822616 832517566 119366162 165456920 179316757 78835630 884102396 11916556 888004464 850890993 537703893 531402488 182769957 537649854 85296743 525748109 459991185 842038396 514606826 68769058 675977215 726952630 176550141 920865208 349182371 949577244 224931491 557773298 904929936 332900492 2963272 65417253 415921615 104950794 789615299 270684485 600068931 742320575 789223504 538128880 981524672 810859263 874760088 232507760 631639806 403292743 662565797 836302003 897006242 29159990 540782570 811442510 244662065 554240155 598917448 50282628 294427164 87414120 478541060 947006013 218590142 792233402 400959949 792257029 536152666 352378065 800526002 868458003 780536598 184236315 672844341 121165383 685929223 442137385 246863674 107072811 623160865 322357945 882661390 240970987 843226697 26442155 416186728 531027039 455953480 702901004 553605476 123601926 224561870 759221263 731377798 912101129 308464500 774620433 338759359 686185525 346187709 790148242 566470753 554130691 806336019 744296000 511143207 220949136 994270403 828965869 451698493 389626535 636211464 511795348 829513769 714134196 128367111 602319192 499436006 245330638 536449476 348864647 503476687 835412153 636980 532735633 424520105 482520279 241484849 240343314 438318240 350753593 759228023 763388367 486350923 488305812 809267890 259793329 680177065 590496076 750756983 858374602 786859547 953486950 398111801 573765211 936450674 189854352 963281501 162677698 568070624 358986019 558926890 173967756 936289030 116570399 187432658 620974956 4834534 282836006 604291186 358280767 469918703 108668815 535402759 598917892 176509174 306467658 550251899 434328555 861374009 726458618 683872415 964664645 185608793 605928 466454573 107632269 428418920 108071680 172398535 902876007 351571931 550487002 314754548 832589981 83675020 636578742 102258985 182009122 983910085 35175802 316764859 150773013 804933934 104166326 608213997 616831157 278513375 33750434 367674088 699714928 734905173 877352477 867634111 10695384 362556022 146416301 119810409 348186025 678965647 292535426 79356104 932299460 854034002 635124082 266223015 155842102 266206691 957035264 638347186 39960114 307291072 190320977 797500297 272815639 968360666 411755568 774620075 47801697 62970502 254004252 398457724 959506112 925228419 68084528 117462612 917887238 994603760 993072179 208918634 107247150 525930339 645853591 899104736 654450780 409951178 531586670 430120894 750756571 369240709 174716285 660450548 741639455 485714011 777838632 644783455 447816129 103635316 802953598 627365564 988312454 447305836 226408760 785845689 632897114 152727356 515232438 20287202 380577358 43484746 175132156 898536884 552593055 985151845 698699452 824499599 524854447 174708415 454510924 696715453 745321226 841182711 2724780 831248237 957860965 472934674 708455555 12946107 607764118 411574655 89127967 85396390 237506983 731244304 563133305 332512282 359975103 28624646 442464558 580812263 507185457 657421571 357928072 838319043 239055227 767117844 702876278 249697877 250039868 759140274 441777804 987826977 265040196 19589304 476837390 327520668 252642437 647221866 584138975 613031455 488656152 917690743 687272593 338240231 690836546 952352501 485768538 37070626 33569902 500082013 456655643 300711904 941622319 763911577 448054359 423184153 208019265 711386613 662004545 434634928 583722373 994519333 456682673 522469741 738663433 75205447 263836451 253475329 112729599 138413792 818475967 280180743 228933059 59987423 711566166 365258494 627915222 200291476 893738335 17431888 815154150 2726597 282853623 256050000 766552519 240746639 690265576 44647477 467751536 231821186 284768670 298155298 827397897 462561174 405751860 276537886 565779928 153059365 99384168 248468253 567054677 540051700 210532768 14350071 326768408 307419443 951338733 89134698 596685543 7622772 931380740 178092838 676175274 275765176 588737350 606741174 772771448 519961187 576354235 105042840 353221515 823313726 233750032 615183915 76640580 571949444 110132124 937797047 401458992 474393552 756817251 691221871 205097220 787206951 471399687 595011436 839603609 205956086 500112343 256990127 490391025 269058836 43422159 771631394 614913082 774832829 791885962 381397141 315153606 287296405 354239057 243514816 266750736 784530347 141051155 787881544 931692733 160643443 523477353 215827127 315249300 525961419 952326031 406962552 448654735 718871544 520539756 445012968 537255875 828334249 795945109 222970697 191269751 362908913 265434939 446820805 406919698 407541327 923400511 569809769 560941356 438086821 455362088 181535025 547316609 105462082 444938025 972287999 891730927 157550558 774753300 48298395 363255940 285475221 27200620 600503734 719059315 542707176 511890006 225079021 44213785 261200843 219458467 877564346 289913844 303538317 838232777 231353740 133413814 735445231 934729703 306699699 393894959 124412437 374678468 11271784 111785306 330875018 57776336 750061515 908449626 489107273 743737380 746108134 629647740 798992556 651165309 304835757 347971891 699934582 648729411 394284277 345571095 50965977 892821893 73462146 16398831 629605478 587819257 619120379 39287205 389903133 762248961 823494133 914753100 82774112 8562594 689167844 953314079 16707586 950502028 796854831 408538498 839480370 165313559 816704792 949364736 35462803 553713729 283195608 106462541 871815461 810877873 748201604 903096129 165162839 289830584 713656607 520338917 397740286 758816332 472479376 792138847 995645786 32101133 643238571 585854979 761698831 472420416 394838056 393606990 15636519 561122520 671546278 696635620 337227546 56116330 124287667 15015567 6733767 229568567 438492860 863632960 499866479 330400291 69754397 214505238 66512067 165670335 336083733 223244882 220524246 696911682 549727437 403546208 223886374 238367373 871912025 388700117 115832728 20730404 945081265 430686825 41040762 570219576 435526839 410733057 655036032 644981666 23780403 554839462 548908232 409694430 395692244 128634510 505792729 18595094 13277752 872292628 993968796 593010967 932361182 96454076 529528939 251133530 547188272 613741614 736976896 334316031 772390782 930293825 608791424 144828360 130802435 441267436 692245116 99455275 943262172 962519382 136574693 664023610 363137048 427553225 164839963 174697656 189637540 346539705 781575649 328900877 128046940 276646847 486903655 124980034 484228609 545296033 445477438 314705428 717060408 824046663 212279656 701465571 727038616 653159367 13278280 591477168 963205784 788847962 892841901 135136304 918959512 92201318 326499017 286885047 904751333 428524406 725037114 777777734 927887275 511775549 297496328 747523205 163567111 679217554 626985887 91578561 779273208 326046078 89484499 70314738 760650344 733720361 7538401 452510392 431731243 606933224 364845678 711048795 700954870 726155316 341063051 258527686 728610412 500765875 897233066 29062551 399178006 928125743 279144872 678561287 610206054 33728667 384002765 165449216 21686455 745401616 411733956 921435664 918131271 911571671 782830242 388487538 184123454 39184726 891288807 448585473 827433139 960876067 373923445 97041991 363951256 760991737 498872472 638263409 967026391 826030520 969866506 869038935 557312816 364597104 847227110 712854137 780237147 38642003 629737904 846958588 750349295 185919163 626384472 76360628 533366634 165152043 369363506 513935893 461984570 833764175 601550331 563915580 95039152 206621689 676053719 664016884 12666372 372782887 524706133 431935148 480278871 700921082 728512616 514371706 942119344 314440894 482533491 290394143 313980420 698624999 561421877 873940734 37442090 800580367 187316700 606306347 183080422 829641465 924756993 494058841 234935262 756140432 655802525 49880555 966003366 248572138 527455257 515183591 951270837 675786303 992316990 388638459 180805740 741572341 292863302 166099841 611196694 485727637 581300428 973430645 862356964 291303637 562968276 894485377 465756143 79735437 444187854 574439922 670092857 299817665 929167500 65359808 690612905 447331484 367944015 442938763 789483281 687099765 223077049 613283995 206149164 284495298 830427609 667539421 440752792 556516906 874279971 174696681 960304611 126254199 744560756 62567167 310962043 808115869 207678485 694616580 284344251 799699380 203670446 328570252 256921825 399868162 6617177 830663115 252853784 982682357 689282190 728622238 319311475 639582235 832213814 96522385 520808424 380887601 403438751 203312081 338233948 954706202 884569980 773463348 54394518 387750882 961415147 127139131 491102536 435190206 713952882 649522445 35272202 40292615 890882300 937381753 784894559 959031873 486630881 636049910 863903406 488512279 65823964 126830501 544031050 113982811 79077396 749377099 172155759 535527433 103394069 186054998 578229815 181882948 763352533 304215265 801634224 695763035 127941040 810976938 559096780 242094269 118704239 214835990 662738275 12587269 594212155 184351289 638729012 306436857 394901929 350947012 560087788 681672067 650166969 387493148 983348763 227900340 564680144 168788037 27784504 956808650 617470394 553258222 911804584 592007211 140174764 920549489 552911792 581163101 11430981 262480331 958596486 891671573 223587465 886459045 102435393 868227116 274064101 161875531 774380000 568343978 404793902 720518327 636532049 428951736 106337956 895550854 377465184 284788649 889652971 666121987 941023179 163201017 710087437 969276186 335402543 983044939 557323651 585460324 99003672 692419177 618671145 629732127 189751030 348991046 918156098 994341939 930628901 233712895 391592576 433006638 226240738 71719127 395965429 327748170 783527514 44391227 772594975 398658916 704242589 161712569 246142946 430347523 136946593 160190737 931476878 72035417 908967244 35185188 63095766 952350521 857887845 215803647 20361688 981978405 340375711 901833170 935059738 429098565 80048273 781726205 815835272 551151718 773125306 843321599 238940536 357229056 708630155 339206532 667223207 528258866 156858191 783582307 838879547 73274566 319989056 603045267 351590334 269625640 607550080 151322936 176855849 484389232 131346969 916013215 91184088 363663455 207054589 337831738 124998801 857901912 783313153 755138981 799248767 508356975 704905195 10263712 982831931 544307288 464947299 941075994 441341885 229921140 753919222 804370471 170673518 482079949 398605604 115346432 454562844 274443275 938472010 441796359 419929083 964621707 664070324 781435850 662059174 576091976 183921809 788103418 181795876 531552238 855896824 148472950 800488421 962433482 141691121 702252092 677300667 182004693 222979167 501960061 373536995 854150315 885075223 290454406 358929154 361534355 42114512 720228055 234484521 893757313 191834413 986098192 831430346 184173575 119290037 149123841 9817282 132047974 105366491 242152344 914337880 78256776 440369401 330437875 706090553 131458041 756167757 920339541 513852280 758627571 347621123 277709862 993055894 565639504 610483756 270165761 244286583 660512159 587353025 788894873 272745829 773848072 359292322 179476692 690188824 464410983 367635613 223531200 542151342 786172470 556042589 499953551 205743530 272421284 61290365 707759000 563761404 906419834 795414656 819105636 446839030 413030451 813279439 495555229 274510168 155677675 149183160 38080789 917129287 513120618 233656187 662892484 848872271 7691298 253785138 79887316 968199781 895915559 803989226 300902796 394853607 920736058 669271957 321093985 33133723 78826947 665925384 207010026 105670829 6043598 303684616 646823920 972005043 525797909 406515774 576100189 941383082 430315766 765480253 295742530 463475447 592907131 680152440 862061276 190826342 360577615 507875670 259287949 774151217 157118155 564924959 215709153 907660783 696077297 311411971 894487946 106224554 898652002 400740890 46007143 230456781 401860212 422622568 656740982 682098477 562598170 983269334 687592681 971381768 873030900 748728884 803639050 374881029 836729933 272540735 876399708 805762607 917847822 595839377 899306113 827963899 244679634 226390713 29327937 831626311 465614039 748591142 225514128 739129174 77053702 903405362 509102988 676262107 409765100 464300830 196986744 691703526 123632066 263561236 338821564 778202358 942514278 490749989 253452783 351570672 937896033 535832137 624415433 938550306 150844127 838028643 358998318 251118658 994763706 280582458 662373163 434063978 836790899 500577154 819976947 986732579 17522475 417934035 877361631 712734297 288045494 121947053 891213682 573679198 679420044 454480251 525446236 147148531 126087114 453559693 640753516 304400701 690092599 306063901 445058718 744634823 4836933 765862730 407322646 634143624 230395654 683883043 295053601 137073886 766403390 569095570 59193132 478216844 668375635 286760310 252054235 175925954 557009749 973245838 860174569 145854997 231273977 927395460 381020486 18881663 607502752 909026536 715131909 317658215 60183633 250990644 246311521 838051227 142719930 226495432 446222778 336422990 833505844 304497648 551159969 832481312 410662847 278760157 1444803 653739287 819993342 45679522 837659905 797543581 908551237 850734920 411843162 685867656 624081032 982534582 53074683 63175702 8825960 23204028 364942904 689300718 2809645 280196373 216948363 33132058 256220610 675502430 160965785 292474643 682293189 39238950 554635304 890376880 679674993 439114203 451554611 754964030 768168874 286821847 974469329 22589541 684558599 614466904 333519940 337917498 177536699 172483471 375227898 782354494 969631395 299514247 235257988 845553492 163170122 718985018 853383072 973861323 587993310 352964235 349461809 111688789 104095288 521484864 447425087 361350929 611162069 133108495 49774591 594435203 493852890 843086990 659581644 555869339 115204636 533568577 128472875 836199341 430082319 497918092 192499397 157349236 540307665 641992135 534724460 480565274 440338732 526572839 554825249 24438056 361208717 367045581 459010050 486590612 911280652 848099266 743408476 868429247 981293674 188904698 882206882 227308648 785658125 570664014 521381233 431805377 270686723 688001151 523176330 564858204 979246085 144182067 892715481 98823739 7402353 477894652 512812401 210683325 282105679 909283161 337703052 758812340 284809294 378672548 104969104 270603349 105403333 258150955 986953735 59704634 538590901 170198045 858902947 896694378 508207299 203853716 951557440 600108117 638165821 150049425 391527908 900593610 187303967 272978430 554964407 343629069 59742469 911323306 655651085 905141438 595980852 330518099 60805473 844336366 91552673 494079637 798535254 737455123 943221216 138232314 948068539 396605957 248993584 287324918 583719292 997961997 386875000 347583712 8166077 374641878 692680267 517749501 439831225 919789432 368421338 360932209 358373601 56559214 393859080 304100430 995457221 499115937 756600412 563257490 671512865 385457240 142683142 662051097 896566488 868937294 99117789 841883568 499101176 959355548 83547742 426749444 85242547 654068940 504206514 763384501 475346529 391772103 872987048 203057212 825501321 854709988 326495160 909941768 308448724 277576414 408552192 3375977 304246039 644988127 974997064 730156697 129327691 151156080 686689791 945520052 557431702 412466568 572339516 946195914 780652097 854411653 137830590 272166347 44258241 939300906 86785007 810246541 102020785 816097191 496263643 29427925 479296467 207682703 752290873 678174793 101105427 442226399 582244459 509425787 492750467 85208828 805562996 104761061 272165729 759859895 383524875 958861033 600456461 10949699 339936126 649119950 859242004 530294586 578418898 525019846 963980074 715809702 110104236 359694828 436552235 951107829 320871263 337103171 413374230 869531382 210513885 139135148 896322842 928279787 334477510 63440386 378116491 444266105 826856804 923532793 40611039 332896429 524198054 998783792 165298622 811116282 423666210 876325687 581686770 555043391 100964121 355218810 520148335 205041602 294543727 540032084 27168078 733241904 901248180 720508422 36610773 74090652 907847971 470412218 290629231 647562631 647286934 895776384 328968874 469882325 658047896 696546898 932903752 783072719 935821399 750986000 338185258 299922481 101858731 921644934 272816730 561140499 459682833 181464163 180488463 885765373 832871091 98868032 917968031 763772378 282340445 745449888 819382671 242141187 658938507 526479852 153132938 742340912 554022486 124394612 123484774 247097741 668962188 707981426 701637917 516331681 377172889 603041543 431348944 985186405 467724434 379200060 761920975 523412020 793764411 852603907 501469831 275495893 494671096 717096245 256399511 722409076 693145304 895620242 989712834 22402471 35257492 765955524 107489523 677594731 860139147 392975967 486005564 528958500 837745604 158994649 786773724 828784546 147267821 381179283 219400242 123537944 569802079 206849497 428154570 125180964 95371289 816937688 193093722 638377162 623208128 33660591 553044922 789051002 141725862 439538523 430373873 200858120 240708546 253638085 637292838 44969395 224964531 47757504 334087599 487195163 210512575 6865414 472377092 832538448 212449493 430849846 521262798 236248010 391498383 619152602 147417043 864098147 307088425 223118695 891994888 76367969 780700813 57173550 525318282 8299121 327787591 577126009 142712474 883341226 700683410 967706218 527990946 118454663 519738955 557502489 396454458 949519854 36520186 778258042 210290713 19660335 410033103 645190769 894812964 823002619 851716255 396074437 758988134 949215856 322618603 802022441 427186962 848147733 836450008 562471479 839620483 229727958 378398266 56248941 62412348 185826568 336569220 713152568 243411947 827041900 461040855 949771494 217801056 345237027 212753656 378236596 516551319 817990330 637773914 4747713 856951221 113953577 113119762 291457300 861775875 428794315 160434399 134580131 604327157 508503910 839297064 951462210 224396070 92459048 11848959 91223481 396789083 533620390 677574937 98482602 876274045 587913950 237299669 210691501 377843616 502349108 656209211 993908020 265821952 337100148 609169144 37093286 879853313 872983510 603850600 790067530 698817579 222942709 505319047 76267603 768822579 367943129 577307389 47695319 592227828 27810026 141706518 666934490 489642098 295300357 363309521 69209412 356005338 402619233 523047876 870970087 636829050 125862308 966625342 582861948 395889618 671934684 261959211 26048676 913540484 913535107 185087776 813427944 817960540 465671535 954320992 773654201 352986186 893288166 961484753 421502067 772954221 190528410 609520899 207830610 736433670 820695710 834379819 752885125 978025344 849042542 887288104 306248472 843935601 924504563 272095876 327584523 144858001 39522165 21136494 589681463 337828804 797322156 382759356 769438315 483032856 295286965 325085933 827682134 846195900 835902229 683096360 992646034 315189521 53500602 672273215 233981601 801079442 874757112 306524327 414711531 42718451 718424718 384742015 302914755 282852353 957363871 571226766 393258335 283202233 213395899 160132165 481587168 256828481 43760085 815424440 988847700 314323166 636634698 613488300 202648747 285698314 853093600 148157827 241871291 181164638 10260679 552201295 87312967 460599450 415214481 611841477 632183801 413954223 723797562 584278087 848975456 380109739 601825322 37016281 531919352 541993933 348767791 983371820 249340195 122168181 997383037 727596441 362684197 762128945 842638510 613499932 788388149 43886003 425457356 275463518 88938345 996589270 275210819 526232753 120358339 791782557 756199398 492610567 349229869 727794484 660660726 753107713 277752951 429711088 699251989 729913318 750765915 695212873 899318099 336318121 263846265 125135845 666372897 663771613 558806877 615568781 445530720 881734081 859136885 699040564 618985303 120422206 783597852 715366648 880245164 814460645 950051221 856169243 206084989 961039338 472969991 731980551 555608129 292265775 831573379 143569489 304776159 608373131 66058755 566743473 80505250 118526006 937601894 671047183 172111175 184634113 722600314 685238642 58713058 548346390 674879469 595426320 461562109 43988897 628745561 720599876 803928452 339076970 837509695 516701843 892458190 563846128 86637063 883617442 704375193 702660941 424637444 245359179 798981 333385803 883106928 585129349 935211426 214913878 757059435 391447155 364424296 681789832 119542270 975148645 356945330 652480416 81806619 420572361 826817604 305487109 445380250 758666812 697872461 925272260 312729660 861497730 719646817 973441689 187041455 359936137 542067326 160374239 24713853 749817694 607617802 826594974 167145765 187697473 210130387 397795977 728070149 638679443 163568906 790585330 376743785 693216990 30658640 163163866 774123391 187482075 669917608 811199466 607295331 350875743 285274755 237025648 262683155 322998385 380473522 850245732 475375485 745468728 300380532 899687268 59284332 57040908 568341102 899948983 314728609 587082601 719661231 16794190 917730743 127186413 297219497 98162366 488267833 351791461 113831997 883600456 721550744 671209926 968655788 837970132 991417393 185807402 357542567 971091951 257763391 748916695 657570881 735480274 507756273 611657013 360197880 63766107 494738258 202546390 196110768 118297618 155898722 664982648 582385338 193444132 133035262 559746049 307703497 134161006 344105201 730828917 28683766 612771432 434146283 651393292 713985230 452183104 775389061 142880803 704639289 311311041 688084803 403894328 405009294 772780899 354362763 464349946 565022090 263658820 922830510 442086971 52991826 473149999 292885994 8043254 495469172 789504912 750157404 436590671 942188261 550329727 304339471 938365585 574898177 600498108 317503219 148759087 668228495 503612078 248089569 814588101 819134650 631189092 120941467 88650772 376281882 631116180 908759499 395714827 635949482 579609761 360590850 259467449 945022930 20066959 644899001 53784924 909651036 982391820 303611473 642479961 939995777 580308083 542228498 21758007 363293912 586413760 899294513 627604394 855165549 391199391 935942594 759018640 676808106 610445146 88531915 232018922 628935524 367104234 951073842 839815141 155490267 901023983 316580813 73100499 460774321 480252849 286378062 302456879 715834610 852659482 456239965 977421722 890981913 478671818 85674365 98681318 484476158 377655801 315252005 161775105 330294250 981590674 793376170 991967750 904104072 497400867 580984912 431322682 792747246 865564130 292513601 912985099 321192600 726824113 601966221 53678341 627748205 335327764 919484714 757312489 518604473 579495228 557361149 211049881 915284529 453158402 28637391 229579808 503201012 618477538 731530064 418113456 549175942 782853894 880788506 669727142 284237269 664831292 998890414 712231303 691613749 55545597 611360630 532158457 830934117 577717349 104200387 330285010 949605769 879035962 674078157 243142417 593067052 159869680 123125429 855591891 738961224 179914655 976646279 648081253 788377400 954862336 985565746 552189244 448345280 100122751 703863696 603169267 516707857 41060651 324863587 911243341 334217147 757933240 447745360 955313202 154177983 682960522 669511919 67503037 402992256 323181221 421423796 209301024 169529294 490438328 475116036 79541445 105264604 88548124 135582500 713013301 734615115 354906065 415495242 950388003 833856794 414523771 341654156 577786729 454046651 908059755 783502058 34069773 865526783 161798553 377403218 127871289 429314857 934359971 427358610 933622590 366310105 118695376 792315492 156693405 627448352 130993936 711223912 999145203 281433712 777958652 17512747 878495502 574594731 216191697 642606617 897571298 382628880 826255479 995004303 418547337 789914962 882425213 297373133 589028935 66059138 573475355 378237947 13148039 414344481 354003501 900986156 505585884 534316304 921755710 761031514 418826242 73571230 204373628 461740133 184135387 406704514 178760129 559599380 497099891 468948184 393598087 79294494 588525052 129519142 662473718 835347735 920956373 957199705 541407458 554023811 45732989 75308740 982402750 513559496 130671521 234474535 566779563 453624380 477761300 717002661 414409839 384171543 274245587 454544077 208113019 272421494 329155837 292562325 470442981 261086567 469368547 989016407 506744685 571694808 235811315 779317723 461216377 515741607 254561739 214128207 876332824 911197328 976563245 179331140 29233669 369175358 985160708 372853435 408814490 909414725 797527654 116056856 290894051 953458969 582631820 363122731 547702412 691082526 407556059 519467811 664137197 750552737 657109722 38911139 739729415 559951565 719352898 224836014 591339132 434867132 24796395 375431857 896656034 706089845 816968150 665841283 301430383 6875867 685297973 326903646 250248572 456986304 363679572 912860139 699206169 645974243 907513266 623224885 996302383 688937694 353980402 225058993 799060056 262434110 332845279 575381311 814710483 537969780 576793453 947503646 473548932 960628185 237179317 586036995 534386174 420889262 277186045 580783102 314310779 868830493 883076013 320656528 103229651 682574132 262315099 953775770 265700496 756522995 445822147 486005103 907425508 717067317 580025796 194852029 615657381 147037636 332784492 260514726 595824720 774378069 453011952 215770031 40671503 604660860 56659112 621962180 728732590 989906622 602099483 231489339 982613161 784412804 661043185 899595473 573787674 523571488 273321469 520141226 267300556 916715720 28865853 193818711 206459692 499548577 963229649 186150856 813541461 615537329 825958663 312384607 442708736 903061737 497535569 336845532 920408219 814778406 825154633 915293554 318480433 514998311 315383611 287039156 784424313 983050644 534027902 884350111 461234132 99803393 689284792 821637017 848013640 939246052 209776544 957263725 593074054 478898595 774918296 662909520 800834791 308114051 249049130 248129509 719788388 374765236 227132171 994033706 524702121 990699862 118259475 285348496 618929669 525383013 753616968 780974317 382487404 240869067 34772438 635927165 20685952 250101081 520364305 667750116 58588809 595891656 807102577 857794865 100701301 689658554 169638553 116629209 64812506 862095290 123723606 902418617 83522555 105752120 962387102 957626902 662761147 384061581 543749513 833758109 582743467 261910264 90397529 867868772 895696643 205077159 164886651 247400681 619704480 961309863 693141378 119923727 933213451 911021811 141113899 435788324 301068917 192673642 870759509 291739102 353287089 518371546 191534353 293161309 72145731 239169521 779786636 434288928 148943438 476896840 519002151 242702617 918620066 574126434 813859681 59253659 403800763 607775656 632793833 870633059 713383600 873850218 695685262 184108952 900072784 311387106 8547150 853478086 213144071 558812721 722281549 629123045 769865450 129727584 952856530 798753357 441113532 216711264 268869206 867441608 317251812 381203725 657313136 92996993 669119086 447677220 554729188 250434318 916398868 223692883 693661600 476811629 240666420 353999908 866780340 363498497 408817112 188099865 977037917 102194071 407361451 785616271 293985021 815974758 528430598 627440844 38895136 523342860 713681387 117866502 873286008 753952399 170064636 855561047 788449764 72835417 571580044 972788925 50790500 943477569 78601362 670914337 905867042 274435203 407513773 348030294 240174708 297738694 89836835 487502615 11290582 324966679 824189922 478517248 540805864 734906088 960682372 229682848 103449208 264968477 435896907 60307813 319227256 78757365 600056599 186176934 202487811 623714591 826980988 946986154 172644957 268003504 810413491 970603670 563874800 249930280 804822932 363222911 993475664 309637995 471220655 542508634 687057466 606787010 140457261 377624587 341706894 332602088 446588390 108187737 404026715 859737081 397566300 962142966 866104528 949554297 730849205 413500030 710415949 318771538 398479553 316015982 518315345 91468257 341121269 617979700 441764488 453970141 922236016 62570781 945597639 433356141 99753981 393223013 487696393 82078238 694596105 810078762 926731886 475187688 322508715 405621368 143725383 281629476 456093088 280065856 534019588 249571483 569197908 542880348 370340670 801280631 220463061 387588491 870157758 999904590 50519769 709996406 606935403 904842017 604708799 377462451 121374806 368165454 56919694 990071988 997948865 898799787 404626679 346728160 846143242 331502181 653753168 914300286 971007167 444945183 829747097 912313537 966356881 455142619 393844345 381316032 645732188 422426377 637794876 200885629 700862503 369928058 421958624 558052832 346515735 171239793 296071679 80407743 740414850 159839375 519200739 161598157 709091812 465736675 285462648 123704495 699087584 265855201 232196952 611192813 102545985 375523430 770872770 847326200 515659770 377966523 198595484 897857323 991811367 77021064 857111160 640885700 986204424 738454758 852556938 565275888 397157903 637494865 166873523 348725697 904341192 175501999 655794809 709135914 275093234 833581643 483498253 939290643 428095088 501473754 627235907 238109247 614781517 232221055 566584478 156195172 435835325 201715129 862142788 450217755 265080088 355009655 871447813 257101541 625803494 33488401 629111639 858543913 841321678 577774654 917751129 706397241 651924137 781116714 218155729 814798158 545834859 107030625 295245107 886145421 653980730 956018644 434686609 617669880 912680292 627876581 334604461 560869769 500725593 313784148 680632302 686910994 518816183 493791829 84493924 988927832 853609534 365953912 236981445 907221765 971305946 229393852 406829425 618766503 658373538 927358599 365405549 686922425 535832012 771637924 571933546 497260444 437648577 840879434 8054464 940921498 895647237 542334233 403897455 507058403 672655185 703764753 715227674 452400272 862720383 653243809 95400726 843674021 978349969 410227615 913879382 63918856 901995955 717269831 31862394 225285516 259456567 250106177 248737995 85549290 753929883 117074839 639620662 448712898 852101758 49236160 635131219 804020128 723647665 641282714 269289570 702309364 203370531 844283240 718795339 226717460 988163825 735485659 712012186 693326919 814215516 764817155 151563658 573088690 814834387 337229152 769823991 639867241 591869158 703628249 303248235 919666787 943952467 945698745 350965780 565804416 78996984 443817653 382854857 388280975 183188969 841591274 993191176 510373691 552984656 528776929 130641660 946259489 168540302 699954307 465426545 599757761 571938341 113858599 960419808 363071362 103263678 560916104 59492711 609202362 946966065 220884177 51369423 23085984 85673844 162743177 896884612 205239381 858024879 417032617 31660449 743007714 114792489 368938890 618482915 697506617 78725719 123235318 42362033 619376690 814639829 34595610 13978650 42638479 430183015 295222664 557933272 853735675 784515829 588459328 257133128 929716740 59988117 597995175 148555890 459999013 371688577 188413319 588964614 521586110 613590557 988582936 79120986 368695325 297494516 552108536 691980908 345349740 375997625 854092588 946431462 126968267 642819654 999522081 668077335 118119221 823752355 446948776 663397620 378507417 393770231 315103749 222606878 597294019 946160277 843895258 774528987 12531568 373189113 6343220 839825181 170029632 335347655 191750793 677310838 659527612 7985611 772162484 888205355 831328598 996367348 28955390 358265632 251148649 532876644 530245909 492576229 791732786 558485848 652348169 359343795 292735709 739731521 332219224 455367012 732827257 177868461 85003501 348460677 994895106 253057627 273192463 306509378 72389209 213473067 566014326 366199156 764090693 344415787 927124289 469580954 839176312 307144844 765574128 816095965 583409548 707381418 228277622 964165895 168487428 86527755 904443428 715860626 214614086 736409943 702900155 787248286 582198439 160949089 415318622 780401395 771952730 132600871 531909529 439690492 937876615 839775432 650901348 87215831 280042291 963277716 479682843 562517567 388420177 392252156 412640899 823605147 113094841 914025116 47100617 281965305 877438766 573023798 634467201 649011477 93495641 137610935 85603757 162623051 325225672 83140912 959872172 318131107 413703161 26244061 548512083 248011722 142705483 523282722 697638094 20311578 494764551 756037771 141794755 348250515 257096031 889827784 496906545 340320730 336520042 460348345 321046406 953498686 81460269 911954269 696502684 667784379 343247503 892372704 658605483 107020520 980126562 868912793 505790042 656994581 31852127 956093950 86046136 978072873 579574567 391047350 216342585 927136192 589514818 717686666 163747768 216291610 230267939 642698606 525692543 551293980 396217891 324672639 702553653 689196376 259830148 899510014 373212404 780710402 617992303 416050775 592212536 39977722 855739634 29386780 895357928 536355273 796160011 908608266 919904590 936009627 424572567 214102532 634333728 806104139 789700194 827340564 878057854 437637461 331710238 188296304 944283883 120384738 707689827 298396017 470328659 515928770 349669297 373442457 610875917 144285036 785794418 965956502 206428119 114560253 716310008 486385723 216891346 31425086 121270141 406538625 983575186 460941214 671224863 307309964 804160776 638725686 349995243 772186539 549228433 467076290 142955216 627275082 508174581 400131754 871467945 441599756 495843164 520876801 387822900 885995950 797934947 210945912 204845085 804875041 370862336 306042227 522033908 400380786 869076125 437154041 381444917 358033377 64271876 613994935 143544895 596675536 143393132 351071236 634088536 526472136 416316530 656447456 167529912 323423361 989176092 922146294 296853877 350986194 863031511 986154129 683311758 550684094 757784438 692930729 657984750 95223157 641308219 596102365 425138280 108130884 250507460 632362613 228174260 718071469 37286436 252057183 42131315 937949517 380645840 672806964 539104558 243269619 232929957 498821427 156029015 802407568 558825957 660322115 356227398 216583235 574466111 642159091 888592959 767674443 607770827 114295162 557472871 331040021 902786561 458631607 959654611 110298418 864081611 352608562 625486202 556598371 241932660 128988698 857803326 364162181 346794162 377944391 416569323 467701927 841601187 357709624 182915884 702968317 303463883 868029714 799677342 51405533 149966358 454508966 280465092 930746831 381081563 573813358 370028807 415914111 784519896 904111236 367998130 655375547 856791857 524193203 976523014 211365762 455575666 25727848 44227361 425312249 981321362 602143164 116892939 25694311 480575729 644967022 180703417 713940800 509111630 414516196 855083262 86809122 584058587 234117679 605032611 380749006 957158698 865842181 441662282 971457074 111057725 908180933 750690442 259994972 784582772 387285110 649370328 384418956 280739231 805078731 685405848 135178277 420894195 777061909 188733204 677391792 70750221 409296729 645853563 445885152 606815472 950824504 986534373 792157330 44001039 974013448 874468438 63465931 184032058 624048318 272971190 376066736 840907697 351462903 901532889 134075290 321739542 569604092 483572595 976136707 979317115 229390525 617533225 450825101 538405713 364638927 645080195 566606597 483296887 262868082 706540530 259652955 685596978 113638545 214331600 589862572 146930992 942671797 524402272 573453631 335402630 342856475 424425160 95376506 916563123 451142556 949622298 48819698 985691031 290885317 286723411 151592547 907882114 506751427 734621006 248653998 461817132 871896173 132493784 474446050 773262000 699573826 413697699 475780398 758369939 455868266 441365572 146186995 577436608 119361972 480930625 961651630 697268114 380471193 678958848 537249293 900635330 301890357 284015319 681408228 396282487 603494737 669705976 434029613 62687035 437392987 891320714 244987915 470813703 606308205 795717012 727914443 689436983 984258882 361326088 644133598 355344272 997295430 673702590 515663330 257137473 265504390 816674168 99791257 123535068 669675704 751436001 86640619 118454881 724420415 344599943 296214768 50554930 890354204 403465444 392169954 615277091 101476613 229637213 813340706 236361312 29256270 178440759 774115391 467765391 918432246 168573604 833754857 400965806 595350181 28162751 411694589 940280878 672441003 437848455 577499004 500014820 133044476 628099303 948542100 863937550 476800058 526558894 677308566 183115601 34141613 795094936 472479744 188130743 574344258 719887942 182513012 849029817 983840147 817669694 109054653 849808179 580639964 138320118 590971341 25465961 327938054 451574981 860456385 552028427 92087457 121147882 874785242 363300396 511233760 546281875 410028167 171284043 704993448 812460236 138396248 809390154 295155326 964154771 716604683 539127930 53609107 318710213 874809473 388161935 405057977 233977902 471903172 889088420 302172276 779307905 130712587 651796802 451138536 869947731 473621934 957896276 864642793 981783335 792729908 804066608 568198891 515851620 898332741 91373973 234624267 227491425 638205109 626044323 639295253 428753746 76003198 457251565 347222645 601285979 864970695 7436130 89350979 745795205 702384600 426936423 205591870 365310655 144876069 109679547 84530897 245486820 920269897 118272655 578994180 97288119 314434569 825624693 802880405 167255263 10574412 152816236 967292382 459499501 608430634 826165210 337529325 701555544 476182495 58078604 416655976 265262473 356153288 266926775 255040175 940256192 65818484 159156727 774275516 906493239 211790489 240171602 147804473 566985214 348465164 220609079 190150771 457923614 364433110 125480056 421212514 713154175 960810273 129748820 526936998 634799596 139647805 577567089 245672836 556172839 41840806 437234907 868866801 886493898 702640387 308157960 51548797 808061029 952614173 492699860 618125933 480509794 275856358 398692231 785762210 638368032 211767162 361494988 621521586 849920221 170974750 216778168 888141009 236659908 680289085 412510923 113533151 198537444 959889000 338416359 8852579 233309242 693798490 889683801 187056778 52060580 892360698 885439448 679647535 152834284 89722191 872651651 82277326 82121157 308293775 174068699 975318672 825061062 806527765 270908881 469271367 316251763 805514338 169811128 640196708 32909361 774873892 943261519 579721227 20110164 69784621 646186680 694999296 737279509 21314424 339897221 602577847 896090261 499725098 71840934 340868419 916130780 172963469 327368319 665119331 283017951 13966611 726755790 971591809 787070837 948656472 512812229 847732394 8863068 694738464 100114422 188284057 107295555 987158870 709281120 596927401 225327033 741341967 113596778 309961186 791754292 9797251 61587935 827020533 162249243 51541269 159747828 37175609 17948082 196859733 346236488 366680235 476440367 992573936 980324831 672654324 563115945 404239046 400432934 132036962 320719391 379976152 622537714 868531184 67813501 740813907 478520195 618401337 229527701 662567304 836738939 616890758 205921053 953172980 519184105 72976070 299372216 676464187 995934017 730374544 260503792 517229092 855961953 35235621 920840503 568103848 169678478 427489128 982245346 792599007 807882102 142179309 597328695 288659981 419794732 556101353 712781917 162509979 860859954 936882749 490177127 67912223 20115304 705585260 930532170 253011538 26071327 627343787 235630316 510961947 294308362 434356426 240163349 22235523 506269767 957050961 337327986 818357434 371189852 311249761 241150116 508322083 861266484 999239883 298029862 745021240 905642023 197897222 971390821 790182572 304870385 677765170 961212334 161293646 516433846 140598548 95340862 968143387 68435205 210743328 522362679 351778868 130655699 971354472 870390687 833120745 58383740 842013871 546279526 793379753 642977225 289054299 703871595 996106511 674990051 837004410 259172971 780714976 422527326 361566148 93408272 551542536 180159293 398495387 363269356 875638680 371191523 58138625 913631609 755378639 410958106 811144361 198622742 288197643 593146138 34062313 752830478 136603611 958162305 903895232 609530000 146968817 73562451 306238678 208865720 609522727 740367613 618136956 184132487 724286594 636295509 111992487 721395428 432288303 51640985 19359733 1668258 169375103 852988781 837836719 349641850 549903851 691796444 654301636 314949134 76991771 699191904 764146378 891291108 985028055 926422740 225920772 138257010 52607762 892019581 71323990 130808078 777409770 42753031 636691024 236987130 525528993 453664394 240615720 956896350 936984736 304505475 410833088 484094799 723598717 736903125 298173599 513610947 913941234 857002446 66623473 630093210 984682980 666017317 43322512 203532195 969094237 422735860 631924219 898577033 137472655 546759365 323126361 24533736 303713750 420026752 194464631 243322690 641422775 175571327 770133968 702900479 515028701 466688890 179760001 177609073 987279382 204910746 937982291 309000912 139261285 407813486 195209651 431263551 149555945 815465190 382517688 633262535 826974188 652728164 799747106 296286550 248621543 656896938 575447644 409331659 872534383 298897382 381022064 402290914 690992968 136251056 222986008 203362630 742242659 273146880 494699699 988704650 697571789 900301888 211440198 368390949 454249410 224938300 190407044 781624186 658011816 796365096 790830786 33716433 9476361 514244515 573470719 713098075 863345048 480013486 436637667 691282482 837594672 835243452 154089149 217164888 522356437 825568928 198357380 962662324 68302003 102804119 449104087 729938968 32588058 337583940 800585214 219217472 927235721 282263992 168094185 694252234 604084128 160614761 676744750 549011777 806793262 136458031 258810381 362282774 318760485 483584594 131001197 69295264 578431644 588037504 57197530 449644581 87498973 858598351 891059601 76015817 345129295 646938042 359105647 248567711 972927620 406126120 869219576 240756898 334024251 414789989 320821601 394699186 536693846 641900583 866830460 347095960 473474527 141469323 351438028 862015239 551774730 201719060 378168694 156721046 149160756 661813172 979505485 210080455 649140703 358276284 974934978 289640707 337212850 238561772 738605561 444599964 254379656 381160297 876271542 29935819 384323079 301695166 987662955 547400880 208515908 93642723 546122798 981790295 477804186 365410867 365958848 315187119 437132237 519151476 27207813 625292688 185437301 599622356 894530446 69672641 814294104 963257320 935841428 258865381 879986786 243297196 594049013 559100814 298299303 697673097 161086132 826506040 126176862 213183558 59703689 388345924 872603885 559494942 578436034 786198523 214583006 81769642 832706660 50570636 349634024 226369524 104700182 420572946 292898529 794862436 179778341 180820625 292787409 402488787 2371723 211165933 967146463 615054204 778565346 326904 116108382 640832262 563092599 41886319 356386766 244835967 78243638 160593648 634128849 497838168 983334841 974428934 453688622 470319730 124595260 852375329 38780639 862527761 718213033 821984924 582336248 986218466 676050575 622531255 480705985 823639293 698758689 292879259 381471395 188375003 461474629 26144088 158331186 927959139 430098301 682212074 880295467 582974946 577908216 258105650 683739246 615171600 601125010 202821623 885926410 562046982 549429959 841229549 74386735 573073740 295408318 171992234 361525048 597187790 455415368 117615538 446986668 484278244 929588189 442235246 352761651 444108615 308583831 416169262 669211809 162733599 977633858 336331564 568802289 409404151 78171725 179783051 181107529 909499078 565924559 135962959 389595119 406470122 11952772 384937326 40911194 291311911 595968215 303667649 357970980 21914283 902490327 799325190 938974994 673251594 686347320 706831083 157647373 951498306 921567324 115024124 616203048 294536888 575645005 402148788 599055267 409019963 506034356 224068728 597631194 822520060 392770285 424003471 65968991 566448796 726214643 179530023 339797473 865389856 132698738 169569885 740352058 395866613 811138742 18040369 399145586 72249071 776298936 624370314 815801779 555084619 320761878 238339902 604392269 563175088 248543001 671466757 630153661 621211178 424654252 713231997 270367145 5505328 610357100 40601394 886690009 537676445 520894869 778309268 967713089 740305847 402488334 681502975 473821691 150145324 25560680 728854193 8936013 854036497 180454616 23392467 942809760 865881826 303206720 630420089 586957195 569244806 913694758 338184603 758042818 368699211 869102521 758498841 773971505 459437538 57252559 641067198 999497437 743044717 608912872 64537659 716904955 326254445 466192431 997379624 259221479 771885266 88647276 626985478 966676771 747549427 577241119 852354114 654601563 666426760 264975967 62164777 888045666 566544573 929674999 612379639 430007091 610268696 194168663 11893706 196236019 671788434 705668500 606846128 925503467 779179659 443518320 218898583 103181968 968957122 232931664 662592086 988687996 590884200 390778692 205750965 620916083 4458003 504653828 258756439 391082591 984977343 519167471 21054928 832778324 585780174 424247307 537472152 260633999 428528917 549139207 794120724 609443952 786785474 536447037 337385353 32741508 583762807 209504937 974041128 997423999 348133941 995674612 985479180 746355772 938020204 319509358 383383864 718223804 152723952 402442510 422126227 389413420 609902592 959454320 915989231 592384481 313898048 813377505 657647106 666134613 481173183 146831690 465578867 822249257 891932144 544826694 43332038 87154984 361492912 676288021 91521392 703307594 219763270 178941085 988552139 671904167 801100127 9463658 548955666 327408256 265664270 274708408 679570549 818288967 962036435 307545702 579832578 272471945 709196435 730312441 960661170 770685955 561930136 118312608 832641128 927585690 107821469 73695540 847368172 534226007 911075256 120271924 765203184 678305903 691923831 203997126 795124748 461703995 746168254 129270203 850544581 886362688 446148073 752290952 740471679 513315370 800987315 865342031 632146572 19372490 790280513 993822676 558202153 259784478 849978400 840058248 111616885 890627143 535118919 139931780 289085560 618810513 161318929 189977989 359408935 411344238 457572933 943984626 80982871 293854587 331108111 414199002 460190411 557435770 383096066 213631992 721663533 687398744 837169699 355343017 772630029 267192614 521421006 115165425 768514022 606275618 698968790 541638787 682718999 135860652 384427121 737530807 704218603 149134931 767486263 645530249 132007571 703608518 682298673 120924064 559543334 668867812 227021260 140671823 182637480 732545199 745299165 260240525 91879170 148490065 596894623 319976949 713583108 504621599 842868667 919526608 665088872 765813651 571889724 691005969 963647953 897937998 483077273 834333514 350467269 125225505 28216746 765516220 251850676 27681531 335626941 901549395 702883581 552850937 422721145 859856791 970686685 939318879 570986482 554021057 507744383 169642132 105816491 512779443 834324211 312874286 862611589 381708786 111977523 671364074 674321102 221350577 636889120 635792043 775895358 894186433 746678658 763227257 912142831 845113255 892761871 27384458 858853222 334361989 649903706 349858105 495854995 584742959 813223656 777362183 230490312 405442842 846828832 616376226 844401861 369138021 152818006 830887642 709833134 337064153 69347523 728593328 261088529 802439223 819770502 146379586 50139363 714889115 709179049 403118556 254099073 544822465 91304735 916077042 605690799 273303226 964745404 665133858 958102940 478545819 340949064 93759274 973707741 410798100 766129002 7771387 958046063 634579593 609190835 53585827 226225590 237616638 829751194 400749407 212277634 538697511 842530690 547644051 347661831 150424406 559287988 544193227 290332129 367506831 78768228 987662262 641770005 606587764 55322791 956890167 573614354 156260953 143785856 377607497 25320367 617368115 201536987 632667933 436712996 59686047 159988355 538436098 748032796 993775080 446313271 553421177 797268129 421084159 259595668 329880863 829665064 827163509 111448616 492452803 668815503 296335503 261564256 114302549 444721434 209614895 532839064 499620085 656892536 351093992 177426702 836989922 931298496 934385137 938373872 871079051 313888618 324855336 307837514 393064574 929031264 128470295 196182555 281665659 770154734 308380137 606558527 682488164 568803016 987838582 869578627 135766341 110989068 622873153 51882132 979026510 632259902 724572525 959929614 485991389 711805519 785747915 290736500 385569652 914443151 46914005 892712748 109436865 4114369 355277733 239118731 671162773 211036164 700208644 168387781 330969834 965075179 941904740 262600446 183468517 693221734 307163866 565083969 31454161 971957207 325589284 777558140 510180384 623991040 493147564 548828812 780164977 306467601 260968832 531996462 615008387 329344157 905492568 328198928 125268803 754112419 68840339 684127423 311014340 778549894 469259575 28900790 867138370 421757204 99191539 356326230 506118944 900263301 5168416 15447016 331190761 624717681 706915260 413313951 776271950 518351074 424733550 680554897 219758639 443777347 522933384 305405121 554377099 490365034 680951807 38844185 468861328 69810069 46941810 360257643 939341712 547787367 716155179 688945516 787914247 490328044 19677973 897545410 839172503 758399903 443784136 368779253 769172491 67674202 740740230 101649013 141136727 835753824 541051188 925425819 109730455 567079267 526525794 818914987 843532047 96474996 35023177 808093643 998566694 547404307 815979207 816213261 282275701 431973924 50264672 538253418 680535477 87641589 540833863 225727943 632652230 532474426 920491347 794590697 985922742 791233297 72219139 282093955 267235771 74956031 514743677 446877741 92301611 30117874 469656721 210607464 290680716 134549054 164649652 367448992 675544713 929484707 676943627 983645477 760094197 839852097 549755736 543638831 444005068 910541739 876676879 539800288 218082864 566974931 243818560 758468675 537547886 64742423 703918769 352808261 420564983 444153915 740667078 546525379 62955624 551928686 36339344 564488575 965304709 921248071 530860229 438557469 744469044 128017599 144800707 341938484 144338320 192263996 37473941 33912379 497044943 713277838 783139814 965774480 225619797 775637738 316992784 281693570 880005038 620205034 854033170 761557054 545368206 70547863 398142867 466882785 319646417 578338395 433133538 759353194 317308790 182288140 325196788 612269248 670748845 318745579 131799407 789534136 264368325 399569814 402898578 366415371 261435197 670511138 565544273 458333016 643564980 641769983 444079171 877267497 846550266 533053197 484636071 474501873 488593408 179781009 520122979 845158151 38606051 255375156 90489095 813305772 569780706 663166995 938266312 386826507 272146028 284746149 734540426 198582069 336642069 288739281 327251410 433535266 937927061 896089571 93337551 718714804 523818958 345101717 303495769 37600950 312319185 985428479 710666989 89152983 283713743 805947559 545960885 546987953 904146209 871221884 858858109 352685252 297294666 742015701 405079486 31857788 704198648 711788652 506775963 776782886 327482878 940064870 464747221 139095041 249904470 463153491 229682143 955594795 873578021 358068263 163774928 122339754 4750771 794128701 674984293 922333556 746972532 710709086 752440329 500171106 103872519 99873973 582621382 277160244 978339373 968022487 244504408 983292819 83243983 349011139 907827997 550622992 744875779 84127196 479239195 52837158 881534211 575222515 835029506 790919476 81500979 599775800 458175787 225991044 373912606 896378187 688878481 623575625 168257142 2924594 592300511 669108379 108229144 283424346 944262243 617631098 155756297 994858905 64273427 728445137 399539310 947551528 665766289 789595249 971996577 500885681 323998242 668667153 489900315 205474623 447106743 544443732 406253436 448374343 819338471 883755718 294470802 897088169 168615406 352575188 850104402 19490214 348548536 996103129 206558678 5333487 436307920 563188758 346780767 508080790 830703217 990931637 562400859 811088925 725383033 947700934 116247642 432594275 69250412 149515842 800253468 657697466 973841022 68151052 994734465 472907478 743387525 881914860 519037333 124360659 414973183 943358869 888952714 291769912 733306898 29000094 146828733 181682161 950318994 137022344 924194992 880156501 853640944 885115327 633899024 551592991 839441747 187086482 653436335 916614773 681512570 675073851 883605640 157365732 984369112 437843163 760485311 311005282 326337926 652125562 55314846 967640908 998127424 361024269 650882715 780148329 890701169 790183531 779258446 645604579 515621924 253504082 517774972 67741777 866039317 182365296 811619857 831784879 588067230 911605333 298786333 287823460 581769673 815752314 239929055 478869821 80500038 652880191 21089464 927403884 56502634 591288814 151251764 21824916 429621559 125341627 376012807 349055670 845077074 314725052 629767691 20395331 397779978 755073267 952683075 545993226 199047768 854476617 604233435 731022159 32371933 260328591 620102694 877188019 394684379 11197567 382149537 410063682 218737988 914692283 269014765 350933111 202323377 527260619 154555093 226229035 356219742 779544608 882310732 579404708 935041845 862484 661095280 199388561 609254850 569624552 754581635 944633604 550938176 489673415 683475185 936989052 690431372 767636415 768077899 720269535 25293614 453733323 124553549 598526584 272777303 65310156 46122203 595273215 403820763 17631628 794319102 378711697 960742456 81610427 20245996 315918256 232442522 565125619 516635907 452273740 986789326 477144501 394424255 805408698 353228363 27061098 149205201 253173944 31242288 670834276 489246473 373291115 659502662 7954140 54077027 244181852 532381947 169262837 674456834 314602119 621120868 85685684 872719411 655469636 7950919 124475404 909296489 260533083 125263106 745640920 2273084 694979577 373343916 905236184 224723060 155775153 699276024 521204662 872795386 588714882 923140935 779352323 267594464 18767570 211683233 874247223 959417698 168842351 919079857 879805619 783955941 275122826 935013331 710211778 926580978 292978375 454490628 368534164 518243134 807163170 185832173 466365252 268725923 354630419 452345564 57619411 906334500 296483429 329575622 887744040 851679726 35610717 75308880 199339540 317313106 465343131 894013885 385756245 262272719 977021489 274159867 110308745 879321091 639809166 705473188 309290806 276685245 469652119 575228918 317413076 494623727 955678090 835060442 469862582 885441973 581303322 393916638 499660067 632162385 865784153 152412217 679135553 581980206 400299460 907419851 947678750 993768416 273622082 763494170 94906298 324708645 275221791 452623703 952143346 270879195 580638481 324017238 902269842 442304272 616882741 22427802 524593993 194256888 158716688 761419083 962131121 1855726 769196432 626746162 977108299 875405428 407977994 775678413 966721919 632977462 250743355 380122680 682605985 816380937 522797639 542569531 950307047 824046821 732442556 33298756 836588661 500749294 823659667 889857900 913236053 220633969 21414435 290731635 69117557 369990623 61821492 282678461 644282289 340828373 583378935 52277851 440044742 411415572 256514810 131194884 178851170 381600395 307301951 476598296 979962646 218245451 948533034 904935838 29564507 627305102 271116939 972598596 330088335 990167739 719493009 163216997 200436220 997661529 6489823 299997178 859567831 742959134 934161784 476563376 369418294 500611557 578600904 161256660 422314522 958378926 969988777 874859868 454502255 35238827 468728914 481384682 452792069 963125800 900622700 626663877 607379 376965796 986914308 643360729 367572925 491881155 150261902 613268415 633454347 111134541 511361770 668361655 531004143 559663928 498158937 532215977 42643650 558422687 753600394 895090976 906692548 999103941 762108309 520451160 797727777 756097555 464254709 790658864 937213416 431669534 487785869 763549996 953914898 105095077 778094254 869433727 898860418 743496837 49321994 68065788 631225344 131302348 497497794 283909669 410295614 4449709 306869849 901051939 648844244 421497732 924654013 82086336 392780871 828755154 630941760 321256311 433404923 115162694 480681125 545662311 744572994 556922032 528415245 319872598 809616216 839311887 459003143 63931063 570320734 438395008 278954118 843825562 76975452 460993877 244556010 358708167 761628229 334469628 516372726 87527582 832124399 270998291 626684635 790213425 672683036 28953437 851264810 341497145 231038328 785402053 212478947 208886803 203156629 684525407 513376106 986438596 425103591 998761570 394566028 845953024 641523665 333446456 598435455 586774301 218986910 328923240 836155361 841692440 490629761 945360551 883211189 831009437 442105230 873900493 97834856 512057333 389419979 545635811 585286867 451551771 961982238 76184591 929961264 397569967 904315739 367527332 987908646 470689781 289567545 56437027 606870720 725360606 687104347 88257322 562820727 740194563 376430409 419006343 349172260 341033630 844244083 664101930 736850193 866415261 987719477 136243250 449934820 178048140 741189070 312898785 141789627 165282976 711192938 827438241 489329933 712052925 421036313 164202502 133600449 752381286 610521810 957127884 90859813 901491919 354630267 609995478 41784044 347108297 656360663 415324462 916507705 267664600 610161820 153341192 324808072 513136416 949413730 125806785 674163920 612544884 282026667 480601307 51145824 648197960 975669980 512915711 389685750 608439743 676694605 983632131 51760059 315159196 191220275 560708577 617528631 309799761 825107377 305713341 756536419 156346355 91589837 167148512 835930777 847138371 7726973 548927939 557928867 351325862 963583126 393039355 670813353 585342769 674268891 376858191 210865989 344781461 216913911 993647015 324807790 186903858 292724600 904613657 992563600 722813459 394552282 628046558 130957687 966200804 359964541 318720349 630848853 606339070 19033002 108260383 516241352 294167393 599931795 459311831 914435544 245874097 87459152 995861086 643924976 988471871 459088098 258412989 681331942 94222080 145261878 453386520 739719927 523501976 295136539 661058251 991254216 239832652 972257862 765621321 622925926 136342797 842900065 856220984 914891847 72778349 205531117 160767590 214324808 23664816 61693791 905575620 174039214 204691643 560541200 90838124 724001062 808138527 650172738 101062052 622235591 359730448 538692892 669697494 481886220 838419826 575776178 90886293 486265821 667979209 187603963 372268701 578144898 50855238 818271961 728186062 589598134 337788863 17088534 451785528 389254805 325727410 282882914 831201805 974304418 313194057 339731799 356001446 949565130 740828240 593754742 711003785 888242279 793494851 62871080 851757663 746754608 471060287 477100993 130019066 944259407 296456457 605435764 160796763 280025678 942949139 490324329 806658209 889404454 470939248 984000166 612254486 792173873 445896678 825949212 719756592 413090869 281047769 752314276 985173898 81791327 375242326 192275202 905127142 114285380 597666841 410525405 299533617 851581925 3987325 752995780 502633596 531586464 888226955 143437623 647350274 644890186 973662960 151442065 681227563 805143059 509295879 940850205 969077372 559186587 970931406 229907469 536697518 695296996 388705514 351662457 846216088 743958881 469750703 843977573 661524798 622766304 956762127 381815223 262674637 220141476 608915628 574777408 474682263 214780753 692557007 275262396 942386710 147798770 170046306 714072268 651032305 678198782 676196865 672092409 506173934 982440274 180203496 538492851 326856455 814867509 851270401 816364883 99664720 418963280 191568089 397213213 200365585 718844349 259715497 344284470 289037749 674180084 934433105 430520243 785507020 214763233 557864533 608462218 799849237 608559818 440784100 57638561 78622832 854030953 791945691 100250557 625464810 940781019 368205748 611058064 986653880 933064099 247399320 900563381 515759410 397738415 46518870 139123627 984664542 714241111 602809701 343353308 223399527 711586642 816866789 31644827 849701020 597852365 716192668 408192287 737755004 755693648 193805819 78981770 582032427 314607059 941814553 763679975 478827251 502128304 608138419 363293220 168867911 919767726 323358515 750055196 210572737 404978941 729236132 101884560 292561191 677784879 990642116 240810539 517704546 205789249 889607405 463527802 97550214 349142425 27725097 297771258 688465871 913026052 561017637 940745482 990626465 71602360 838536248 992717558 810419588 966041173 814981988 739472878 117226031 659446747 460203599 583271435 606311288 679229880 939334726 399076172 464236137 326660292 501290820 506505372 927278377 943358779 537109224 20675278 460430858 191584706 250640247 659755419 108113548 262040678 328335582 132979874 584487505 442107807 939536826 228662383 405241377 181669702 418705480 249649519 753168624 655723938 927951727 369242879 317188826 988473442 593473981 732884575 526641701 14061464 184782441 496657847 473388091 276091589 910380117 257916698 938434731 542761419 518835463 486242178 817902645 392905209 318311341 719401936 892370875 748228355 848591393 110434763 343648583 53726214 364961758 843371814 115438348 956518026 764952334 625182841 327873128 730419579 653581186 461111878 821245148 606265900 498505646 924976121 187656980 295862109 741163444 523966687 587097572 252626482 812738649 612125489 742634310 232073529 760356876 248368916 439683934 885364582 974789606 661889422 439637878 70432023 491822246 698162578 219660036 157512976 80261044 457203962 158644385 217452931 934874141 133616518 147278607 516714750 727561625 402176478 924881978 457466756 180571527 545313942 685234744 18546553 245112814 424694054 140986436 434530983 984906880 832207086 465988543 180591942 622654865 569506873 225114418 686858997 278300450 482214201 108952916 168518583 32426458 46364418 678078467 996843769 236583433 179383965 990580026 272437391 248108194 825760236 829050412 824891833 890778186 578956486 719544361 375213596 681610822 683808737 98778027 954670789 491144581 216966111 435871575 599078695 630021535 870150218 169143033 906215969 21016529 481516691 571917955 374833400 23410179 410986768 213978382 846484572 581128647 173606920 775296994 850630495 268284753 949659809 194359143 972555389 172862594 823333868 854941747 779186335 757219808 387269091 423611900 463527438 833083805 959389286 163500202 655804805 51988620 378499649 890286921 600812828 885219632 234341922 2217737 416543066 356799151 461550503 97584709 434638383 401192919 683536971 933059458 233032171 93681697 606196860 651946093 552149582 521019564 196261000 367504598 808798081 47586623 775997867 39610296 732871432 168775494 40175365 833861178 302292707 426120926 12058271 807012516 943603814 198056899 609282667 119576427 619243356 701973085 151988035 896249382 815231729 961780923 275242469 877172895 754551478 865252756 42519548 121287613 402990512 969436489 982969115 726717588 938048830 714560733 101766075 184556385 151858738 392536325 958721083 529581699 903716285 436201746 913962469 481695624 270884478 930749448 907041768 337953828 760400762 440780174 247141477 203792690 338887455 236644081 993696596 188395445 234639427 385480232 213975973 626028504 850387743 754957526 901475364 895862765 867293277 287655230 182260878 663037296 910168072 174673746 676882565 19847174 649288854 387429289 714722959 36930168 681653732 943659648 439802142 363915709 513013304 843381440 112194957 926516714 26475325 470156537 333383963 890742599 998080779 166936673 371835891 385197373 836195101 306347479 315570212 135866208 336296794 109519586 926564011 862478445 586952974 677623989 913788007 616834372 491095535 401977123 992797984 683303411 621912858 816155050 53357193 260183725 942610964 676136055 809743674 182016203 951700427 314062676 312223160 668277714 657789843 288576187 184594791 291273837 444363816 555017418 708127130 216197486 425684660 677209162 824829580 777328339 630452674 772533672 400248415 786885308 398712900 763410429 531196441 644298873 693135517 292633097 935439018 168760694 408296334 614554415 411996144 375196759 774321988 28376706 761860523 598296534 381748825 235188152 746036866 349091815 274627268 755582512 343319305 727310487 210329839 219325429 478900407 226050340 949069476 785523887 812593900 345590512 103109147 629878459 766000631 63123593 635469039 252203030 849525762 78006940 790384935 401066857 215334957 638818573 691588143 98723586 90056052 329841113 678816221 920619990 717627333 883659307 486573423 596517512 251628 202051931 219583110 144852062 44671397 753565150 233086004 434986569 107537554 339210334 228634094 671991772 961628986 599773346 189544081 765733465 401436946 894340764 62720862 850923942 861486702 727520108 752421639 818065237 532700564 657216083 994390176 419664280 436878764 461429690 653922980 59878484 835247558 577845303 831225853 641383439 912448987 328835973 261319413 566685429 66147279 619697543 348456000 294608862 210129511 556005702 247494655 763922765 644929623 638693880 310321845 528484455 74852665 77535225 899232846 422560760 475122828 88367048 5698337 311855996 797646522 666967828 267756269 252673043 77204503 979449263 982097362 513825150 948357079 38203029 174636899 923233587 847742753 96132841 316621713 263550276 637455865 663437556 343866300 344743796 805673554 10505005 690672040 372289064 874056969 883598636 601792642 384969585 334092504 346981560 409380833 590216197 500087665 602105529 441048256 554905154 706998876 339922498 592173703 972767539 76167706 591936400 324342782 858106243 255469320 829154055 440985184 219958924 542578800 667672623 878051400 531892557 848570757 761031868 379951802 452688749 264975455 838088589 417564710 128395834 240103676 191264675 955570528 168968109 310895691 665620262 542675621 213836645 994060570 632611438 503265945 444834728 736852771 927192309 834017099 494095463 448975878 602966109 937897262 954188342 172608592 956730738 54426659 202293593 203855983 190180134 938370668 105512629 546912698 555620248 628591032 691480278 198663030 758146311 915788829 430417145 942357967 612199136 951040791 351326715 847053006 803651767 726242441 117924193 902455666 616037189 638047683 937766493 760759452 311456623 253990010 941251268 652798484 636581184 826390477 35580951 479021453 517690093 253384508 710784637 404533149 273024461 439073208 361691591 521288904 370006374 565367960 80354918 393043575 98908773 759494294 795202177 738537464 793960857 427041497 472270555 283471240 788091134 383006186 159514597 327502664 76725948 432262852 386636978 380840513 267138585 524963778 618460168 989985123 631250059 294005674 976134475 211025542 576439980 633346216 240214919 389952366 668886848 74349907 628661880 308341445 318143539 637525413 849488251 86666523 920968597 374851077 677716632 524711910 236940452 196820035 946811775 868141709 287514818 301312143 998868613 337695570 28174461 243018889 987136427 170516591 487809156 869013049 36088729 643691254 618924214 744220935 795677339 285950956 983912724 208054474 214585259 858630459 532932298 728104130 976035689 969853104 221184300 779265681 853642521 522028808 363869363 241573191 482652076 644816101 447486980 33336919 636418235 622594508 278456554 263810206 1036672 953662256 11433817 976334690 654141416 805114221 186195563 868851539 297368961 934289091 715901283 427086211 255160449 460793942 407387823 298876526 912439494 717571903 229942493 946686717 164625114 6267762 585884076 250356602 121941741 389792468 382362881 593690781 760576976 691565613 717760483 875469440 384794121 202259498 302700937 541056940 462750397 140360811 79050315 968745484 711869114 591846509 513750700 490260982 19204473 28178586 554063963 867577640 895398937 66107205 737047848 797792197 434080353 333320610 636170257 169559901 128725439 766857947 911345719 577285601 642178635 904486130 737788391 9531570 151059397 548628955 539566993 809108885 915010706 896799854 424364243 66457527 254646471 884192111 578596209 643216554 730991892 518264962 336847955 385921905 808762332 778593087 204657297 904763756 236022822 107245082 214363745 219379053 490853026 250042230 820159017 48007845 304988326 323418270 203353971 495621555 54675763 16121024 106308084 893351837 825375212 661363192 488663175 473297102 905858596 602346566 423220782 782034973 209638353 5769874 843446038 44441544 104388242 932428721 483761041 28070003 290562225 727182166 437638424 542133291 909377563 232185131 14840660 368209767 71076197 257535408 54585610 840685568 114019024 239634780 71385906 114811456 532210503 840566665 231371238 776914389 913750356 389853044 192161640 30830287 813995568 791012681 950372643 513616558 524174525 836679448 851238060 253996887 696368252 544058330 827852476 694813721 882582179 215195253 225420347 804916903 115228934 344993963 528302895 181178911 925354789 955497008 919260109 900705796 485831973 477055905 56003951 550488393 538524375 228890489 353956251 174731070 573440690 759566116 407253242 871342754 148336344 680468470 475939939 782715547 673854989 156218405 595704778 777993652 665252030 758949333 267280219 159249124 500841992 214464011 407393882 313581706 974183081 832116666 579024959 437214056 423110149 253284541 683990946 337300397 848313132 36966100 890468680 650546157 180973016 392093864 19305245 874187812 257253222 2035914 99020594 651847357 380667868 816524982 87035589 336317310 562696430 70453195 987966263 946612386 492084462 118659153 885465874 9337797 450039264 561848955 672966412 795575528 464987239 792553312 216518401 372859775 760410324 985209862 147916529 207818073 434652702 16434770 752729099 443780535 271293158 504949270 95092637 408814652 601528432 237472781 785923111 679329785 29838767 383894742 524649035 409959007 362607673 667282428 205199829 470498893 227339082 809141488 336978101 854218505 260070092 85691405 687777289 128398654 507630671 672951182 88574740 527699971 500057609 224493218 887063104 209201622 551169496 657942616 345364003 512944027 677313096 166994090 452109429 410176926 825420674 8072059 134330651 975364761 685734498 346964368 640492833 808582306 249913191 304523678 480281527 86209095 804636085 863510845 355764028 131526509 203198492 527353837 10135089 877983853 954594324 684131865 929542210 321210628 169059007 431561232 899892034 517298521 842072033 57118481 443784236 57971957 781479656 169851444 311487526 372855761 994312176 667286923 358983542 498089801 293706420 661085442 833912981 502468387 923988894 439578484 298943259 813110922 270956218 956904354 767283912 498768661 225924293 687729462 880157327 255846336 817412630 98070976 257772925 741028340 762243517 527073723 515473360 346173051 927427171 957041541 33480682 122111625 520130912 189315691 203237208 415173821 868057015 619096989 641597389 375956509 952646410 855486771 842615842 674732820 184984236 241565486 932140378 287614586 588073108 165031034 553954212 230638732 61554275 407407078 691632979 120703470 406367834 942454573 959715294 384758445 717793388 404985325 33966827 503549247 754360627 531805875 209483076 583730046 761137387 121922541 327408607 267117495 46990459 103565047 449042645 46076303 168282226 596773648 275269225 538037024 980683273 168440932 414939143 815402471 817337886 136686338 797178179 903752647 181148730 487571939 715599060 147712014 859831690 579252203 46183333 663199347 336712680 300318431 152577979 511424528 200668369 102372981 516255563 698974318 614170218 361641283 292668336 724826744 791683720 332952521 375348336 31713669 43400094 598437236 251203635 209518159 745338830 886216597 727307213 659464188 462517212 416783970 540566841 36987166 718119994 189787135 45345945 477110948 544461310 592982387 434757949 597136113 258654697 667960755 183910546 460084420 406606174 204590226 738054457 440599630 634260851 78291416 352353264 448253479 187296216 916935724 826835625 461974085 287432177 202105884 71273328 51990802 272538562 344991015 149077893 698642525 342235391 368091305 522059849 611038806 355449337 679213807 98794055 164484766 522468020 334707239 15258165 671273784 477563351 790893419 959405035 987131796 390833071 591458238 644156270 837343111 727786291 755212553 748076520 890240074 989568773 328857373 50520751 822111623 48472171 878906035 524229180 607006793 515517010 646247531 165796147 377935367 232695894 415099855 677580125 264276378 399279027 566110800 115019441 877709901 168088655 163678282 475739206 175841480 382628797 492084731 512527205 707941412 345028657 145787532 145358452 279220958 71048588 601338642 956767753 599400922 621290068 919600003 815059933 491837285 516393147 387300289 798765527 358334004 199452564 745261206 997293310 373280871 107714914 765594803 796267143 16219775 843551050 587021231 560421583 887566444 805499421 942699278 568448087 410934914 58946385 118296376 878111435 29883008 316143108 489950335 677455357 203677323 14862851 461591069 590932714 680238127 165885246 614538031 167848628 6556512 355338294 423747524 126397864 558540670 542987332 963444168 629799993 768572495 117687625 365506074 747096065 756763901 998334289 741963126 307352770 78589215 179260181 26890121 297253738 679669169 632205552 861815267 514657034 358643738 592296944 335581434 367049185 286710054 488013504 848926004 429240398 120465932 228906170 288716249 660286431 487685479 255612123 531742745 14512196 885523007 651521227 53997580 678520412 382029564 624997334 154571702 296678696 567012985 449215481 870722049 752497876 568757488 763549392 815951802 748804021 861669128 147694242 258831008 958247235 253457103 311103328 51980366 619805984 8369846 623390624 183398226 8933918 718882974 440054178 422080540 306333483 542219979 126122061 385653765 813457506 501703402 110560815 104794189 878925320 904203538 487021184 762052383 70417803 722340030 188208673 563636363 170159223 489348052 101578390 907506570 956315022 758582178 260548371 861216001 411972527 90440670 571259243 877950645 822244073 405642146 131592988 766899288 857678187 743590007 71651410 598303877 485505170 292992327 231182043 156117947 960303589 894748010 488497963 951148898 64767496 17324955 571494244 174973139 41444821 496007425 502276175 484687423 652634437 241330727 139578455 992175048 655613048 822484996 251375253 394462845 376232125 105283318 464327624 59960136 336530310 906929089 390893914 688173064 297563502 279103123 465096791 536082045 103658811 17098241 399156857 829211982 574356690 291799047 983328539 326701838 188237390 558429963 772114502 187716918 725490405 345993947 857889708 65934630 984082427 738442666 318350755 266572074 190290973 812466457 710148648 668198256 127756284 869271850 978306020 213490452 954368372 307790668 119090983 454571799 296031883 758024533 57039079 84942688 12533352 464415358 141806531 572424642 504215649 466280563 346938114 801196278 943681264 217399867 831995287 330822556 532957880 486860623 983628052 143754559 733948294 79197832 855542971 948925777 79093068 689016112 771105394 235789864 994721573 198168564 69358539 99413510 633642069 79624167 943566072 609826329 775960903 894252935 361170398 558606189 577263246 386516920 894749442 465947643 132226022 678025419 538682515 958117289 506911025 999921521 495463271 772543291 630167419 78484425 220224510 645081957 544847862 212213335 481911171 49089985 54290688 928365322 881060542 334608334 498275611 663396921 858187053 351314422 252367857 567369117 23441389 162245773 8822103 970793822 293876419 325347528 76932166 810035977 654154016 185879499 841208803 490753681 336612125 970833309 296714363 421841750 583822454 520955440 982143101 407775516 457913748 956388961 997628807 294385424 325012102 844782827 141965146 508921033 828009988 410027900 61506276 118009155 288398444 811431330 549476664 835006944 531925191 208698842 40873617 514111349 287797697 763507842 756535120 53613360 517531828 137543909 206698243 926474674 875927198 837000243 591463261 401070591 213444905 80184966 901689142 667499141 440001953 445332958 893504404 576830998 933079548 171337001 51738276 666583285 264485854 501269297 534911671 73749954 164541324 750007221 776525126 821237902 953509109 194986579 179132409 349658062 541745326 837059477 131036054 301117788 711606011 67785708 435669782 547919745 180693696 320965299 448167057 640165863 499595917 555599659 303823435 937376932 714677144 175380859 330111916 130086711 697703621 613107636 715984973 907677060 682554773 792955090 806018791 361156312 561214779 15622583 57627227 518665450 130196876 781334569 608988340 311231189 211341832 433164763 751822890 351588385 787909337 164714342 15468566 897015734 172097994 829587275 372704249 692687598 851743062 475831026 630736512 628035718 15098266 850899887 221355134 243149219 811960159 788075963 729752049 824784080 656667410 23242546 814185206 194418949 607844810 62396196 119208671 399450781 687179339 678601345 657118491 64340575 706660852 13191455 321449541 430506615 670235613 778882242 102096163 718276985 880713145 290877971 725685151 804938086 841583845 541908897 49791435 265369761 482159468 568629991 886583524 881892599 596738300 935756614 8137295 864768671 335443437 803949320 492152466 386491699 902855229 397230684 550200933 915079355 55682196 260799070 127294367 528510117 720088384 202414097 844573766 512117442 518227770 213138774 969339270 266355283 312792866 482692616 430816435 769959676 123817020 455204571 647377989 364244428 887741306 111986798 858549983 139188791 356458098 175733328 360411729 43396887 448407651 268453872 580878473 681662390 858127157 995762087 508466341 462411457 809302135 890714549 177226727 266645833 503598177 549107010 122369210 101443023 183957201 7486310 277852084 455369014 947751503 264798739 928471694 512882638 860281609 309533998 699630890 258581580 71093721 42114944 481632921 232632010 542039354 170002873 679647238 776949712 377081944 645842291 7815634 136932683 526919168 246710830 598692991 490653070 832024489 379317334 576391608 538046552 541661299 237341242 740781904 435559376 905028130 334083348 369500226 371263361 346229805 486059524 720557491 110663009 862121635 330157846 876427755 330590924 734339398 446661177 435346785 82328968 551731838 769896007 89411500 313940164 943259741 526579712 883642003 496493586 414180245 37613326 755834112 983760498 923886215 367539973 656084486 220878664 91492923 37966939 626943456 52746083 185751905 235690353 792671474 282386933 467296591 536622994 344097993 537396636 389571843 43417071 887575316 593571679 694737446 313724064 338077361 573804458 247113227 813366697 229037218 426015060 381733024 433409007 634279186 895270041 730151308 204170823 760745558 450663966 461718292 64140392 618230762 473263600 515306279 32266741 538919790 464307844 307822684 24622964 611709361 88524218 240154354 753096029 502874019 163980245 464996307 192521472 586272607 140305537 888510858 578414502 869828906 196922326 117830480 47701364 776239728 236388687 970656774 855583359 481041602 56110803 812308785 560741308 749895902 860171694 161081856 984547342 429521828 302047638 388327503 611962687 984496419 19856297 667876757 720415487 657380234 411453801 867517953 944742376 973687937 771464646 792913757 310306939 186052783 147880469 89290787 857316899 472676249 377525523 839456883 376529453 439912905 141731814 713992465 680258774 89379644 652737819 339185773 588938302 454282773 573474725 56481696 118190958 19480990 702893027 569028970 968902489 323801423 389332634 656451888 155768788 877306811 143370745 304802818 62121639 554744236 783921298 239839641 891619956 742721291 44241511 393074513 250510802 882996201 368146390 9546033 558491702 682675588 682265781 909263596 745907972 616275776 986831155 794519255 292478597 265367975 382623981 974269682 344252648 823428459 564879341 152968162 671584073 742927976 402362267 464244219 828202152 160563364 853587409 681595439 374017774 850910534 776525256 590979361 782635500 174834597 461750568 10108437 839139935 757146169 153037565 113850877 11385059 923842470 18374332 46021742 790936322 43730360 614209350 995094699 942719022 281675364 991454170 70401177 522885317 928985795 768773930 707345348 28145920 827508246 344735819 657152617 881541135 176352463 719455670 386393187 3194110 208959867 470977111 926828605 700077005 178986454 382246516 22138401 925597268 546512326 953638089 718228202 853208421 261207637 367923565 993589016 384083373 422619830 564506857 610528208 578948292 700990789 288301355 583899106 229138990 807564421 978659973 113575109 994943572 981243935 87615670 506445720 150894473 850762730 914989027 677314596 909748992 96231647 349785498 720327638 482615262 94438945 962183121 690019529 181261870 861078525 317868002 157993655 739601376 373118178 34971028 19353099 569381325 478500978 415546903 469002960 326557876 693758573 208905981 252288964 957838403 311053242 120560962 462526785 145284102 557570420 677188687 564315216 142657658 615253969 528558318 904251809 627010048 795407671 209386072 223850121 816050142 332960556 925826343 233153544 75221323 667341163 4933728 754800070 520731738 282041547 486986354 389157139 356682512 718289487 753671218 593594340 767876695 321956899 835556831 112296411 501138684 934221464 907764760 476284222 738398397 44867886 966075635 509035514 348595511 614603652 441558749 272774826 133794039 245723241 860757433 655005581 279225962 342575308 962118091 518840197 987347695 159472845 342791357 625429798 107564482 685782698 274933416 385852841 856085265 450382802 900819208 555557864 558637801 240438745 444758466 682666350 253364805 552626039 181931042 314653545 66381316 61605262 767237602 563655599 647330293 58799153 472515098 293076931 406268355 490278794 33306192 128711622 158372363 746501883 61005684 477177743 91408205 412126722 511946971 562432911 516694768 10694479 272534337 201849320 100392523 257053618 636157384 825353568 250800019 669246761 251522307 872064105 300312296 228811733 102484965 831885847 948165463 72075009 250504904 983875370 893990864 285605408 790750841 358013707 307638826 971448273 848727837 57131209 167489579 47592148 958246732 309678105 256865400 17046292 944582919 263163995 450840995 985298598 754049199 444610967 494888231 102803652 733653522 650500475 920541283 730104019 323080037 258310240 888651171 709645661 308567111 832308806 697065749 876223251 436752060 546717650 170024402 355433428 805526067 305511764 321730273 673561504 347970174 591811523 547089444 307737511 837731548 620584382 252056947 510018871 583506675 701172878 47204738 495324877 221561295 445084961 337687796 299080972 209376484 691011341 245640019 407327683 12339477 6285204 635481614 981572319 685384097 983993499 624554371 917216640 647689526 372926386 739732973 758203110 140941549 450431248 901556858 448407937 827754816 140145814 684887609 540184031 217568021 350510792 173371685 327360959 913791163 351163865 38659357 176949505 177264866 182532765 881572586 539687603 166779311 768771988 337551680 954639878 351112098 96992230 367229878 522473303 887733928 106928226 708985296 671860521 647130394 421848192 427600372 927807270 125145266 126392671 463795316 173570851 238181783 204607172 689905293 242543131 863612244 303588898 490361690 40373038 54324192 632894351 189100264 594991276 419355288 711700167 806346024 857560839 131103042 135284276 555855090 951662552 510450955 962467814 619592457 403048676 906738055 883008660 433618196 818744087 33875379 871450779 217663656 475551619 277978358 8581892 228484666 903949409 509842461 850094718 935842350 580394009 859873370 6240867 129542604 902161970 100768849 16094636 604946502 364612195 619858177 57142789 433776052 906404741 772474586 311597244 127690777 454669978 51764912 979200968 423848540 225139664 660719810 935626954 375297874 403445115 42433973 991069702 645176496 196920595 777407378 702630766 575511576 511622716 522995925 773787033 810064918 397789635 588094806 278925509 684088602 379546264 153901407 424864728 341358717 977933019 249232024 110787428 185419135 888735436 53542169 392093856 353466443 272589271 294078048 726607467 226543857 267813262 764075601 70458955 811373676 217093807 605152824 558940529 274682266 276802074 370017740 639060401 431757385 761029085 852929069 452663951 393572390 636973610 9293531 463123503 332815309 965007453 92777157 361262688 183244220 193341943 719422784 945981339 81625440 995607463 971704077 533023742 727335432 63864892 341249357 845460562 487312367 133681076 390191756 103122692 415178547 460036659 974199236 634045741 246751968 671127811 707924816 651045258 192412649 468552085 800103924 592426375 738453024 69550217 698802144 658826285 44084049 595866269 667496871 406834488 218614299 647876544 922793798 170815493 889538324 493448197 992395556 933014171 690894774 834602149 324684558 239401131 751731554 410017030 543797048 62573707 75147871 843795377 992189251 478489147 340562656 596289371 780478764 647135328 437712383 97955294 856017002 711434573 250266808 652431676 602567883 306692086 430042876 269804708 73337232 157501692 538683032 8131433 468007004 785900454 29473351 681309184 177948737 671457509 704666791 753552147 778668717 464797771 232889668 806363242 589748866 257091356 947714447 329885690 811959044 308621118 23400928 483767006 222128866 209596992 770722939 60658264 763310895 404062296 391565444 148517589 388789865 549576041 451637011 349714660 862797684 682072052 2396188 456418375 585924766 456775728 895725442 397845724 951935646 333399279 889911823 365307825 263007633 95721648 906381941 296771575 304572411 806539422 556212296 910218248 203861448 304786308 759218960 827013743 895749968 667981533 523332914 696065742 709037135 344848838 434912003 554146556 686068457 384372231 440357816 773859319 162010796 545923342 820691061 594799326 755424656 217882357 685592897 52685310 682375407 875656054 118445071 80529355 996482190 707823361 126974905 243418079 881276319 919142812 297780479 981035005 541635504 279261700 206813064 308318482 881070530 391257751 723545834 540237871 866682685 315760219 557547419 440471952 885944555 334770686 996233724 333153179 369280511 857756893 169127768 230903768 391393562 252510193 490610403 552028666 192440130 509505764 52249774 244380894 849515745 734253318 286845635 472431496 982682831 713965133 206818821 383876641 965740871 229401176 567116615 765890301 563109615 101538160 692611141 554619287 986567124 787681666 850682524 73176978 70298733 469715239 683454681 781404604 13219988 638858909 781015914 58618628 95093395 689808586 884921258 132199816 112997907 60663874 270028508 506254732 97795883 313498168 840126759 673484922 418636120 519868300 950086298 846936037 206676607 945533897 740739637 546322567 378906607 746598934 841630931 588040005 110505817 241791571 536267326 599299115 766525407 536669179 522389033 641671530 952171778 47906100 151527726 315389534 795492277 136420816 312222156 469240460 96423238 149052999 206473071 937080989 795503737 887897780 548716388 809326438 152831598 750212066 422187498 588297953 978095543 24995904 597993759 368889648 645179205 696741090 923993099 320326563 163384182 393390220 180188062 818722217 709256465 135840928 513482681 506717662 746879043 977269810 15394324 713320198 158523296 92144889 506915166 235968266 596252967 49096271 908791335 162338818 583690044 753179200 247055846 495386406 55114156 18573435 246720512 496347609 771095724 847549268 232698044 725999782 725240796 889197263 96848459 531651651 246458175 209310096 851206089 392170121 171884096 884304870 16751155 504826235 386066104 349441739 825598325 707356741 229812196 444101852 194313566 71199289 899862376 557803873 634068651 165716437 752552529 155937608 953754617 195331515 535004692 314664488 472433877 542865845 668750224 975963461 236846254 464533943 821190667 979268224 118946783 568038621 106058285 255003501 52734631 417251433 182676241 351306816 588822576 286802118 565557552 34690267 196520845 845492874 274425715 149661122 52211892 577775471 349088293 153457958 971461513 667387223 803170298 95542753 197316309 415610700 652757781 425713261 544022342 258167429 233433587 731419637 137227386 950451034 525993096 830553414 220077552 738721363 465456934 998305241 334758930 845497620 550482315 499134156 268475696 925891959 230645725 178437094 852074116 765154931 284730278 991727769 841825071 583132973 987196129 104883450 850381114 625866736 825115877 985311433 785174679 852022574 580042620 609629290 956260894 588941956 223314896 767209969 28637843 416412087 705982842 349676565 543417756 619252140 370761074 647482672 618505931 302038397 720492834 322061391 718134939 101944674 736832855 833546783 219704682 377996735 564992322 775468023 243470982 975826460 489210757 560040149 946546461 881654835 500465443 433803363 162127688 37706456 807334024 821245422 700730123 903326484 11344013 558304625 137892171 536814353 597363563 467177606 592482013 297427230 450192331 658989944 267784056 357043899 334690231 499050548 488222398 981769096 417622948 65700693 392610104 339231316 549681524 135079189 490496347 331301905 380281192 815481439 16908409 51678936 908651311 464608192 876272089 594117868 792462556 801436785 181771681 321013180 648343024 577496912 996496356 478694619 477259854 623509988 343941533 643839 164929859 243875167 124640168 647035665 278857860 432235925 977690067 131020054 429344049 979283975 698646988 109040457 156724940 23031516 854351921 544708865 408990786 7494626 311905661 659815872 900250860 503976851 691922206 743892020 145332613 526455307 442405475 641458993 769260337 8008725 105482630 546861741 816606334 314739738 40361640 205399761 871062629 96954169 916634835 940545253 776119612 7744557 759849206 581891676 851839439 837807196 554758383 385942997 818650182 812537049 554242680 223327758 180336442 989919065 955960385 688685303 824175784 155756856 27235033 116736673 79241458 128273541 520815543 341704263 357356010 945756907 820279871 267703627 177893824 658612927 667193016 593281596 538739734 724354051 93129559 87713227 458452718 412430174 555569971 999500755 724479417 360135969 131279179 427373142 448664646 735767103 964206986 187694211 202959320 894682970 99950530 779645867 354749459 973729208 334789294 806285384 337552387 696756810 922961132 551666433 517811485 370985639 129827847 379114910 574258751 776287244 456742767 363625490 374801070 893738596 447996284 859244922 805467417 280653626 93973619 547607834 120300691 471197385 107987835 300494171 62377368 588450028 159895461 614370001 422230290 404638766 53677292 282916662 875801930 418584254 847690031 190559344 906265335 5797235 808804153 657557899 643305527 174966985 830040507 616824757 278456204 29785067 188562508 299339598 224368358 841862055 688254579 380245718 420366490 102865780 581461136 883337724 671798374 900551282 806443774 232343185 826311791 843186280 223621872 409105294 794766912 689951428 227086728 849960989 722154449 248354721 377315538 516305537 687983741 940033721 272126654 582107955 300625929 367656567 854515748 240455114 141957541 88703207 237023686 786336270 315341539 435131586 538185551 888590569 522688197 419512427 864621644 809889643 876955818 637609189 795557179 874153426 735900005 334393054 203260027 427184257 546356263 51001264 466782549 414727427 806922641 881007707 994758393 93129483 962458787 36441730 406143875 76528499 986915280 1124728 531990770 709372224 823415786 585270068 785521203 831635615 952692014 165787476 254306835 822780384 144952389 656526880 451855436 532833919 334431030 67114377 29906048 170157088 350956157 759386659 91274555 771895183 143312882 533832237 370744552 570192317 277929436 26391184 600962790 523598023 912843243 296077276 695475828 637339375 16318510 101324104 211445180 462985121 839006249 294474162 809451726 365586542 750431164 151742114 360226981 661546006 705890361 630232390 307756063 493453690 156669264 85982070 910138121 552835237 60027427 427916469 635945232 801500105 900138549 352711458 408347347 287530563 945518707 93944468 21473487 683589013 609843762 48591743 425612908 742891629 484557361 691700739 223485185 137520536 640209813 971742948 203892931 51790105 368923881 452561559 939501010 468964111 550795044 496672815 888640317 364263108 666680995 615625837 489730030 751522737 423381035 962049206 750761924 850478698 871064555 699451935 327973500 677986231 182937717 609845846 648691396 654165378 7987656 381755076 110782251 620196830 993797195 105704299 265097510 858383367 854446022 551646201 533058077 501220191 388940916 923063497 641937494 311970928 116493296 918236632 794852354 330198002 620711489 969475023 861151804 739705789 864684240 648923899 349683202 696124371 232516468 647277139 222640450 728443235 642912109 709506168 860800457 172814268 410363487 575528115 751754322 270818653 986067796 905223150 926228862 299545833 748030404 119832004 867647703 6183462 642829965 835365751 677464012 563160847 536017138 663496423 352898747 293842105 966641061 152542121 298568671 651804267 689914293 665464816 820620390 307348111 646423457 708369310 569656671 971920822 778148433 162726716 643849925 571475359 559777806 844659958 361007734 293060652 699442066 647282084 977255230 337605222 963632377 153676230 750646735 861388676 921653444 993438850 45404607 72415201 491960038 659234472 186049170 845562364 995015089 555314097 558370992 587277187 397391586 313740984 76257899 445246027 118530720 357702536 589823740 238132042 105851000 73591697 688552837 789611946 154451039 248010982 619061260 725910450 192316339 571883848 631404679 879893975 139484725 342137121 967769546 540765616 15001369 790339709 224757404 878611719 284862956 931828242 920583331 703704771 478812596 931034180 240678766 131899897 595254224 106832408 311892858 91668195 456712467 671494716 882144552 14202339 164037802 980092426 210172352 242590854 239189306 602036351 792407156 637626498 568393668 597225793 513100637 140927149 731847863 695388067 641252474 950085646 86967017 641824664 805114040 635265230 21367442 986876100 822398697 656163651 891192414 903339882 583772352 548319970 109943896 824887677 142740453 9374039 476893940 453038993 950856925 120655206 701260816 423478247 473983512 226422792 346541042 192303461 978785012 735183188 773603396 203024538 116056755 679713166 707982113 942038721 378829175 865940003 268139008 510081205 889459545 337291428 44617933 444001278 735416140 207573454 166161614 340386766 972629556 697737349 707563452 631372793 993782749 289667795 548082869 205358593 293619188 541931240 99449663 295714827 996183828 38810660 147551811 198765031 277568959 478252554 505785112 773630987 321888604 240938819 417727101 131190937 3101502 244641442 77251479 178285142 120368542 305377829 459701491 603090354 779656348 337376239 804957571 681610692 719583045 601912134 958220712 861179725 215190151 270959524 80279081 726072754 187509819 332109216 232449837 506559491 461788194 939013120 649057102 243677174 712828647 18751149 270305929 882479855 30960922 254932410 971236672 285632750 960042551 520184422 490471749 691619241 742654365 394231825 181332168 993980787 806677906 157434183 564014443 28404300 382629967 993301178 517970224 137140445 855843558 412551750 647383431 825469298 235465820 135986160 50709571 877699846 783215257 576397027 58688674 490956342 420309870 369471599 35979336 508133451 702617494 626230032 182849092 477206579 154460593 584429935 869265933 529851266 665621320 344311633 112080508 783840126 136478668 978050731 229962968 655842826 723351448 369191063 469550030 779936437 878318829 188323418 56051319 891163064 514403569 603071072 584903496 165431026 19053752 252891965 404528942 742727912 897443389 372765863 45602420 238294478 506382172 748789895 962174415 35366518 761094371 170609636 474864475 436465507 459459970 697620981 327066527 806826424 138933968 332965650 192605831 337941578 543430739 86912449 765191783 524231821 808281712 83791275 653243136 289307038 572254585 444938916 393505396 235747146 431308969 833954729 993166418 98274045 542887710 524250584 750199950 196069069 673576165 803319171 561539720 488960632 801110510 92250395 889441794 248112235 40614673 1596473 231883818 693454515 829843217 988607649 622679191 419945986 847808916 881132863 452987460 158559425 582292528 654835494 526150297 947044844 944578906 728291475 194915934 781674557 496704375 233446 490337999 931876101 222154191 674016429 291283589 162060099 184706960 62932121 469627013 400069280 598242006 299514505 115949886 520673388 663671717 695117691 341001607 330768541 187306208 834243485 44792729 396127442 743011676 130962754 743397914 451962706 259381461 140289001 847350554 780768785 20879590 898662703 494125324 822836126 588572701 885246432 261929422 537191487 411834600 429522676 296964519 786065110 767938211 793416323 851115584 466610680 652551311 424466638 787585971 637464792 219673811 226097991 943484280 397320278 33090433 3426683 327510394 206046716 142546324 348492839 491561218 82523381 185882093 38408753 346995656 132083482 676264530 456887711 85106409 317936620 687833721 840648873 645059046 124844432 117682935 582037159 640551344 339055063 562712143 470988575 389779871 204506423 860516330 594190522 962058859 45820879 68846876 767330381 442761018 468100711 763918363 268769234 755288730 375255404 871705352 48890733 634104195 91777019 836384494 662007912 213672526 44972749 718801597 162970168 571912132 171623245 696311376 372169079 952325648 956770441 86503271 136456937 171593672 999254071 113888938 597578872 934295273 27424184 416642220 502711352 439008726 74384149 822046438 210017126 262450274 734644216 853572282 933048674 452256956 477712573 256967281 103635130 477811844 357090145 794418746 660445729 839038402 106941068 912437552 526327664 506991070 657144973 417996885 881484973 488294576 506282586 136361872 266880769 782927734 217315988 907409588 387939777 431545299 91418244 331222138 758535014 354996951 212101908 625192325 750819989 465347572 984752609 129152345 72589081 291519498 457417766 547188077 874115301 22501468 320515533 254596631 281250069 44011930 696273507 811404185 464875757 245143254 298361888 12761884 404013268 147627666 705488101 507978674 581005667 856841647 629347639 94856533 605148238 699941499 209248580 814078435 930827136 225254315 69911529 475645993 339829250 708105564 30652830 304621270 454443214 60241431 650351505 447678850 414735076 201783748 257937548 946684338 254690853 459031229 831608841 790110671 87373426 455302333 259332391 956178982 412342684 380232678 986152362 606110708 357273252 253462476 325717766 744481880 786035368 436384863 119564626 366035295 918326261 740271871 352560714 237455093 756050172 324834159 95180375 862422518 962810206 83103455 72720774 126096676 661061337 138567392 193324690 43371048 235496538 159099509 984179675 320627858 254952181 832490239 721331811 739418330 746871523 607609677 46055645 283862887 325884041 698689171 220230815 517179259 613163379 180632431 716685990 202356299 47470929 329599718 502798495 324159985 490331394 575380327 377012693 812766317 503608710 576355267 687151680 760529574 792549644 395628092 432180609 588519283 79090661 37942132 608197084 990653577 283732877 873955194 336241986 85250953 837334436 613423300 429448268 708592895 974440187 465297709 52446519 580375897 28706942 181300986 575080171 432819696 232391249 825727965 512810486 645241867 64316593 88374244 685464465 126488526 528211211 876274835 34773658 794258250 232015600 590489545 19091609 410013052 391126817 639547097 308613820 352375107 82965626 311029109 204543709 200843879 647303949 293437627 585053304 771078811 508550409 717405743 586442169 8921208 580051912 840460481 566148201 177018497 56936658 985682373 990355715 9246234 746821840 224737782 371234212 294825624 870930583 550945916 326912793 964662 721323038 352778725 61520328 523102994 119131018 361965859 60710609 761959478 653578281 409525399 179106542 438050965 598149483 757827842 875124617 315048454 39758828 553131669 166968750 979699275 760313457 735913442 707115798 23961612 605783267 316685032 519802146 663078367 753894230 825039375 431037913 794722102 270154503 957880607 14634216 986369401 832704343 771894864 925350566 986407149 54218448 585651521 111219989 324490692 694105128 632053747 323659483 531970843 518116155 530710485 346586182 763344877 984777739 531826879 275606095 218317350 204648384 408180202 439822741 498822043 984302002 300055807 538785117 526704382 371963483 720093961 524435608 112415991 461875293 383029629 341784286 530609418 679282050 621913400 854695790 449626797 983450560 751458178 332519472 770121269 823920690 311867654 989869745 851423717 867708444 915322585 852332841 917551335 523580903 205981051 287610231 443853389 919286822 810650572 619924003 73761292 245318296 241876510 342153053 931443211 761994013 360726311 655774203 822676239 769296062 137697023 79332474 852894664 847976628 377790000 537695238 645133268 359102807 697060517 31356268 647962293 450061611 436369074 244178981 109095630 352777177 223148569 552442189 194877556 155560246 969092859 310766252 528647904 617057857 35904229 710728114 363920181 855979031 361625039 478670456 737224057 768492295 864640277 627132090 581246365 537917312 851699836 684928225 949781629 624660260 751182128 66215164 764807384 930199474 642781898 909651394 17360475 331229204 424217157 513128340 344706706 947294563 838503687 415990646 197058554 629872083 783523803 410565658 588587252 959970250 354990583 923022552 25822921 783292630 307134456 72804010 642434727 168335017 563070695 257796927 629309098 889623581 267490093 18803679 247417044 312721972 535181728 100833413 388957198 144619292 57146496 329703118 678713129 752659750 23422577 963364100 915235292 643203025 117749629 876699414 292966858 724255418 805916701 607458203 281025918 765408947 433302570 250242767 653673320 662166186 273287153 501692829 293698784 847620287 560260375 862085778 362585383 709610288 212984758 776915689 688430185 396264301 567851851 262885756 22940341 260953863 114974648 477495767 333550340 973006520 929918031 155051300 592136760 648273765 508717249 460254015 257475101 663929624 567822381 851308454 322477662 684229128 709526553 141397630 813061530 564238221 875376496 845995931 725704784 291557161 818992011 844677487 660990441 683267976 545747746 667244060 782802870 278677376 548228447 783273576 264240626 603162379 412119247 809601733 747433149 783406155 482694754 506955847 926309152 150261902 602311292 641655215 798851596 697861438 129274847 545764451 329464668 25135875 587023542 347638131 205982416 808143515 788252061 82293398 830746384 427413999 644303497 207641903 641454256 528592660 119665636 258530111 217162023 262998855 606985597 978065014 377797592 426376680 581360517 481142576 853508874 201360775 558537114 900730731 263695089 305980624 507564995 116570056 361800869 164746148 416357741 780849822 544220964 568407558 559441516 162556130 701573726 32658718 290365439 923818291 496501790 104644674 864739784 837549271 67211043 980809199 268128984 521306301 396625928 160692931 349039268 352611453 708672091 361179277 615921159 879851350 840799116 670472509 877321799 919613747 18574323 701822450 966850576 373211038 619898835 623258604 886105211 960522448 105603155 926019482 831896067 435671720 769397380 310184333 913996173 866604465 647318628 609718145 840195428 85042197 382783441 783256407 922662979 410584749 350785426 971060253 512532129 248226809 496790108 430248709 877576680 846385950 173297608 667698793 646484773 516687087 997535572 392333006 47593032 602074849 166981485 573474785 277422356 70216722 363240546 783276912 281139628 625097292 529463661 282669693 989690271 192018174 298420654 804069924 117333727 719592510 75789616 100675766 313496266 802319818 821457380 82358436 106750248 95424012 316301474 715166090 610151204 418108179 583636527 799093546 328118869 341301138 905543727 901679217 566404532 935200751 899866677 116779631 919224492 620399916 835812538 567392099 762776582 624283643 180562979 291507630 605628155 251768242 585746868 905748701 630973986 753977168 50327202 31713441 856761481 671743613 939239684 644606934 711970964 234678920 944100062 498783105 471718686 256230248 494035223 754055114 186054757 905355453 468542078 321412872 538848523 421417678 888952529 642100405 160402207 42926475 68034478 965856883 195079957 815174537 883580320 205267724 69325002 196655369 970632471 337076087 537725573 480104688 108500846 151288781 989425139 197788112 369102308 361211985 787746089 367571169 121218724 503539825 881897379 57877246 395747263 356346812 814085958 410811315 794960429 209102065 532319586 372473388 671959249 220557553 609469356 985141312 23208304 198169542 904581438 225732979 588048323 336543143 825141153 904008678 699970140 945333230 654840766 837121898 972358593 147940892 226778353 784565371 426840408 745786081 346002927 237450034 649196660 793230090 931321314 690862169 72547662 911858839 53684055 579405408 965809673 467028392 113106242 952138332 555054504 309913995 501351427 923255567 532218148 790661554 390099547 58632671 190586962 975351992 959459963 94197720 366143732 48407907 157386999 14758070 588907956 34538906 215871435 272692696 210494240 315763058 303776605 704026946 385872055 48522278 619517306 27319462 611886551 937760539 202628696 64136283 794701513 76985050 106226069 660242526 549645244 137010713 998270260 348738392 444764622 951569071 454285988 659181977 209782782 184154786 170909114 457538582 55130165 963813150 405053363 289010033 729550404 833843060 561423924 269583086 784705766 507514915 120348234 694748033 545342138 609028040 773018988 302690491 348854092 765394997 97328245 899437537 733249547 825237849 510357674 714693846 185373520 567331408 714334397 380897579 923835230 335986270 428838845 956158232 471414109 523331055 279776811 647529597 475121759 123842963 746106090 825131484 586990172 183704840 827194955 210633578 287955767 255265840 447538430 837352446 704567225 866208280 858172708 757937685 985133200 831962610 890708289 547995349 750034778 1142811 430773058 624729873 70766997 709405971 565240190 689285693 392216492 141535878 139311536 817761145 481521135 902705226 290286080 579846287 546701208 910974296 826873849 272218347 732227017 368767700 704579470 310721188 245727882 651668232 435154976 171807611 592937932 983762024 929369462 307303383 831463528 12532368 874851001 584105417 877215010 49865539 498430846 94813698 212053409 328465259 685169863 834165481 946612086 5702684 302545907 150092673 200696603 780752786 657378772 650392699 287332595 498487344 638754206 12028204 651250755 571304833 584368110 926013589 695623231 912266552 247684041 174529628 955364607 584487505 688426909 437440466 294972038 858317165 860952125 740326124 993343420 772991770 849158632 471312717 981391221 264713099 215836485 651186487 393306980 642544697 312923743 408402077 831038257 798834889 946153900 874753047 899509600 410046469 408003336 840125920 318978151 380157667 152016571 50812130 550388124 636477307 888743535 758148526 124348993 868326418 908894266 327357816 546773119 931469331 583154586 319624480 935680104 683854608 43737718 481867824 523767029 664709065 909448217 285360082 406426374 134381851 974647864 767699938 771086950 861184276 791031280 519855070 400320710 172999142 130753738 993569260 994871486 123119856 219652014 283498972 875089617 420405680 16018421 301539367 73245799 137024215 417796186 9621224 468282067 766102322 579479044 36121323 322091082 754534082 649608577 706734747 724578546 862753703 240950722 572179218 422051795 746861356 836645160 359872271 356704732 105547462 644765817 260676600 656668905 918494480 536325599 275535582 997299384 927076555 492703727 66852215 910384118 439485924 571946155 939976483 294789938 862767729 230083698 909765609 684313575 236508582 48979222 497473910 739560820 319274222 270926028 246787620 602286116 801032401 512937263 717461490 826083369 565895169 336971332 68095367 481626264 112860762 545461114 347174707 565503606 121561056 127383721 376740330 56099757 670376383 20864775 189340239 433712138 336196423 586290751 890671529 220293706 975035638 769376604 271543522 221634319 407938416 465228756 71521176 872924125 357257855 302588034 305204489 7445035 919796245 733307569 894371608 132826703 822635343 870305545 614015833 207964811 869644654 865675423 425735681 604446728 207525600 225733107 754761967 617404888 141569081 637525992 844777130 468895220 732129585 155709646 645496675 524160060 466883500 471416667 871336432 186542461 124751030 123689894 453236433 833130596 154225538 988002875 318717741 128948876 498380908 802020610 351733715 879344503 269511672 183997013 524993080 350531467 318458831 102410221 64611712 216736540 259846597 730801139 658991470 964310373 859863252 510382577 778642292 564749701 948852770 867598303 194873256 768961923 916223481 751365401 3261898 416535893 224464588 449867106 365562946 861770190 582608438 293294058 616081180 75330999 732968444 549663817 199940882 15483573 554110726 11278711 947643012 74135640 447389803 456072410 543300215 351823642 448069731 710598465 366693787 911857505 487624020 785828834 4433732 942571630 928967 150781784 719666297 485638522 454527089 685961896 80537818 336510105 728275243 620213314 432976314 458570702 155806714 279886587 186390288 600968709 112413448 714838797 912705146 435167753 141347500 216162592 205990976 526438297 576598108 558216045 811036241 777981523 368478142 155566563 253607237 439284418 314876830 666447590 905133913 620705110 435902702 754430095 897000310 250823531 494863816 396077704 884922922 7018556 749516915 825010924 300115120 284547066 272062038 918324531 401341923 843073712 248440071 510134596 717342029 754665308 484103489 665182830 192174107 965550300 393670116 177325668 971364388 91306234 792787713 435680323 620727019 477822826 509322951 803037587 883295380 400393921 76361362 682501438 672886510 259929987 419872231 717893787 771611250 863677207 348162415 376153702 65378622 281229009 98549244 653843912 270882330 764948198 578056079 455013706 100348278 737494396 503528007 605296610 427491432 465553306 770226543 709570542 621191088 56732723 180249723 99756085 924624564 941695774 950024199 435266785 564578437 864226333 320243924 185867912 26185430 903246298 832535761 804332843 49646861 986341604 406458382 774101801 390868269 360857782 195591111 559487573 638222565 526911667 21863265 661190369 776492687 574622499 423124836 383053929 545795111 793581109 562364553 139899127 35344982 748498690 692960932 482872306 672796012 703882382 389853628 351402806 47953503 466122435 2565885 667219963 792341454 81429873 214279097 458699754 880325377 549793615 413447787 659227149 171047654 845915393 657009078 268657114 902450454 80054799 720684390 618374194 933202641 249981419 643314032 560100436 989180923 919889132 448902380 343287539 606345766 862382423 217738015 440916257 950821257 512856658 108818037 16739675 922668033 958754035 71337343 780698761 731164183 426426156 967600121 550093044 300108794 555108068 307039175 793286486 724277379 503749347 466884597 285664200 692484653 244042199 218717618 712754898 558332962 21057374 337731935 652617826 96071474 63644407 918763900 379550410 731459797 413202187 65226678 702149067 285370918 283695594 799743454 669168517 590741233 82365136 434097392 425737099 872324768 923059935 860736016 101056974 370188622 92576796 968962955 574358447 787491005 921142907 617067473 771029231 729373517 689848021 831877245 643208894 849303827 705891309 429633877 407923378 570926274 582925159 298064195 957968327 757040319 476217560 372666713 691230048 51914251 178065084 658176468 597334607 35035993 925021550 254094102 596927401 112052734 967415869 363345580 735385699 959147773 85032020 971499080 702205227 768511995 17364946 564742853 259887755 771848261 931673783 295410471 347293016 668979669 938084330 732602265 334461394 610177609 206149695 58957420 844910746 422101992 942871917 664854816 114787778 593291428 553686807 19116375 721391034 901727507 169761218 83170265 271352933 758403952 16431079 279441307 255198722 106990761 825796824 796592822 789584965 364167497 410457050 482266484 895734079 413146760 459539220 414896954 384982634 100544327 673691290 733462428 841630644 148019465 279623525 349252440 474407523 75799810 525845587 251713873 721762863 173743366 199737137 182091663 810405431 408346774 706491309 791878727 51394555 829353434 175551587 3950293 638038124 356447393 899162066 577974458 923428065 353743198 268177767 288454820 865817620 110512693 724757101 360297318 245858090 740506092 240151842 57572603 173839538 703239410 365075879 291282308 867361699 522344543 222373636 43163726 163855957 10105073 353935915 881082062 652618642 546790414 208028405 675979677 76018564 488618696 507120419 772475772 969797827 933635286 840849245 324612187 836607819 595709335 862119990 783755338 230926208 76631315 151858984 873383561 6668080 263176948 557625747 806093429 631788691 63980953 437801406 562826907 222020418 951484667 619604959 783583662 313322822 366887876 418656013 683965838 652045834 18893380 364182089 18318904 867522402 825124723 604111227 740280028 55123601 410360300 261340791 260668618 577983284 952733946 856110578 3667070 246440543 697550730 604979347 355379869 556452227 623830836 274590177 120112880 202879360 22493496 822873419 925287788 157010843 773885823 761761578 955953962 122734207 285640596 864582085 701466481 80890691 725100464 889840190 37944998 121990756 341744050 489337260 682470757 470085830 620623908 550388740 753563489 986460346 109257011 200827178 633507456 83959024 699390388 491470823 379805137 835349386 337709098 675902187 335721090 650025229 541187514 703688657 807064819 518706529 33041204 758051351 43092897 678391520 935057424 978207785 271616060 444309830 527596396 702308441 947889816 743320761 628057361 518091228 209781164 748052677 568666220 811189208 131476128 702154591 856991637 160678485 112787900 338584548 741014093 860882755 242503028 55483932 102136056 965802362 395101538 644674354 781931432 952604609 408527692 433071292 886888211 746892730 730099740 19406263 948830616 804495098 542623974 669735304 43401793 502492157 507915236 353939709 200662456 673641244 153021305 825716041 802958681 149613993 46521136 515756812 323036194 283694801 796245695 269818187 220277177 419713709 260860158 233955443 28927854 345328960 149244659 133774167 189319481 781221746 762755273 289108534 107264695 856099348 324225230 868034486 750478386 264471776 947010693 275296738 431351193 587433337 524316556 652756787 364034944 263855204 158719664 933427587 741530664 131744278 714113254 975097625 851541629 849598438 251041350 110791073 536817926 194905366 102837525 973822767 788827393 633517009 769168572 313362756 300195657 920508452 541966547 177776578 860008806 976678156 323158544 434599416 422786696 140787050 160845659 923789723 786610313 979215622 626356923 626351048 838236389 747681681 24922726 136030724 913036736 956762532 291769783 231271741 890410737 151580098 184611889 555859655 911519978 22728020 667294333 765216097 4665805 492415403 499983216 19299884 564266076 852672254 867202311 84487613 962953998 153325938 986213218 149233411 285107445 384685580 338377168 504029277 264769744 906273218 143857088 832602767 977410059 552227435 640230867 189442505 28286895 163268551 317827268 268477597 115598710 645437056 144339591 263212298 905890499 657466665 168312616 398698359 661225879 939991864 147180520 197534639 699538853 232097808 341123110 380425703 404473666 363720189 616628337 598135743 904548465 537488683 366281590 505791799 781318612 582383798 767531289 947579328 982418367 521477025 243434838 211495216 724646694 156457937 352976730 207594180 228184746 508332315 886086781 495819294 535746962 949366839 694496563 648497232 599643342 972645830 291166244 264173259 547479026 899044176 67224346 337402990 306765890 16310345 263031303 510921342 387097505 250161416 662788104 20832682 364729249 837934545 233060961 242087685 398609529 875287498 762437498 621293324 245758983 615003140 721287656 630962343 686735056 737133693 430905705 572184095 761440008 867856656 382599645 944545325 556241286 610665612 442183246 976153325 806703303 283835807 203466226 735165157 744568816 240753123 662649637 376209921 108840919 374937814 997273703 930188438 706901485 290361577 245477733 717659746 232819027 78997095 286644209 402760586 576655826 325483144 889757448 946382749 687105750 418653299 406276046 198763663 260612219 874786351 879766669 29742011 312530045 46708650 951716279 199101672 601425731 34704320 776472808 440362308 47898332 466074420 768580583 454876775 849129475 196660140 69289368 821017414 192507666 887051964 635982613 924239695 838124308 746738397 664070805 28406600 783826616 390531181 978691708 617394284 429716819 469382327 547972182 579571031 224658406 518281964 469021655 601916173 293112344 651268903 467642329 489085945 643377463 319010665 659811680 880354037 471333180 95409305 81881239 513165370 981735878 593543051 562491345 991712368 5926171 388077045 751293577 20249508 745185579 296039803 506873442 291008075 599624846 382464676 333214763 453347904 801315202 579772388 682047185 317957581 817126639 461942420 727463541 20872347 736755556 687499250 187308885 451233472 212865048 394951211 253761760 284573117 875318250 73078094 395655336 649562481 551537763 871073365 707029353 833857839 293526705 150875169 191542277 601395366 525333675 750233723 353038984 887712507 978480593 190924053 702200615 59432365 689177672 475550854 6224697 969552813 583829987 73069397 479565892 759175245 372887318 880974052 423240949 272941644 812546562 564778632 185929242 730041041 455479151 494948987 370623411 444748391 720123848 156431580 408978403 955540994 447744042 432131255 57878513 327669251 457061712 907888378 983811413 91107114 430566564 789032833 86132392 697909675 839597365 725759499 129142447 718489110 920657079 754350403 219827026 201834603 51703436 293207481 25328807 526504206 441904316 814503657 482294761 251114957 529903348 606524462 955544185 8879834 336534925 491614680 12241125 809928665 450528900 297787927 57181151 6594249 822358658 355783681 785190210 658662680 793529817 37726872 782130962 611027102 58356602 914585544 138253435 688972952 917079561 815148897 810875598 45773482 651257546 974912027 954354823 473873376 378740400 788087960 741085770 308893618 818489169 380457570 934090723 853605117 503616491 946227432 394188611 401321733 312311396 953182343 408018311 239224437 779582542 223405949 531803632 704173159 3307489 976567540 491114223 837178196 202202872 978298878 884875534 769977381 305130014 319780501 790838289 366912293 29718400 429630616 860499415 598819592 666514937 819313360 300063082 582348785 628936195 570246131 530317315 927216733 691162313 843368852 239736822 212691520 695893271 272926521 394487243 864582125 750871144 501563206 385249578 161840414 927131610 128227346 408499179 488570366 237323570 765107925 507577605 809057814 30103010 221993646 648996765 210850142 131124225 241450918 432162303 174851888 26261837 286151091 52890267 448043351 828281903 549738921 308322062 202660601 914346163 192967753 526353695 344875440 615303571 937765697 302592434 350567543 952566063 27904543 692298210 310571700 410738826 787281757 962342885 861124919 517858393 655783771 603928095 57417521 828356588 293378914 354261018 837237569 420100171 453109417 771299215 464987756 37312278 607212355 115598675 873009952 917762976 237687089 207889004 750206003 713370593 890454368 447455494 970733023 435530100 324098208 179033970 176009931 67612325 809089192 155743021 548914439 399064926 452640540 308380123 839386371 871187516 461463174 97829954 754009761 775963002 150089556 315374941 98151970 713291267 77538 33832259 653925175 391461473 92334703 929903670 43099635 765524944 179146791 615700899 311352789 196449069 567203353 625338142 471034049 86736384 484186941 390090593 981847554 653104505 82094711 74601296 683625299 929521517 637941136 528312054 440381389 811781981 280663096 46181510 174376183 897473903 430779144 332307802 842189754 360890228 974289541 440379129 130080627 259834339 171910674 783386635 128909529 61239512 168157958 405115748 74178322 422019359 795676567 510494462 745211054 490764581 743606246 67669760 971260066 156392448 299197185 893098674 791753032 231812721 729371603 564008329 750465385 364573152 709560887 416915999 535431470 381715802 545539057 938044726 597153072 522518678 751250343 997911740 569682796 719792886 746997738 327567556 94990404 771242113 310448185 503916169 357441929 859493603 203997166 596980077 748061550 514304118 55826774 885012474 38913426 448044857 896794787 510710502 838260729 918221266 421268203 116166669 763426320 237266066 531347249 259929455 865272749 381434478 507713376 23014971 964662284 90040839 889701702 654931903 102290644 565388965 796275102 770388604 633133842 732285236 878018314 421018384 889574459 877399886 214750994 671764301 364589867 595073074 375323944 854417183 547926825 175711686 276714405 199173028 973115616 90340764 287708363 36662307 57495912 967251944 916659649 140429057 753115964 33959050 619376536 308596949 836574019 85746186 658152013 392460120 971615690 910294681 645581246 991534704 82126212 797994762 41844918 109179177 240362643 590157278 923534311 514128050 484298103 977052222 637890791 323902312 548887071 90276600 687600441 918300622 953493729 997000069 159191878 737639827 848124283 530600193 99762528 865754245 952888849 124507956 723208385 975259554 717832752 75501455 344515720 133119500 580015566 151365158 284888256 160517647 192958534 99891902 204335961 495565854 901329251 387852729 609897774 482857431 926690380 862520616 427229439 998990583 716883096 724986818 3338357 97490031 846696776 446324713 228160289 838700879 744401852 919880350 689097084 6318548 932405956 580387990 46068712 460332641 404667284 428950823 355740593 600220288 340348109 400195918 227538436 751994342 385877356 567532726 508028157 954340206 706378216 718567595 723025050 774322714 178466064 827441957 433063879 675289109 329028899 704821187 728801109 427471797 321217735 638943437 238520060 697761906 962508294 701559859 416881760 599012849 901750618 325905034 523679750 813168381 659370143 980231186 878006372 253793417 111568406 893951413 956610768 505886384 455172467 124445182 269309581 124913590 36003525 360349736 577654208 471439111 807926636 207080208 416161409 871444532 694920623 351919164 14286788 2341880 421032056 630381792 517259886 29422394 961422239 492563663 144891461 717461507 800226878 225535880 378425084 948693124 976946655 751162166 368144171 435019804 679299947 119759270 135363925 585297999 665899065 397945166 2076899 614055874 435375877 713091663 516404004 53115727 900154103 844645744 119804499 638510316 847843480 953781536 801285266 70447806 84038882 792383095 809380585 824000533 356233774 609752115 609235528 297766492 404973892 292178874 11126925 563579444 827528786 327911967 918915957 135591009 863818219 448813846 297715625 265177289 56371213 230010881 112687037 767478146 436775709 23999205 750348584 656336329 949272294 228795250 244698445 521787135 22516130 913591297 548485235 770288047 376703212 200015501 968527564 520973967 22911690 510266304 999560052 939823479 353182375 312769515 618218346 791841901 644321882 843103746 951502486 993389208 92601632 726037158 787179724 305596240 121189536 488121117 82529987 59425553 989118948 469396569 715913501 877108857 905280611 757905901 172820324 879567701 375484664 486819098 422614792 309125531 2666221 8618955 782005859 631798882 318773485 181827464 304056247 606804210 994423306 330619536 855311915 736385972 604338885 975959741 952779475 856537915 890364418 53582489 318643620 954747200 68195343 304951377 732997765 419719084 129913248 100387005 708749882 143853958 147234516 578753626 908547960 791027201 158535726 442552918 778264536 947964795 755379103 861538171 970736856 510686837 471376758 517123393 887657188 288075419 918788982 817656519 300195407 768601023 420844994 406951892 923823693 143539935 14888425 984678874 496036867 511035675 198665692 478598893 56017785 463384257 694615806 665720527 551621280 446400579 598204686 419964900 750941269 191398205 568886078 638098495 58354003 592096625 235519779 823405715 222126919 958640586 90255288 916299586 204980673 752062300 755026019 228806485 262452029 849910373 514957808 174242679 203922968 629903173 917615000 25419521 76532127 170494343 621564919 869884146 448712447 9764574 523130382 822669045 482174039 132589096 620968015 416826965 333903779 27393126 941522830 149656840 17535439 321967045 336200711 880148657 647058858 760464534 78944353 496724887 243253489 682640471 953897640 765279654 605239106 178698918 543716691 954162040 549356840 718299735 65278525 311757131 316055317 958226517 896374701 67832329 312132191 690456255 291542860 791395900 185478217 364643799 767331639 915878176 268092156 16409866 799909604 465835411 118199947 982482921 798669886 579172123 395895788 822053170 83329166 738268391 616658948 244250053 566981514 472724689 500855450 954173873 947000400 169373271 13144927 490679077 433135719 306681757 48953068 846221182 792958651 452064374 809779652 639760450 396682399 857034075 984070480 651001881 956423888 534488679 119430880 625570775 978560120 90150496 739368623 915542392 515674659 932894139 563181789 74327326 112712896 49679245 540509299 529144341 662649012 184564371 390580321 377455057 640368322 150232116 957357186 336474347 181680404 275111301 909467288 192262185 118572101 61337655 330300237 746925939 584312909 166640556 891654959 475784929 55787410 330772458 13113785 612126632 719274980 640669859 895061066 605353265 376883063 77136426 838235440 431693316 327579110 462698114 92367513 370677974 495779131 284083793 835516319 144045953 420304094 173034468 39452483 460837384 420796585 956434999 827037550 74876824 331277781 626151396 739218419 71295874 760961547 583215670 759650183 796629061 365094997 945922075 780865233 753001598 988319274 388118827 932647764 906635263 992991848 708707492 433888392 802632374 559749714 796135533 6681280 341702592 573012630 802269718 592568387 899410018 377743949 778844633 629162550 584483079 466888173 689361807 542384044 172722240 92979297 656849860 603905692 245973450 230575605 808043175 693626092 287593351 911384924 778721038 977735008 18156163 972924087 697216377 967094957 905736176 881515145 581387021 444251755 944881709 504838847 263646877 600232475 561819064 512405421 258530204 278707236 822122048 348770580 785874220 212565213 827299736 167344407 27310871 306603385 133611706 704232771 252734149 862307103 385018569 402000269 325412434 761117139 710283794 191438676 188881790 135194505 262055174 840839773 188170926 775454490 734299970 687257042 730543091 143244614 559617673 17237325 748802563 99770298 652121028 882771400 468410172 602814467 248043019 811077802 744491177 943290012 6394261 413773502 374691063 939292135 591623367 537647420 756566907 911559467 348838698 226077889 798534457 489268634 802700918 478086222 105463764 573344593 566954883 269234775 417811613 865013835 695841619 857531308 771074444 553917300 122027029 931905677 984745537 412286880 239778328 663209372 601740030 177642628 464966875 408345835 156171705 721213892 456472063 623507690 791741190 324281834 511657039 408907131 752740132 253467493 286584000 921925856 436161274 202590093 82128749 581212873 913461531 353117604 961085081 86554440 294505657 236193239 965662124 935301085 44928692 39489076 116581950 849253996 304176279 305588 236157194 594735170 584161167 606447419 516435184 203947287 371612019 81924238 201816573 369524740 889607619 829951843 372114533 721533072 726122148 662243918 239573890 567133608 333480937 340104663 930160343 412324517 531154951 637575521 688313616 646758975 385415964 723851326 936780544 780091804 317314035 552080555 31115428 753570123 175477495 457531079 995616285 217370176 326866755 908207514 677023414 613335770 174103443 725063705 33577956 263132638 8344913 949160472 346091073 926557048 845436299 747291484 16814225 284679230 435545590 983092878 157505727 525627436 337106935 411027009 833467614 147018664 425239950 893776873 443856937 483225728 174390386 917067497 313209861 98082027 869350133 69585293 332338427 947070081 787350806 845160452 242971070 303151435 270147966 212304232 15830570 618991799 894710910 823187643 480523332 358384791 409438987 323003364 231697206 301518379 727242690 863451319 527901780 560958229 889888238 149088747 946208280 536603751 629384831 899243043 52288292 121288083 229941513 88339687 800698696 925388663 764573901 171500967 518045299 474256726 57154992 445778623 903409600 915633123 144194884 299996783 480253044 692909612 1470400 451366369 578236666 360042679 297698050 856140324 929383398 758394977 408120210 14123317 622430963 274517370 808925599 97648370 157897729 15325880 452200448 273331748 565396513 228199992 363682100 786719617 703558784 437681280 2852452 723587741 847095166 541830013 524554333 751075067 932396956 563220867 942422168 728747781 543419528 953814096 98285619 667189002 969227282 89955849 162545399 837900356 723975991 912093245 579832400 676868056 454841112 695640284 46194265 564764619 448690691 677000010 169631951 929651729 908296810 162078025 250580506 991193985 230132712 381135367 322777161 505185501 46016576 330833175 574611987 288227789 840550497 438441336 3576790 311846884 332306776 304227472 527316639 876695964 646354276 44458797 351488789 948119892 116021480 897217152 664651925 744359513 537596785 659502890 678144541 419822550 366777007 911926320 902637394 493086699 385138556 956423167 460513158 818061971 776740577 795450728 506339505 748764860 978921730 7189168 357490287 917298999 527247928 809154167 499777800 542361016 780364798 820841674 875445869 543212520 390220277 879319587 127693108 131263050 120840424 259572824 978838940 245855059 627554253 109408692 605301902 260953690 984667322 984195557 534418070 83137187 775082489 354339066 432026353 572721234 732842224 472603255 290042998 432196990 861107509 716177466 255628469 704866589 261781379 380766104 758477527 299292688 252435131 797599299 225511604 189350949 173568747 140121943 694788046 19197703 661959749 711794265 424840779 22730576 885795877 526087736 124619771 724708742 160914444 245513290 378722643 218531087 209639592 773100362 580084338 662789949 85706 868425310 970436131 302486086 73865329 297512468 873206995 771453008 419093946 719482208 386378648 184858724 274990071 293102754 540009778 919257969 386268825 463179931 281900810 423186766 380872758 582338941 344543790 968475587 297940891 345246169 411767894 186689395 850497194 314401709 274545889 174375152 599528827 57808225 45188565 504522680 922694473 427391678 610839777 821005608 388257143 44481534 99386974 754521483 214827663 421962428 109279819 859694352 348324164 712065277 231556430 688953554 11088757 153806380 998749110 995026388 152081698 432344613 603786879 64853501 776853878 276053022 479760448 25817373 381035974 452110784 649408073 811122670 402053261 709930521 662691714 483928340 337340012 609961627 39833990 841602582 308974385 602144292 543189396 214516839 127961294 462136317 374931859 100394588 290556511 666730190 794103571 749539900 44857637 406886319 461952584 331585324 241357711 862479646 359763733 229920831 698309676 661457407 243177471 734522220 660541114 746898590 150292278 581114009 511002909 703510965 223493010 755439243 746511452 265527130 758149521 682767349 827812273 132600858 278179418 448413294 304747889 332108253 786830014 655081851 751451170 972361464 653848117 62802818 165298030 331108652 829971931 910064342 703753517 247631516 242883959 100705457 373655635 555179221 119476860 298493491 720858631 507356108 221487359 26130789 865311893 566578400 902340800 804624953 669550702 555632599 17543716 544599943 77847854 1614808 263182143 254486544 523452059 94881409 446780098 876227456 688087962 52391624 705226515 389671783 457830215 897220630 462791987 552020029 441027028 714642745 119719380 983179362 19911085 380094821 735790158 485172517 8540756 80245045 247067553 616091058 588362116 638177713 405533040 698240037 311897110 828586820 667971344 631080061 806978828 366520519 712925813 105140643 845401746 465624181 200664893 609169516 202338555 233434354 810025905 454720140 330290114 809480780 677136320 717563818 376993931 912132858 734532610 510008396 402243617 137980631 869891252 545921250 766811511 960496682 15782592 676577992 221450920 941948062 423752372 231669054 217222649 733885005 29109193 805208686 969801426 363139758 691675352 904807527 182335690 669562283 217548656 524211749 273875099 809288335 176318142 274243209 997496103 425562894 383342230 902820184 179665528 642240585 217259643 339670603 628216004 785658819 651472531 442147826 575220583 376555624 639429803 737380567 825415137 360123793 670784830 608552031 407150814 844003831 337397353 975500250 267102005 387723457 686832373 402983298 951529693 816796799 731348303 157420925 69215738 793379873 755522703 28400845 329367513 157250056 978672500 806882408 404889066 609882360 399429991 13620773 48364239 860715806 241867637 916776903 52031811 255855891 553033046 658267636 177564468 217381068 145300587 212418371 963095736 426420407 163597496 693791016 288207625 690315421 627443185 422264582 583529353 415702707 391603305 800510246 119335109 540617366 57250847 475773373 327332717 792089677 336543164 311589853 805861216 992677189 150913425 235485837 146566815 9513810 314034835 663455666 302844503 917065651 607623008 586263843 185548248 646350858 208694593 830163347 816903584 273832297 52153127 714183593 899251283 169769795 998355620 139435753 697406907 994937971 335448828 678185159 443766216 562514497 816184855 108908445 415498652 508739928 192862079 380590505 68685942 507761872 636893553 15736343 745827520 726310183 657496006 245334521 70461201 98134335 853642508 798049604 45388067 436433765 700033901 366584287 607217366 698584657 969179076 611547281 792893754 278179359 85814412 986123784 60602753 253354835 85135603 469422048 8242691 712807900 646381505 549685146 106932038 779431438 721199728 671319970 229227254 670380456 362621984 244018245 876981989 570258638 283560600 285609661 79364622 262354190 358891849 493487149 511122325 126815325 564598340 482817695 545965509 56896534 374837584 557920766 370058513 568589826 226219217 677218605 434359061 911429452 623281365 636614884 953572242 551133066 806697491 629387474 485630839 330875321 551787245 600011913 147976149 14046014 560152169 246081661 180237029 522436326 746776884 674203922 292033294 992714216 131037353 140232082 432553946 77453022 955191749 150882095 622156541 922199250 648696369 253244415 752509264 513737260 327002938 688350212 301327833 633811909 794592472 793072170 133580993 581275096 230141610 443156801 854649436 284406540 975911675 939117824 727803943 824129903 409764274 947426060 892380098 73358706 789910894 35966957 681548795 355317495 50408557 301405203 901191618 69844030 761539989 315708119 194838838 207054074 403261810 941870971 25788058 738682175 90018113 888919080 709426519 348716167 14679004 233213168 185331457 81548985 97682638 679546573 397199442 859668258 257336133 577242270 777315889 626333050 359925016 747823151 501312165 49811162 55199687 855259949 147991012 195801291 410489208 628358616 497292617 7743543 136160252 950541256 786039892 902059125 314609098 527049548 863091638 859020867 518503679 228382742 79962174 514877637 749076069 540945502 141788648 489789574 129663593 674550855 159039192 443039872 204949540 183727319 724945498 973091598 110136404 568934142 197588959 215919861 383506017 90902171 55735300 365400674 330637658 711371626 416189834 83147754 657561846 980802585 411014753 171288460 979117718 552452916 610935447 623474607 775630398 696463417 580990825 841283096 253422496 173959813 321419325 333516038 333175059 432169572 707191705 273867793 524460693 919199751 78998068 594307902 167516364 291622022 673244651 833763324 419979275 862809317 744139451 157721120 771089735 387604746 750950869 231005415 749366559 883239625 754694283 508842998 347804378 889184473 422479188 808575579 769024360 945717722 39250651 378926987 238960227 766634841 281238754 625809504 688527620 674332358 245690724 984938533 733152057 5179003 179637115 606056324 755319436 639043764 184064614 25390483 177835833 46243490 662738580 84061903 297515289 582109011 955456150 567066141 893955769 323720892 580643882 212767691 558220869 733449926 255703859 654378637 261423764 995596853 284720313 932350593 586107435 724765626 313787376 599108139 653355561 22862067 586701108 343796602 32837474 310043485 525952269 15474372 408574797 791581024 427516190 481520069 189600006 208576339 54701887 610387619 193338969 157665386 227890282 914243305 639667379 674029513 753752004 14106764 143643178 787523958 895571350 766382828 958999680 932708710 581748309 158578641 355426843 307486323 856578459 74888289 448580872 344969561 308159274 812274229 929032195 579263430 325102578 532934730 376052582 62905672 64896258 341617156 192479293 492599901 703106711 969580596 915186996 956028256 368442128 91799564 384334243 391774622 488528385 251915816 208312458 624150601 171714837 960536979 601491854 488477048 410710827 540947125 99435011 832011565 433992519 711200355 467731420 249411666 604357520 580481757 597055160 39358903 101989471 831549127 984578787 474796311 994116395 584493103 706926663 531507216 671259032 687772042 245391741 371543343 33362549 515821236 238502086 887706850 435609263 842787828 180740870 301488773 775591525 184886519 909875407 242898777 888943067 735079888 623125849 704277893 821781626 772712958 416993150 79304475 174200790 296754536 877174986 727303957 865178283 692856665 694653549 951324244 544260571 579143558 383741498 925853858 427722610 649945869 798843828 558029745 707498916 527111029 669182208 247408153 361072074 928508326 736463854 961189976 105094507 948409595 589460727 489941981 218042157 709726254 650897974 283901429 988877800 306752103 102186614 310832348 599761300 78356529 132336677 618657457 451363416 815746688 638960731 472761983 736587131 450291636 699260373 741838646 71559794 144262802 201446397 360698032 758426075 831363910 669402080 938330801 325531253 566751332 937749303 805261789 291556394 646019054 130427232 227390150 599687445 900450373 862484067 713872616 968376939 811921719 662813679 654438821 342090638 430888698 105321565 541082434 6588175 322776363 28275625 223446003 462128541 280859599 30469754 608965328 737688852 207882323 429601573 551555804 953683832 27850894 757725339 431257600 521818101 304364475 877248380 791378444 91732954 754154880 191678227 126004157 209349544 615618797 657889357 411199916 505879552 146975088 480107200 613026667 784748717 489718767 252238766 601810535 383464352 280208298 850956540 990030072 414053880 382985553 359587898 188530530 264537846 81719796 91131296 922944205 492864262 70864918 360424717 584811594 51888317 157304986 782545157 107441620 759540178 468792270 481344444 966716749 345049132 257453160 54315014 687204731 860503764 735043714 242245734 513181454 237871871 839960741 447666177 141488548 777907465 384975547 191472035 287248060 605123441 273944858 472573128 47309504 169146852 157403521 889719437 860486145 292191800 261821460 765474490 850291126 914542438 462476897 918525119 959317251 105590931 21786205 39884465 160426992 77898761 984330597 821705297 669622895 757140024 503976253 109253639 901187417 669305537 357361427 768494558 968872814 895728996 442822782 972944018 374048857 476379404 407720571 344537217 365286315 479848654 976502893 326898867 450969565 256907495 947270944 760813523 691661646 474167221 536233936 734244156 179823436 646457029 46118676 455497710 231401221 900398540 401568755 896617359 591074450 209479589 211695322 399918957 799239158 39498579 694075553 692964737 706631193 298123521 530392960 615429992 466693068 171273985 947013154 818241900 259177163 89156302 863203984 494652283 55540914 928075280 139989824 715872298 615910926 941327757 894594578 896069566 257700177 323833402 86169929 786492185 382740434 473701941 540730513 644953292 810672341 454659002 559334914 590586896 628731518 567004221 690664727 381240256 811100901 53118284 10086326 2558824 232544509 610720162 191883567 985431092 94811564 251792423 16601394 945579004 785614008 937670366 229790431 414325312 44631508 402060291 415281596 39213351 638509466 164151020 940757686 527825536 994126985 453103902 507452704 540367042 929271819 571945796 299335098 954647053 761863538 853680690 913191851 507272486 333806841 841471457 724779898 897151105 581618876 856814198 749850656 76545840 463608776 757743420 379444731 153148404 158972174 173295526 410227150 773463095 947368550 142071376 245337544 889664260 60685716 614727164 805624446 799006230 657447742 438364310 21566959 868276938 378185208 475480626 900406907 787278120 144886073 657958922 665115636 525167327 550092898 286148992 392479375 884333127 294694334 307133732 221064165 829848412 847590271 704517540 576295424 884805322 58117819 370886366 135960138 966324957 203057782 803256020 300947100 582356111 176867993 5137074 475396655 817891451 11059955 818067405 189834922 298394093 986554432 627447453 77350685 947380176 819232031 878831558 784960760 564869054 167000346 980626199 602303775 770882295 805722020 265596029 31852238 18447199 941175574 298615063 497519802 488986248 168614318 561672745 209240054 114867881 361286297 615444506 851565310 620286879 885035236 188102530 49996475 541807090 501503117 714541082 756657524 48010196 689630578 911666631 184920546 297011737 133839966 548830099 624892452 71681346 322175491 253374639 807396028 56620150 405404663 958878586 768652186 120383620 948584381 439584373 908653328 194547941 199511486 954575692 291454174 665963188 331400268 553322962 588784422 686752187 942711971 863938307 580764539 384366442 584741341 602392578 513606093 389907927 208145928 475959065 712187259 882656960 514912534 506505404 46971976 436016785 328623583 177347719 216756070 167315797 504289571 16855612 648035433 871505346 679602829 198383305 417424970 657990716 560981933 752553276 878056563 524579782 777606397 719105495 989566895 854782738 40176862 553923831 946143538 774139766 419890840 153258026 554448799 359919603 856191841 550105893 644990453 341710892 235268940 309998270 668269730 138620790 794102878 100198398 360742527 374771140 664027521 23158543 570049990 513908406 398664067 359804483 2913052 71234709 876123678 662412050 454461587 364428622 641445620 496304934 86591640 161133944 894946448 938385223 128193808 869944150 678398305 659309159 459691581 934216140 104790720 369105571 293174221 712866667 308650992 638350909 960815571 949626728 296625946 733885089 349615567 723763875 494600270 173571424 958218148 933513892 625238660 85461818 729887394 481195162 283500706 172031760 491921532 222771807 932704877 588909292 639345235 330153324 480152984 945139971 767969188 675960814 141234365 372522670 636881253 709405616 810337368 50334578 679559398 104997679 543018970 903212540 201927400 974500994 168074384 382543130 585173133 628009592 557221557 630185676 513692258 275349885 613170278 476020533 674113889 11120807 510953648 51294109 981888992 424746167 350802054 618134906 370381484 315212562 780818877 300968806 434862572 837031627 487717913 966789157 401771065 821683607 840707139 810359715 320790415 325118164 91156169 42849777 188552786 489099916 433150249 496562250 245193297 271896174 262480065 872736788 943825856 629450448 707284956 974848985 872943678 404435889 837222571 601775692 965521872 506014136 511495236 924537673 471581155 902143287 614570926 699822290 930016329 386673955 470771919 709186578 564313669 612022808 880390008 274786399 665197943 750783332 542443109 295620657 869210863 190812148 345310771 415309358 355248672 289212765 371789421 41559071 751608813 962740959 987484804 729831928 104399252 439282275 702780629 711784148 457498055 29844341 264081307 116012025 802338712 554063440 983803907 869082574 755405192 935726289 171202334 981419241 348435576 829470590 64769254 456577282 561825979 981637770 719959355 472421379 506360063 703547595 99236069 906938607 81853286 315008191 888933015 468248319 545495159 833644940 499744745 26246797 848839704 151391750 758802527 434094106 835821223 510148001 643906654 881315154 548987866 294269307 210828347 931717644 798808539 708318044 741370159 380562751 304269364 481486004 243549784 299082256 245785820 343445917 983106498 942052043 852461361 616436691 612431711 90511840 348962039 707245501 519051269 324744941 721592154 793255272 234210423 788202423 75962866 561897362 566301791 89782562 344404411 859921558 889304911 72994890 516828187 411051901 975760316 435567975 541514205 290849010 46644748 281150681 153365046 110540369 635089286 236744750 132092873 729564311 936340828 421514524 661946772 458070892 260576166 24288888 834402314 688082462 188081254 686906189 79030781 362373289 48628359 38067647 320452010 854853797 86250710 412195365 564998072 84690012 765371154 592539126 223470131 250502080 808744663 997512412 336502673 264543590 960202416 486269342 575254447 690493327 335951121 904466739 802513107 94910238 260829006 719690673 191035561 772866216 295329964 785558364 679442244 140935006 848365909 800774563 667474472 465973798 330070358 247882262 210038580 203118723 302695343 30459250 93561785 277258659 260083000 785177754 958936425 295221601 598403523 57781147 159354213 50361144 514652412 51298978 4913966 439425365 568723326 192954129 611871157 446196610 757318091 85010536 556539980 746662971 517146442 119933266 643485109 178865560 594851150 833378980 504859406 431668841 125963792 999626840 790525677 373569302 68148144 838848661 219971136 419565757 56438074 878202527 541817192 750393366 143859100 70270958 312481576 815376525 937274546 747490076 409951664 91860273 154968636 434601199 938709395 889727414 35790564 65061197 417281742 437440895 869188923 365622861 261283785 980435603 30939321 29609770 288506446 709423262 471146174 89327431 433129109 594471419 709258136 927621423 835416634 611343012 464706423 9974676 85791041 341071177 628095342 689061971 669904665 382519345 40320647 359969134 380149143 446021718 458381479 421739539 822070776 334604376 623472542 591954320 20110817 995524478 601532969 61884007 986803297 754577079 332341476 862005044 901717737 573718426 17461598 608636361 926225499 940070759 185869573 513473045 63369209 501097988 215003698 691901746 603417714 184137475 248798504 867653225 117300443 685593239 739220751 851231265 740315056 730172067 828826361 607050990 386590680 266084268 562676446 746391178 750176670 219750883 324290209 42705628 401520058 710654493 102344457 370535148 298036809 168727258 758309579 230775790 678825935 624670020 528336251 805438014 770033209 171195431 238594719 791425119 373174748 308803837 485356188 317334010 366839414 465193697 444595657 319011559 339137069 995492253 477869914 715769885 749084812 868282529 712933491 499953343 854517645 114591747 735269146 77401882 600712326 481534339 941705541 927578533 183940418 879474567 156944842 413359093 712795884 667852319 97427821 327528910 835525404 345148419 343346131 807581215 203814090 920062865 577107088 138723320 764872545 205888465 54739996 801460119 340322217 598029169 983796954 879028060 732015323 123877835 564141586 412375253 666522515 305111517 768551158 645566899 935666391 430329162 104186785 261429461 226362128 736491368 58781712 871532345 69629211 99037228 771988270 360305420 943920942 935378227 17130445 783708836 508018674 641028294 803423654 816528765 877130101 472054484 852380251 713582900 228807721 824156149 990962290 635619993 665417196 521291878 251292256 610198174 687037190 683428626 159141245 123091807 55024930 347606149 847313674 430936861 667733079 618348023 561638704 184741702 504500769 211272777 667111937 836713325 115436642 330484990 628674679 354796107 628998766 683038539 132603247 701180614 395169269 127321858 921073336 940383463 262070807 132179878 316297214 361766627 716277334 263006557 342604257 789006867 361780644 406856180 359012571 696124925 331336018 540792294 372844633 119244619 982134816 300577616 781275050 132573391 366498099 281619707 49830669 41853575 903314711 641204562 828535963 264140434 941006529 462738803 876930914 899430465 654548623 570608662 601372756 444152067 316890436 686736040 289468233 913762674 962061586 627592246 815574531 209836118 460827277 421762166 968227625 259985816 315890607 816231626 432905037 466547530 835743968 517114167 315689448 621626026 842533357 208976236 580728926 983855385 319646473 277424068 359262454 40132898 506293717 584230971 709421536 404217722 795990611 123358070 52330040 824307196 317347313 886637003 441548544 758688938 987371141 671074858 30401564 389932208 92160333 633553206 530278756 337910626 196458989 192956470 169221517 583428922 308717424 380077083 198134582 275230938 450648400 573271161 561936879 302955025 826899561 379045008 455187236 211198673 676954620 595639369 845734193 105447985 876463804 26282288 271024212 194968955 811914685 781403518 713543099 208641300 417014648 239242516 968512627 490465684 120206039 766753912 846729335 223191732 190191141 554238939 193928615 297345110 672812054 289742863 900940495 235716490 136418508 651453848 20383388 747505534 164170951 90826651 229720237 830400657 379844088 50401513 25734783 424997698 939571379 833868025 643304061 458740546 613474483 14106343 94721783 616974432 620451872 487507582 811546406 622453656 684093574 545913645 509350957 768592398 538404828 631099145 980531732 601820684 652533117 730553299 359219404 915688967 777732913 872058353 943556913 245704602 761523233 307273589 909694464 71252614 786961382 526395667 664201444 288277434 981160314 150906667 677873520 357936198 996403271 132771525 341005852 380862054 444251927 648098960 839531848 239207550 666753823 309272036 672987713 135213595 655822076 792185792 484309555 450705131 529864631 548767690 539406138 141589455 150900152 955055443 499351896 292917188 774862297 631110225 764214644 655596797 384222802 505931875 864464995 326592967 960612301 928693710 953740762 661445536 364178518 142381192 714058620 364676651 245899361 130528546 972054482 126636595 490149837 721943008 972502352 756632745 796722908 957828004 245295947 935793068 418006846 234096898 875990278 667921278 638562056 181473583 519676587 291901322 801884089 459605770 229717067 708805987 946450738 626712605 353378526 8703429 326041795 862317459 526328135 79732112 197723680 227182404 595463500 541336276 422350953 866702003 708169379 108803011 345080097 365623299 790704098 815857076 283724083 423819015 896707466 179535408 819552248 848334386 59034888 737001952 826877485 466447270 463004585 166318488 495150324 683920426 527116200 607774035 520258271 912586286 883473702 808498993 510898401 6120649 287611180 4219521 106912084 429435575 672570541 861418164 874513666 276890978 77611392 221847144 13906455 743240155 527773543 982693983 524596519 669689814 90765067 570351234 383807534 885553332 228017918 857860840 892889494 470539900 691540153 736760523 146261800 834354909 443797917 872586125 44149532 710127662 830015475 936876985 715016463 730229870 436745709 987444227 706326275 368319558 266407588 898270278 81256040 688680963 494662936 950398089 428960531 815711391 754427189 329302000 828687425 951787188 878319304 561446356 527707543 148675984 987161233 225969327 803510818 912239134 168170794 38995234 249069401 926220279 507914272 873237754 755951639 681547864 427222756 658905642 123890595 888564010 477958094 918527952 820283561 365444092 56490785 726587178 525485119 707483910 618452996 696726182 158704865 484518953 619115915 306499289 266269044 140114919 325705646 865934204 651412043 820264050 837775437 889048179 934217746 946014369 186999346 746335942 172127982 807000309 232127504 584933294 9117025 497214610 770168703 34194307 316365654 43664971 653032448 695545032 465952551 282474901 294093818 891716393 758933646 999519117 860952516 345520248 284108210 487443967 198241939 330946997 958221345 180995673 274492806 115898876 708648397 765465774 321747629 984932254 895026194 309556419 828615156 92502794 107483324 299935997 26833975 632304608 321915637 441789803 133527092 894066144 302593103 475137219 190961048 287471092 254486477 608731495 890966002 646396212 996176591 198333531 426955709 17348055 572504100 568227409 179221848 452381760 333819651 996007582 343691788 19313662 311117318 880319556 203529486 305701570 121882166 365974249 826635381 971928936 36986880 879273437 931254337 540670194 798437942 650197269 460586333 389805452 956502294 641648177 399534744 124388233 631903048 909155705 445719470 803138149 414796502 768750813 733090878 390639552 810395192 50185456 435655380 278498923 631915850 823977465 104491487 283706709 736291409 401432280 641751737 503324315 713906938 493780000 630987938 258417790 337531738 942552326 413311943 347469932 93351152 292910700 438968884 523418617 846054305 987907033 313076967 598833117 204250296 902533753 183605948 578163963 146245100 977479719 403278723 624622945 905532507 289693790 741011687 142812483 274568072 168248139 106646917 945727481 76904546 833184950 837173725 12065030 187083838 103636766 30697302 678489369 38475737 367201949 732013894 369660675 668596313 268355069 91341796 998621887 312157769 636289449 287968592 299427441 805997726 988590783 409202839 592388963 406928315 75983863 114350245 873833736 628602463 67092159 117264214 91887615 859579066 79688224 37856874 333891848 257937761 179969494 463749774 211635214 819994193 914796863 97845838 259878694 832369647 54432353 879782696 667302282 980002310 734808301 338528379 99994783 208793297 988762425 533058704 341972206 652479977 481666883 508634009 683166506 818583380 817554869 558081198 49777969 922028671 755408093 34442960 188553988 55185729 167600562 874056172 714235855 138546389 586589907 591868879 639048423 158891746 690464137 422680372 864909506 962988148 169972929 884498620 718271497 355579649 925210644 605954544 688476804 87594852 80615616 969572419 959934503 145323239 259189935 652588557 206796814 819333172 114313066 507377037 879224187 178315872 813288238 662653425 830636250 668676073 240407003 174844485 537039039 444953525 549612018 845151879 720947429 804443151 767606185 770346645 771105580 610401710 949545427 370675512 835806372 941608112 362713328 348119844 398016638 774624152 992538153 531564017 800204053 819266135 29810252 742378273 34186477 44643132 317147345 401538331 150199728 515094026 924244181 227490353 334183219 22265573 122620960 830053790 641525360 133435225 133604387 186234499 434251402 845329242 214428917 978408166 984892366 927448139 839103060 858757309 283767983 901653481 560997031 991491292 492345031 339110247 844944382 167767561 810338264 556387928 154914578 981197805 669424848 793345469 845330497 332314133 930000064 291228916 165043855 581877501 792697318 207647953 879556784 215003398 927901348 732115079 646132728 215217530 848531589 214025395 53158760 180394379 67276602 868004953 130121385 621755215 150195107 505102310 129206021 791491784 232610495 204933685 390732409 493916899 446869179 508189050 50867871 758973551 939031531 632519779 258431425 66029858 155660232 950674681 841452495 733758627 918751736 146557872 933115743 189803892 528974661 966229608 904767664 308111886 329510049 682799974 930702506 856521670 400382505 867646548 752014303 427802080 804522528 210348364 188765055 429510785 275261425 583493576 878574704 763742143 958981422 68277169 194665526 482209934 823311509 815468623 925360640 142848466 104063238 882276185 954793385 862478678 763403406 168462828 641100458 112330955 743436642 630267280 967307569 971152582 950465755 512417586 876633864 344273356 809325690 42619941 326052523 299197767 117392113 719528740 727803955 856723589 385725197 885364571 720030828 712797632 693583563 90997075 843769284 743791898 532386383 343394303 823455061 679581598 131131621 655155136 352963032 699149885 983045117 392829276 662316216 181400268 822494773 214877948 174362886 817207568 701525073 240603450 743290487 12438448 748099643 23959569 686943337 181770561 693499397 547842020 127768806 637449528 95613674 16976005 932026780 9990394 901073490 517751333 812589795 574899404 688059586 581471843 613628086 253936357 972788979 536052036 4651458 292134488 253947066 120227382 549089878 850955819 455337504 926343951 659669350 950038083 879511630 268926728 348835219 600817268 367403158 216561101 812004386 270838136 494241655 258343012 947058180 105360879 385598350 571058249 277061330 2098018 6056108 455954515 465705417 246783298 707115203 123137484 411962064 186401258 163610348 150092127 851038072 172625819 328889452 963560995 862444535 611233146 703614895 2634385 426126380 86736030 365582149 405565331 282415776 405972735 95978732 792808309 299897217 553949819 634569351 629074666 943297445 68696029 256642336 633203730 320295820 278226392 450819564 270401394 440049249 503388675 639440710 720750838 221382892 530175457 780634033 818772210 32658093 965191640 748136662 564183847 325328570 246974014 731155596 499559865 584719072 455465034 122351565 142193715 917667471 820056348 653276091 853246603 757162458 435942079 409154720 241078817 324688004 125919013 454908659 340537014 757753587 278116131 485785677 769884539 905412404 537377150 23553648 132855811 952481283 759449566 347699276 327716172 814620603 695321559 572919534 800176316 808518500 221379549 68183190 332286238 385736111 344497237 145503143 330449835 477532659 312970377 934489515 957803772 478770988 527972263 892733011 67826712 282397447 538059721 962526844 957170542 248569551 153905906 14766891 91655632 612790397 942826506 690733706 677194625 176680364 16627683 270221036 464671006 186329259 687410230 142755788 204630202 636738402 468518053 367837903 571630793 912258669 349765559 825521853 218452263 34631688 421549535 941612684 333540379 405956383 185088117 370579543 97197905 627104314 698122428 756672096 676081886 510887575 681288412 629284371 547908161 657453843 927685863 731172101 770335583 571301682 819744215 797451757 433620354 316902441 38017162 593226672 928219749 859428810 817212620 59490908 490722592 854326678 875062350 278778913 690049338 542692280 631251880 761796700 82550688 28025338 998436189 164811921 464757162 437502165 561830101 267655526 173182994 196871275 683028322 748154294 365619198 856818556 858794813 930695030 730727418 411808896 188526215 562129613 622579454 928128139 572364361 777199876 512436070 796542041 417143154 677619089 423660537 962096980 839500259 42987789 157942497 566674059 144878932 123757625 693084852 163488695 919874676 511893764 937422705 258442804 265937874 36999555 402871675 263186954 619621609 651813610 650708641 694056170 499317528 769220261 366263064 226642733 729009834 806891320 75906172 345499852 357818321 707588443 303788756 278398579 980558755 918144231 609203598 805466735 251490594 632484319 75208828 537477561 40143418 817215342 649489630 142996720 182332090 631658728 458966102 289930586 542304093 917134538 264912887 430360552 235764416 482499510 866805552 163017777 560564338 593049975 789094115 838837105 419979747 93346303 411694672 594154388 272688488 313032811 400166443 385947686 7822662 590895101 304160643 914025311 726301862 398838561 477085403 64421663 92853912 893256298 860848915 399609324 497056023 75700628 199812730 355003897 457021441 180625539 387854791 684919830 172763171 450917950 225741589 355947211 518825002 326064125 440427754 117174070 650614197 162540057 583254837 455097902 299731521 823453974 784328265 169037606 421376568 18575006 171930597 603222848 858040301 174119047 892710954 249396803 89783447 552679880 168716972 781861275 287623511 12219272 346341211 219125601 446602808 123508752 117680022 173929813 422567722 940334039 125549347 536434140 234382088 990146674 352460078 575786251 344791187 586424747 59300684 489783186 346247539 165535847 1132669 555967957 858876215 489067964 612943395 678286040 78221916 425208294 350727437 385929038 423181125 732750666 801193583 311173772 398610741 748686702 387471591 368496530 434236256 386686475 542062971 148482567 345088483 614818806 225859223 234418489 748140218 414647353 316265742 328826655 862311632 753232121 693967653 726606170 772603128 328302735 262266232 967018547 979106027 7270512 181886491 363554199 524609095 543783492 471737216 935755291 76472216 644251862 766734212 428701698 219315535 176831256 68719727 152900144 659188419 437021477 940697581 103327032 990720313 584474945 973522961 444439631 178821335 961630934 214467163 694573652 581736368 916502905 109922988 35285200 2825919 557210084 583503448 866274545 541827297 881005819 547871504 686248588 958463969 663996616 712178162 717142820 370054001 827590528 501179522 558784735 881323562 29005439 881166257 786416011 726482575 211834693 855269073 124780961 644132869 640794751 235757215 687452993 532755423 608734463 670776897 621202222 442451032 817420994 596295748 670529501 958246288 163096557 183923615 314068064 288385169 27092422 581964975 437517177 923343435 386966468 789132852 999619215 807365273 330442371 497141860 991172784 476370745 907084482 578153422 239470999 515422423 515688560 683687024 480746143 312940037 709359521 323434674 978068432 235710520 416346506 185712223 171308762 425117399 457126294 481782700 818783255 855817766 289069132 182617145 101734784 792471130 526930019 667981319 231815616 700768909 286913456 582220932 654252329 259390395 30967354 875806603 401394349 827818449 670272300 320509011 848418030 619196064 455752155 455927427 195433781 965927136 926689982 657041193 901232748 386844981 401267837 656915896 837724207 890865957 864803038 214737169 747872186 646863395 938708443 66347126 117401847 961501830 836436616 519502999 665146738 214289554 269015085 6484100 809166182 715775857 168398644 940819650 562085554 407194162 420230193 754222129 556319195 643030734 776007900 491747102 264766223 993734440 489370397 727154243 406488360 823328264 218529276 641286071 369008807 434215966 26671789 698589699 314485422 375868167 149052810 921488660 11970577 972080194 130636570 167973182 60359746 122540088 702711559 223712321 833761383 765707066 319927073 958925375 95393859 415281795 838503013 219958468 718648646 406730034 530265079 920955339 447961991 249739601 964714018 661746860 460793028 948700883 513615706 460264753 487123817 534152334 832386360 956315777 621734784 287994694 929686915 874223159 982809539 998891684 853680419 106462028 142973582 689405496 371409194 560847657 327983855 920905852 862362073 910003864 333151119 12661714 336379277 46502099 622318023 961016194 171658709 359688305 608172182 733923517 224138851 383391866 118417828 709542300 790404625 377522012 989387328 531499042 826175972 478706156 376423523 965295929 716523016 980466281 991046058 983321518 412084432 491429749 648581212 457196863 741861812 428989725 845089896 417446280 92663901 67784152 195976809 188782873 810060177 70156163 285130395 131722846 10500164 669162596 49994213 816618673 160505490 418240039 978035926 81140565 366645955 134956770 247639207 19241586 53560378 882935315 978615351 314042394 149378190 816181660 679913229 984463686 205916284 861808334 797854807 222030039 642054887 577363292 614093294 944554646 717077463 144728677 51554128 653320756 275673985 425062253 573496998 321291340 312095040 783570784 735424445 342118238 573194392 666733463 189372172 347133650 668967989 524126923 207085239 793599484 138424040 215113762 600036222 104101141 681355438 304410670 754090967 232848442 847487915 969301983 946514644 55181434 325064486 658445204 231227705 920555715 509342873 667451922 272568939 7368943 481176216 333896071 986448758 213433021 717947883 19964041 23412247 514000090 591256700 236790033 888838569 162329559 397003357 756628872 452240949 313820968 758188749 970390461 308310378 352247863 446206250 522951649 600972702 662585156 64941058 867575698 469675221 305504902 970620939 686901462 291199409 966948631 533592346 175780637 669460610 244388851 759772982 453481528 855897665 23212808 469112205 795178854 88229261 532431909 233492845 988976204 193748396 914307588 963392851 213215225 25075598 196885318 571443683 586157024 969999052 338770292 696023272 513396447 972851874 851516928 64378455 243578427 988924152 499540293 185650502 598343840 37751137 980887937 977157374 47321894 743812111 75040733 552918503 314520139 240528613 120713067 675909782 361317616 352415846 514846247 679655108 805767012 975268550 665801198 788726870 828637790 413477595 25752461 339380313 292009976 993570594 754053043 823895036 380923069 37103813 407080441 488079775 671868565 36419731 423543266 398895551 938649044 344293374 729243095 761872396 308023357 375285294 560990249 853642843 677045233 447221477 210226191 216522145 572708991 824017297 872130220 964358919 445393883 696451661 360564235 906193621 127994722 140721365 499865626 556544383 129631452 144651667 638759349 838433950 813271412 244189332 583081885 614713851 877366976 550117011 582282104 823400573 229622205 931745259 8624859 771172664 577225169 965544866 305401917 307914857 856807878 714652783 330347521 383062127 430288086 539635616 174992239 782538456 452305307 477607994 479506873 518367065 735295771 715007972 283536118 443961547 977658820 579000298 807677229 64363569 810620010 417402951 889865023 721100729 159195980 225345689 832865284 959162800 788707086 283207972 314652467 756373912 753285566 358760924 728311404 278698771 879754704 188889431 20653115 358046441 949252387 597071314 346427661 717648913 308160504 30134838 32971326 482864290 441943043 621539602 170533650 261324003 782192980 464223646 455039407 965826109 514017131 762691256 488171557 835102276 360534058 440798184 623865198 227935668 816613603 199424606 232888428 639489904 843379017 485136881 118847211 998122882 891642486 193156125 648799897 569292833 882943988 29232909 218043918 118825122 796328110 230456462 595374030 10480270 623690747 985513241 508488514 671837837 616480919 336259276 250859963 527353203 472747942 513825905 280587120 677344570 533748150 761598067 401814151 727573000 842739135 495330282 495770114 616023848 608472602 106108315 108162267 701409805 39355790 772021476 208719077 691505486 979210314 134364381 284075491 191634867 654755552 263072054 59144317 688071462 154268496 1613138 429077830 386423738 532093952 861490490 667471801 574970029 42087608 554139288 22013237 356663645 839477172 229542856 961605120 353387096 799869069 61860553 392835154 896239184 460587336 417525310 781264704 411386149 367192916 108639868 983749580 647573204 975344262 219125876 3441119 993976459 726988315 49477836 28032842 617096095 660251577 433573062 460149449 568240262 400862826 271328595 830427897 202505194 161193897 703087115 217383270 711230354 366645836 848696874 75104640 918715249 312469919 367667612 409365410 690969764 900364876 236924910 382477325 767505007 445230952 969231191 274971111 313150778 18903410 815134647 270617156 998807453 358385486 930598805 160855838 359983949 930929995 715989279 40801365 197134899 334839834 895853869 922679474 182280535 492034525 607509055 84950247 67523053 804977940 455164796 200285325 886936145 81937331 647734195 457729827 514947845 585532427 842485339 836246294 445915572 803839961 730949780 583211188 350846514 408454466 172219940 399203131 42026365 856175064 688582268 324828614 90618037 949345162 351025586 21505636 832088612 533620152 295896967 217999618 351352897 130308136 227824735 395090042 404161189 466273289 217036362 400547728 880388372 580186347 706360834 6097898 194486392 857592271 773905380 796620572 479918054 706468375 213076216 763169692 320331672 811125396 180574189 51504078 327682035 399519867 16923675 522571004 320335998 315066469 521045119 858616404 692268273 902640477 97277634 326785009 887101476 894745548 573334069 366227412 31795486 115099272 956789450 471639271 366822918 85460945 838702631 630548986 187072307 832410185 636749967 719931590 561163293 194918398 36348400 445128943 16503400 999968102 714054372 513638650 630805219 766767200 101464490 457728861 611441787 89304879 330700587 198935407 764004688 235050878 480558065 977271919 864923042 270283623 711329079 116108937 107965664 320178786 684849116 45165519 245395611 564693082 428492647 517380407 474493324 607497880 663317767 255812516 655598746 495779540 366820498 193070304 865502673 638799913 562106249 465912989 692845408 747903007 142308885 224911729 596187813 168725918 803983360 412727262 963677987 501485569 272577989 162500945 9326980 863414274 150980994 516469529 925459101 360591561 607830016 145005933 650681447 284035809 434400687 168764016 824213769 469904702 823393185 891095340 852886986 729386560 915136666 481608851 588673567 37928108 64132609 576103035 745764517 797906607 922362080 913258663 221838365 49066715 617815287 868853185 975735411 322861362 602394012 886527065 453602744 189498391 44049118 896763881 624710956 611581782 101660264 291912146 469022766 113281321 724672658 983863903 602454348 420990758 133075293 385161150 301038904 969049945 105559918 490149131 482676686 95081259 794142996 140734276 892912400 650271861 343895880 891798103 954787370 131767407 252932266 789466128 338201200 634303682 418415742 209328940 750630490 680976508 613983670 688713805 582467217 460140303 253631976 916841207 832513755 357120346 924431954 534349985 131043117 102972580 47911134 231204256 501791394 198313369 320515357 140681273 301347454 319899466 878492990 573910930 917483311 707484731 94887209 591204030 507373376 933759821 369273696 895350198 918989428 677859022 151669270 383405659 861244077 630574967 757243935 162811767 565477619 27513695 332487165 620033466 357600380 809426191 61361875 716688574 982618018 351513203 759316340 774172165 992692457 631415777 731391831 867068917 53997050 982161684 378780059 246596323 604234924 515014198 91511303 223950855 538846201 840745681 886866441 803434625 575676674 983619291 502737337 630350940 215445527 37002160 710999254 422374281 908110245 159944470 288727496 617369825 992813386 769394234 809676961 539575589 35979468 715771060 818436626 607749118 895904532 429626751 145245823 458197246 506321716 725324799 466597613 493521052 805974377 993629952 346887692 156498239 114611220 981652414 311574325 241002536 582397125 489738961 505866597 755973265 667266856 103403324 626305091 364941451 121883169 948646258 396831006 154185756 821060267 246040134 554043375 701597230 542079223 174851061 753904725 972712846 461174100 453196581 599671447 39027706 185314625 534187488 873036964 322204433 788510305 22902431 925842195 985811804 181135226 16702271 449867811 305661772 655438726 679485442 132926653 863127100 2178718 622382745 874252654 276557162 783991044 774888729 790069614 479178500 758945315 935592186 785260446 401998615 483130768 684127785 817910146 47941279 417971205 575624175 944757837 88406651 552093286 154333185 169787861 633283189 735922367 751983995 272021399 270911041 691191104 754914791 953280955 312376946 571696966 110477871 930207761 957353873 2524246 467929511 883339024 139981568 329890075 456331023 419828443 618041367 570253414 726743948 209743923 597671689 854808117 736585642 325514 404727291 348275366 747141726 369549303 917580788 797746954 90932742 305403963 623740393 857101523 86290793 328064443 222583728 707781787 885036720 829942662 253230346 72123685 222155381 793292119 388341924 382700637 622872242 628357256 203055370 112283735 121370061 73341220 159071160 82618957 440011669 878486744 546590224 921186211 427790906 51284988 115705948 138656483 612215649 774394003 20712137 21576897 96374026 94299965 858727028 478760729 420288675 932371023 785247325 491461100 369169410 907264189 598160493 769102443 635958883 424427305 976131702 857170913 297318253 476024023 596480817 98942161 825675308 539735737 639878974 549086167 842997782 243413606 932311592 202092228 659992072 373251356 443440992 77485448 306934600 187780802 771221311 457071936 959015042 449894632 383766020 798753585 653800140 800373191 846842076 174050241 285541027 222490941 583152345 886987654 18054892 769030607 239192559 747198525 748313076 409425325 784918018 707641798 672106609 85252529 412517341 315227952 235849345 914337369 908744237 142512045 85799079 873141963 184320657 760905620 50905811 97645014 529372292 757189997 538429271 20746483 580457589 763739362 715562992 719569729 72528560 117152711 40613577 12250758 132780146 690549015 119543147 967375411 711911133 303285746 370989003 255787103 773384182 647011495 738870086 84438214 18772913 146365352 598218147 884440533 95313126 38605971 759178766 224205716 754636888 538582821 178594335 358890178 991470512 85788750 644892366 804065208 625820287 740539168 590888324 716172163 380808509 550558680 466691343 51820237 83553869 647141591 495066272 454892271 396295415 124917161 778002138 754334953 223707243 674407424 615403710 187922016 711127237 669093562 330603706 517206183 663811076 723787480 90067365 192724403 768252180 774491781 426455483 329002276 572778692 336832535 412911007 886676289 143993039 767462662 834517859 368563702 880224468 36071670 183774583 282218465 330593628 380936884 684054973 986411325 598184156 491596082 745181814 981895409 619828906 886085260 320781140 95767437 89327625 542706437 563761768 386051143 586400031 256067079 955742515 189545985 262670848 439268646 453252503 617241664 284407719 708704029 194300131 524679221 875553009 969735888 771023050 99239862 434817451 656282186 950280815 991397954 397453699 997137343 270655822 226290688 187176724 829660808 83059293 698463939 799072480 605348396 911582444 474808573 7995983 40831315 478658493 886249681 640018098 69120208 400818670 693548291 874125892 592464544 914405907 679257604 857693477 838318820 903008030 254053612 89446494 971546348 493086572 257722490 412578016 940347431 769836486 558180887 246638214 50422064 347292757 942700748 941208848 743817423 824093102 37981782 80491303 826465000 434638290 701100563 103870301 946596245 530919717 736451593 997322024 514862092 531239793 445439464 347139568 32021940 78143214 827710982 249534456 969028887 916645691 779388519 34294645 392937193 25720410 126850988 876771711 839457538 185102267 362932264 232929559 560490346 852587823 848593104 119360549 484673865 748990968 153201222 624389756 423343603 786799033 16582097 681915604 660917220 397560191 91046492 857160657 258776510 1095359 367610756 477141242 241678669 471111257 752397444 902563776 135261828 137325966 710277444 102405757 454103679 739263759 50866007 246500210 540253313 240088558 367242479 423590857 230732020 969475754 426099694 633138833 764761709 831923242 515978970 620332487 164819110 275681978 222468068 452836680 101190531 697585932 792611298 972877792 647861262 405831490 303958357 197615169 659618682 95021537 681864545 79073795 307204135 173017809 4330711 586848420 651131539 981300845 844896047 822114451 972894314 597810286 608337800 819089439 11088769 600590588 423002536 310256767 879813330 85209509 453484799 220602070 457778561 95610458 188801444 201285422 568886745 419855996 969876822 148790137 345614412 46442449 45583487 696552077 103380089 373232514 337213738 616911151 505614879 375213352 693796883 856602885 510290986 375989695 824307604 407887777 699908015 343308461 725775542 267685245 738911464 714385085 279300139 926696698 797409850 931132197 302421832 988658018 364482350 275473540 453003533 388853222 263392633 278872030 792573216 833822367 578172917 63631779 256540369 725602191 59816357 294161570 860501014 296886172 631942837 808827167 674869907 559848859 568452984 634781626 585353353 864293187 743811946 959741571 176517611 687667255 331178029 939437039 826154319 569649918 369997967 526228954 440160501 48868874 139893118 276050572 316218819 80101561 692441370 837570480 293499465 654257220 145699236 15712603 787960766 208029915 276379274 457185548 877692163 567880842 84194139 450303143 779422109 133435982 165941462 487193977 517223613 648131848 817619930 749664054 193654840 707073663 782145145 742371073 21939599 954619495 772215007 302541401 660298472 411920214 715292267 80230444 412190228 334334928 670679201 613471187 418546568 1462078 949453353 795268104 977227110 424185585 518932953 733551088 985090677 817510177 506137005 372789789 195634465 221902321 372721604 617893247 693773442 256139878 995740012 499191925 137839963 313542009 632012314 825416131 471544080 713194748 355212903 72810905 458793650 432007861 529790743 667222152 434528247 393596234 863758868 210389139 835307580 11270478 808113522 963498011 884825997 921783354 785178220 29423854 517191063 960781166 337514598 590148931 215998128 594904374 518681068 170433719 546837210 337161664 709123504 553875275 659978939 662301224 633893773 782169712 19922081 77409646 83687303 545282557 212895108 718167930 147337416 970028 652661765 126916129 415808677 221764003 616176488 142581785 713464728 482479216 823080609 372680708 596676165 617201414 685249346 99904362 730807927 348668999 492441228 119060927 949922849 669013875 970651753 503432027 149028446 218072888 703084644 329660030 23493232 393042096 925131958 633573459 703810247 586305108 326953280 184669674 44288498 868867339 129879177 322591551 71039407 395958046 966253245 651489327 195728349 875464009 565077173 153602438 17912203 138263973 554886384 679429108 575518187 202092217 453829273 281357589 825506648 671177840 94452857 225799269 596632150 787104035 401660938 284575827 196914321 465393803 275113582 540423980 7600603 682105550 618494824 967649835 248167214 534016893 680759403 187904625 371315118 423527563 415085450 33100809 969900459 623960403 314064009 771615968 2470288 976865693 816809931 34011603 668732671 150736021 649461600 934276515 612384182 223381970 152051715 501049335 656337060 696066638 92993550 900337250 911899869 552894323 553940621 981331295 904643736 2230793 346089514 66978122 157238333 571259209 253423682 966674288 964921682 576916942 351455696 545854722 3096976 975805089 164363902 587948569 357924814 841609256 510756763 705355447 928923921 238545728 959215899 828905410 279370628 713112098 406934689 820368912 639164282 203420021 598493298 544490326 291340910 65854277 685236351 557860152 563590661 719218695 93122908 350322238 378693382 141436825 975443277 27090651 41395818 132683328 270093622 11251303 447775817 383191466 598866343 635625505 625809126 11709932 159939542 619495989 195527596 229518468 762378919 263942325 767202353 263030612 270533019 426844311 478361903 360959406 669740004 912956094 194841991 365006147 616124251 867566324 387662149 230359858 690547066 158643435 957892767 240528640 327149678 226106680 341691631 946485660 58359302 75787362 664862645 225557593 859138229 159955407 800890272 462540789 615257757 228010191 864905602 518470549 535859333 588117916 646460760 236353990 119221468 598236250 588640578 152673663 688526520 174194705 28586638 992757018 234272476 669012913 523710639 861703007 610343082 4333330 363558973 661881466 951388983 407214585 359134719 604763907 240515639 562533644 400096734 45218547 831624967 584253150 909243376 115913907 972991411 409173226 507116909 441062413 303928806 711565453 793848251 112281910 373264891 968970770 91189090 239448528 947819502 726564269 874133272 537466845 394679915 548943986 450811574 17693896 332063162 798314343 225704515 781019755 699478232 214625394 903441127 523577344 290068580 863926118 532313590 823249711 444937122 852962556 642156525 906435328 265872772 592952278 167608682 945533167 899725728 256261501 498312769 392179157 219094837 16329054 245555805 728183543 259860523 571013592 468444380 155386116 970113553 51617066 936123138 689862930 645199647 449957502 617715514 76226972 649816371 258725092 100574744 663268745 604030676 536877655 533962582 684914980 391246900 531201719 804526809 167686436 922571815 9693387 39792552 224572838 695527725 13863752 636232443 181665073 587585646 329508806 628469034 441952174 726877370 192318407 765174972 13585783 893857670 696119217 461829465 714202183 292685300 757572056 736838356 103646274 565827019 52483446 405539882 52719350 180792439 427504044 36376191 371214938 820969488 833683073 699272731 556123593 38618713 31924712 614642037 193950986 477078452 37768377 395100708 352061768 346131511 511188406 724202479 341845019 168199827 217164939 778740160 579332222 462088489 384590533 522130603 942300632 42150657 827871966 40729833 427519222 433241290 181513016 526528223 670220044 411781085 264342301 90716696 920847544 4200756 156563903 661435976 639003904 510863486 596933938 686067785 950952017 251302660 675883390 979741470 363284863 434428094 231905674 622487283 362227399 815120207 827296292 760818714 425073359 372603130 427195147 235298323 749520294 215751091 301595099 951654011 712804286 964368906 876337953 585154593 190745849 48132164 351043403 134810102 516924310 940536137 137997748 877214742 488249158 997651364 223971740 145626823 313582623 449078927 593247025 28390256 972437404 311165672 755026044 907087270 672820644 992362038 14116479 93493287 692601219 685484458 344247316 638773713 993817838 234362140 369551115 846609075 596395269 376431625 761945358 454558974 585631051 584209047 886900923 751640080 588286635 68244119 823101586 833295211 270738558 946164865 891417596 680022457 368628608 304831604 246170700 251293133 249210070 511002934 980956088 583686565 844438286 662029110 33827941 663049057 570757919 311529359 97165657 738922576 749313376 280723708 937565576 917704675 468884636 230427366 188061897 234939059 556491006 336413276 974021853 931840392 242145052 666422550 618687600 740104266 184440562 662626930 17113104 610220301 975901929 40480375 442268474 873208076 104425161 298346710 680886093 675865004 74016458 760224740 353284752 80716151 282609802 219387301 637479737 810248478 566365709 446124216 187480156 227737216 957789888 421537652 121006847 59787168 507190905 430862540 805292297 427099046 229938292 937233763 880474700 139964393 802844760 464982138 962516353 762245345 967464242 222926599 91897160 955307826 572522615 668218015 949221165 463613097 961955074 251529853 744538271 116120377 293365788 411689615 227166199 56509947 493618801 790526046 896610168 745730610 237912853 651498023 43445323 797904463 930687108 255229893 651704190 525743838 31396774 936729027 660671246 850858911 481694923 231822922 589577436 290599026 305592481 979060280 93173680 206380645 399421771 728271371 686342717 256254635 910412618 887706855 738240536 958428061 641819279 115723165 469198023 707153345 819624301 186748835 273005233 681174207 494454690 259038235 48402983 976778862 375653717 218131659 599237218 412186054 9515024 827936033 40111238 883717613 988763080 707845430 23756954 595269420 92150750 568825032 471995534 657721337 953993238 79260224 775181633 691845610 660175260 415557034 29062508 614974152 321823749 660250563 655745724 472059773 882980945 6699747 79281863 976798488 805630944 317408279 47632383 9572824 938275204 686753291 4245703 244997155 772825712 475420694 363008106 734488447 45814083 169926971 757738011 25496990 243035905 34712348 948976111 810262883 108819481 211487501 526706665 59941322 560275805 235805442 810251505 625340674 769572107 592361116 889259483 105075549 578465227 358298660 29993566 99530326 20071846 114290053 546372126 244491154 322476311 983583064 28314529 387642328 364939255 70894047 272677210 678387235 962832522 719119868 990605474 114920581 635624067 49480259 358140602 956204871 185318384 897027559 628948938 659274194 438568021 496164299 630787046 900525501 581153170 99077493 490029063 568413631 711539960 850593298 202738956 406472381 694895675 929229182 213631679 761928897 965863030 885029173 94419153 721381374 700759346 571791709 216891356 506646994 463342939 327343049 92003427 971114942 475470916 63512812 468700109 610449006 482613933 456018667 268895593 131970742 282187194 849582726 919276404 766531729 225323000 651199538 862835728 280485409 207517276 160751877 364675650 194695344 436415815 514562492 233576702 803690932 988466553 181689792 409418782 339036107 98799906 315756067 576975202 386173873 635736791 747854487 790976883 127125844 824757397 916019324 672441058 461281995 384055998 191186397 320997674 14700364 148263718 788139622 435107242 38344766 536527871 90859118 917894316 598985773 249319141 821734393 40182882 878913478 819966942 874226088 264431078 310345964 851044439 974445007 868969016 327651740 311926310 713546081 902338369 501975302 335266952 329372929 209156306 163759226 114417957 914911221 117722533 566936693 395232517 292746539 20911194 372744601 955536798 2713660 167206015 92857779 531491792 472835175 690557310 564168883 163699425 965434768 541113269 887204793 15995259 745140557 465072484 306963972 117030071 12823503 722021812 367403520 781426444 466110713 626900920 41670210 70521190 549481807 537259367 17596038 625473551 196337923 210218147 54205613 454277564 843578602 811938357 170431938 17125005 169096583 299371215 289240315 417352963 111660540 398782475 406504622 969467662 107429148 565490022 812263268 756564739 781816926 96404302 919322310 405189790 105878753 807494165 746616486 178990086 200912490 79159535 96247811 304886984 111673964 892818176 72818684 675665625 680700156 392413267 204678877 409935767 723940312 649647830 676798747 683708610 330521962 8576358 667813456 68281231 170755008 295433921 487840832 566109583 610574226 982684305 739004375 484885440 356814141 609688167 238704679 428428166 289666506 419247806 731911528 415836081 65699817 505819124 321721348 695849845 215667952 250076503 528090499 932201838 770212319 103869972 261277591 504748706 712463451 809303112 105796892 804777343 800004535 323792369 105657622 164209370 197507558 185459192 950576048 471792366 686985357 532622641 392448318 472478820 480622060 828772178 157694778 78350664 590484984 276006913 518921032 120938510 519583047 533703619 2631730 237785748 867557399 253527307 948663021 875402014 480882511 527070000 984615315 969136476 808606079 531237238 507636841 412026723 399729630 621747206 620756695 240307884 452376396 947775216 564393075 631788323 809208656 817724719 799059959 378313231 655381786 575797667 954036294 697457446 235881601 385825812 204965741 313995656 373572353 380994613 586512798 999628474 904639173 544725151 277771829 451069867 925333402 325506003 832379571 455222186 267439608 832506682 595776967 75667833 112096257 843756583 569920065 724250172 204320376 832389328 683973660 640087171 777278415 604902234 836135807 48099645 368842522 292723916 291991987 622680268 276682524 719214615 531313193 103206903 87935805 199884053 463607169 224392933 53682823 667122567 580086905 123798065 533563575 873743895 554317568 995529684 743425318 387873109 930296617 941325879 961252832 81544379 812654126 174249765 624919700 818580905 853697906 902244051 894351257 688719466 848308608 570936031 778971885 782796079 690940686 971673934 581215031 313152272 554890742 847105423 471885510 940587792 500625464 414169973 208836245 825019673 490714372 955838524 235936575 819777782 419213228 403791246 935891468 572660584 589696169 981374068 646792174 306809102 451034272 773578342 868094587 565603694 892455771 373804094 980203758 537318399 731042510 939968326 823351604 258081043 44058647 868080679 610803931 875546353 715689076 338239991 571885079 709796032 378920020 852722997 109928139 444186513 150166089 201088709 748288381 437659999 70301711 77646068 87635547 63751176 316834185 68875385 297534012 361351771 2776001 15496046 498927522 152545539 68409322 602439260 970696116 768675229 843313761 955356973 334397246 627972520 858148779 656752697 673046458 624890767 17572719 578618170 98634313 34897827 332989312 457442394 954875052 409305370 625613534 219734819 94445144 439228699 423479466 334462344 468246371 713269676 703596846 759265004 67008395 280184511 485295839 612345617 881887031 448653100 720382294 872560419 318715510 173779893 224340569 878111417 244883970 791604228 511963347 334810833 425812537 556374440 972260309 128076494 453883937 817346847 177782682 951124351 203651689 3266757 204052102 537953816 878274667 820038629 732683816 282475321 171822370 955955121 604274222 11924963 123750971 139650115 867712375 429452422 109081344 79357848 883289348 150515190 457289066 365486750 370388737 565820018 689565979 649103398 252043200 478408352 387313751 864841190 92485823 445362827 238903053 941209986 451831198 533754022 424650709 335567234 576278828 53918931 628810479 368754265 413063769 291327829 916063555 741128031 368356672 755713496 133320540 154616275 499384360 521097333 96472182 953883105 268933339 873040037 109804398 349052315 914607049 279169105 986542543 944872950 389891791 14912194 804269250 487115225 646156400 213122482 573967392 410461449 526557882 268814909 785256812 304458552 607716830 458364389 21732555 917228800 904988983 322906009 995165195 101779684 550057032 139599024 600235940 479926858 28202204 80788454 461155767 575154821 246266986 545031776 992812296 885860300 832111176 80926891 345943050 228489285 43844479 520446909 671530961 44143860 86776658 597914610 52791583 141746417 709508413 118526994 747910998 408089514 85968854 948897865 379917709 102154571 870058467 86354219 956793719 38734936 713432909 387057844 980889713 938257767 486228519 880362317 813491335 376730090 146213294 804733120 113637220 861143367 454282052 136003911 354179939 787673543 568686454 510591096 500146305 188487066 355669750 874349150 405026662 834337755 405642656 868026983 677466209 982555529 419020662 485584994 471570024 320323215 924875685 510016914 631441438 807378109 339985789 67217304 724413126 27216589 541942140 428509062 601337171 762403680 821360710 387677902 344818006 476691969 758889381 875088463 425708055 254779421 238534026 205357899 251542902 791148049 677974805 515604594 917187335 671292444 925150085 364399832 705182974 386235243 993824070 440747260 859479357 309682442 90804974 792808900 433191496 438436087 812991030 161948538 871449168 467567889 696958211 595958997 707339311 202715678 223680604 661550577 191634015 21394646 665630074 116942677 281713162 502106830 17937076 911390957 181853697 587880329 333101710 684748559 448465334 984003948 147932852 798852473 536967247 478084303 332155642 975405645 593096076 413816038 567282779 447626012 753306340 599841494 433009145 508431833 453492328 837861540 847986721 521182178 596335579 974831686 726899010 950667004 808478113 620695187 176611068 919554134 830859724 105939019 946341650 863770499 793889043 772122391 772623981 403200384 621703123 298538123 169572384 393268661 617651989 382495519 716334186 877786348 718087560 520638258 418764715 789378653 823680644 472557074 608400237 280169634 184935687 670538477 738183526 163917508 613083833 458138076 680471153 274532654 846077160 502711521 187445136 365557940 97648527 743846631 346533616 279844249 796769864 178211004 212521187 599249018 71885662 496662555 335522018 225613675 166814399 998306983 347291286 217159391 665755906 804698341 833720005 709874353 237913703 552403273 865824356 989585193 737974228 423023405 487948688 641811444 634739674 355686352 419884680 800275750 951669166 454291805 833100988 963404863 372433458 705340901 285742527 130971423 747246827 417705567 44993607 195089688 96162056 26250670 46564669 144575966 376281187 746066335 426327719 479020687 866429560 493848028 361041597 984280237 196217715 186773763 516804825 931220265 464789277 797627285 456156285 227601751 416825329 353856760 217113173 91913714 435075084 183685763 322588981 585099811 706053690 981509737 208582933 422136437 595564261 905618639 5403677 614911964 919234854 278789823 743676308 424332985 952766911 97913127 505105648 450017231 272993811 627959776 142801101 120600908 6551346 925246129 811608554 4561861 724701399 543764540 405775415 360507189 267608669 565338391 225224132 935974916 232897994 766462650 54398927 374217727 534112469 820291718 611617207 672553819 496139212 653821637 779615245 292728245 676810933 808084390 292060543 533200657 16874036 774488133 586366954 95775452 490570394 246152099 592508243 179348720 470758621 69435814 85830370 497096326 362845596 24339490 669356526 543602501 909216287 507466192 585418481 560589881 576180052 829196115 313948812 389539542 945590997 28368433 725304463 382854652 684562399 639531485 335618279 353736433 571434587 238433454 30443698 7795804 868458453 853428458 668528950 999619418 443512967 789621175 483035867 562861671 739358287 297432612 412780596 828129378 868081077 343367727 98977023 342412190 768905448 454226359 523698973 565157073 554095297 764670341 532253594 276121106 96096189 447828554 51438505 13639149 833468674 289893792 908623270 460599884 249128802 765015305 873240594 645851524 161490003 805341933 61390493 820356437 984970997 711157148 9732373 469751265 915199247 943536211 16908406 933889716 509614606 531853872 549486057 893198280 964190222 243399999 340681136 567726712 362538698 161523566 133756486 960239754 129274540 588296089 591838530 828209961 251563969 898216062 573725802 820093932 321576130 760176075 491719337 663099856 165570572 650020108 21788943 993697850 934333611 42729150 125750235 480856568 20599625 207215424 571171180 221365825 75659070 326361054 404417362 950516140 654853004 112349129 826266431 161724228 119014360 540674838 237197835 753925493 61110130 659477450 892157629 278365458 743913555 501520588 689549694 314974301 368153623 65069808 821715108 298865652 250547977 118439406 317392806 23642093 746807571 250901352 271233069 398839990 103398097 48144870 558427391 473566254 681652352 223490008 522266384 919570590 714361607 329451163 793475199 396993454 59755766 497667437 776746890 800232313 772049798 738490486 975616417 629038454 187521428 611568077 331032658 324143502 323064488 597037158 587037791 324369678 133117936 610401710 258809510 666465706 541006149 330113490 533578549 775784577 757410855 924590624 622463548 415876374 944583353 992313508 171406619 840535641 715494607 454691301 251671376 861024668 487192797 774596425 364134796 774874015 188873988 746260512 937458844 376087941 249213962 509141156 707569793 149510111 429971553 727448826 362422106 741428125 625705245 811874342 426288758 65210657 659440895 907094300 35703109 786117933 650016621 590702007 638157410 958279662 311133049 517812148 389494419 351016959 249065686 212958143 430732227 860542293 508096742 986791017 723881475 894664794 708577713 675559722 284754575 187558620 259765474 488820580 56143050 30583054 752046807 692680032 370019648 973562511 606612875 429115218 118113959 285651297 622648740 337003598 119285972 535937780 983396213 730962778 498716625 319059742 539260401 872751197 732388546 948655898 592752570 859228968 529515264 193115279 54747161 656122997 760335620 573834888 435419640 963340519 906850164 993530495 349022963 486700546 316461590 675355978 956664393 493780797 391983330 590542388 237216220 665394925 281674481 193402857 952179010 78873942 288114054 619457404 411714222 352827809 106521359 137489775 89804291 906199263 454262298 631637665 910890434 991976199 770618471 334829924 104655904 274907644 744322008 446323309 572170738 451345034 607610742 500204500 275298233 440652127 506878073 727846438 400752792 609434642 473628985 118037322 989918562 204271145 484556345 617323419 707852175 226561549 686886179 409234129 290133050 784152586 889742287 788407059 692665647 64920927 349637426 293832687 998831066 927760683 848170615 764872536 511182932 654957943 676500963 653923503 441431642 735089204 106487787 644911030 697420374 690911806 391719467 238153628 860840534 464959570 455612004 855658998 186489107 438536733 587739012 868999105 4210407 112714542 320126620 961982051 160372959 761824255 583326186 826813607 736884134 20837616 397221838 476979141 961578137 493744461 128762328 440965718 939578032 990825026 171460023 607847781 174138263 147695088 989866566 823748445 838533277 381660754 489603723 109283601 256604087 26062933 977863342 683445953 677891718 422212807 835536647 193468688 874703185 202292578 757219596 36524046 325453831 969491402 745939042 929144367 252372286 268948103 463554006 94866766 612270392 438756361 275220573 183026099 156689114 184444840 494756877 751248651 558272181 162402473 46424875 712376170 710114815 398372659 411906850 460496975 827009431 811993943 13330825 609258908 189081348 381992463 228770071 179654818 782513017 834328637 184452784 944878870 569406662 605247401 996341859 130573330 153400435 578616323 956047453 974194974 617482912 9429990 805448189 636053286 683449633 282022871 187337927 932980096 935245416 217804087 767953763 47261419 722900122 806685020 761115302 141582985 292337277 313402496 74605710 709268198 156005500 20949700 236960059 982918908 369054130 356658481 577705974 85397798 531029727 797508277 216025144 36017705 238696808 413965100 487696537 803818546 115512413 566368856 197579740 390922710 194933622 7723747 38015980 271609108 589889041 497765723 236307680 703429203 554762293 417849658 214131182 662792537 48951698 177633763 606761085 847987810 216166529 396720542 227795223 800818440 49575166 484983453 300171375 349096787 261519794 1146872 56957023 43947692 132834540 732636339 455464173 940914413 894425509 644732084 244517187 276691279 826524793 37966286 1571507 897045883 148663984 133566136 935043514 965663866 777903420 908016664 349016315 695018437 255907760 512348019 484233280 713317432 715380561 897721405 54686079 273559832 237755905 924072139 550595022 34355989 321369424 291574114 974534262 521621822 709052279 706263853 772516833 265526806 994843221 452340025 683170465 158734976 414623855 941962111 480338031 207410379 647652345 895959525 615713074 161143208 389464005 454338351 126951413 80314851 134983252 415312913 930249192 155751934 361436878 144700453 508388202 290780139 712284676 287894250 201249533 128257873 508924267 633181386 583555146 804509677 504119842 854263321 276145961 470366692 512178161 562604554 998952593 385485513 429371974 518810567 345167268 792032392 909795643 193087825 246809267 675092613 823446154 946673308 475836975 230163587 600364706 764131973 649291696 971482545 981087116 136198598 310991613 940940192 820570627 166865936 950142719 266383698 837242467 373999855 593563339 741281833 646257588 521222878 606103707 173645557 296676007 283810366 789731538 701441257 274194579 976011865 428694781 279385761 192115317 763709534 44658894 376753447 674898423 937682026 730197793 999517413 997448294 437591675 302225143 659144879 389769658 671479165 940740220 598042308 573113748 787778620 720545287 540007370 318965817 204869750 4318480 362396623 182017947 720638925 824470331 128328517 101899853 106918088 951812432 44839948 785536656 80690137 977324617 812881000 81042764 88554582 840987194 87355399 774819603 545359749 484423018 659303676 512408342 582217615 100021063 78052550 366877240 544886912 374914399 967564620 184230402 887306582 421141102 79170521 14360990 625901299 615573340 426903075 506463465 170358045 81237038 458091332 862160734 24366983 996244252 401400006 671220007 400800971 225012094 974866838 707833872 784736614 251652826 387384583 138158228 167765702 516873178 717803991 371222225 384697915 30726992 77648171 698483596 547055612 242215226 840681873 934872376 68379182 207428537 763560445 952660712 662144473 749682712 651319501 908770144 394452460 971817421 920475334 803888130 762745923 254460270 148434967 764167139 805224094 729283013 99511121 752105653 35789732 655292088 50046070 434755546 58252269 437696605 761984489 329026394 241360618 628415982 888821110 172729571 502736387 212123855 556158806 508402891 174539130 109378954 693085474 90404114 526174601 264381140 734427362 336503395 613659459 870011529 948158979 839431942 382492587 739488936 242492507 167778297 838151338 119883873 246501155 13824983 481880594 365675781 988516357 533434347 405719709 888610063 135445004 545237791 113420522 717094689 150754477 593193742 724271236 160499976 68076743 238116088 587349210 911627451 511890847 505778370 322236490 175375180 573515743 532061181 501341456 407907848 874755744 37873887 866779735 959201109 68546142 282287431 248789809 365438919 176392703 24273852 155543446 707810584 879096270 210119278 640045418 713415981 963517061 628944439 231186293 176511251 491602490 926222224 613891685 829846008 825244024 457239462 196300246 308987453 706069547 597617478 44895051 537972320 528356518 409290727 745947435 898550802 505119400 653467816 24932295 91048226 386838616 914201425 966514262 148148365 779032896 505168208 820708864 34463093 34835288 99079361 534727883 893294629 368250365 81006940 223867044 31467794 42611440 759721356 610884714 717974487 751355234 430216033 469623004 716234292 797730026 531217297 750631842 296529690 43089538 108073084 288663121 270631833 456785809 216901417 928042846 778498027 380915424 693627463 306865965 942097524 680713644 528963373 810209030 51099330 115863180 318293720 714491931 676564613 983645319 521846517 595822212 427864731 551078923 690677967 63382596 31373826 342407148 311634014 297833538 605015789 163569769 106015555 447323987 741313960 47262759 542955971 651698476 406089140 820588848 791793101 17155953 298536624 639825405 4162043 638633640 603868010 695610987 290941064 558926151 910453458 174279356 277421152 717679268 619050761 108256416 637322768 691854338 15604301 616470575 127528143 345390985 756857354 514645214 147535740 386755402 126532053 481438875 151553439 254417983 194081897 63221422 593676391 132728650 791562919 822550733 852620715 162645554 444956829 403272726 57426667 236927147 234883197 20142096 653572687 434135372 875413410 516672422 563089314 294580374 853312401 311462445 587794273 863097844 807858928 616795234 682013094 778025657 583531163 140702574 215204671 288024346 653500551 543821787 261499539 900300602 503521495 258846876 151761598 803524131 73841368 231489554 868647553 927811780 436017151 82398978 773777727 407072504 560713445 357293976 926258185 273787010 395653197 654686827 893332629 201391624 529327652 134149494 588635716 16807453 390302843 460599071 653305630 112300090 592990350 325037364 347345106 247542208 19924931 176011241 791489460 700669177 240496288 801751772 27910087 108789269 805876700 742571538 416518064 297145389 317612883 897089787 508287425 29587012 826569991 992822631 13914861 411840579 965706272 823044246 719447511 449653753 981402615 551966766 684289474 315024419 408111875 83234108 233908642 786203996 217483752 418994485 899948301 16405813 155608690 903508725 947090241 65041178 58273428 465441731 508686887 235651944 193669485 455317578 344464715 406041693 347777080 179717027 565914343 817677090 23219558 30462023 694567128 964799179 196238731 23031071 431118249 662930767 33223264 980984437 518899078 107816593 692398537 687831806 507624776 206763353 642664655 429168349 294059372 284084312 903078568 195398288 424950044 801098025 400680366 564066825 732000039 630403402 686885991 430245789 207317763 953457960 109735032 723041028 218051534 46366483 685791163 630666858 443308882 833280580 149434153 954758490 93040381 926634971 929216995 604242889 193025255 853837283 917008951 302184210 452884685 810969677 480674453 519924989 930381590 69839345 879980701 902505143 19085271 328023953 719123470 899139029 827879361 312454358 752648148 827621203 465174838 187424083 679419655 874421399 881196349 906553727 835763674 729891951 365691012 115903420 366375096 122907151 946849383 769636690 400168743 381928983 650166751 72911735 966350045 976456072 619643029 22912575 912931508 367930067 814831577 260639661 927255984 932856522 254781858 372790443 98037756 777885612 653476241 402459657 711269866 166296096 178664938 933216128 530060537 883218995 32196257 889076402 738898118 507685460 316336201 147246122 109936162 191711336 482404640 288714326 384691711 622917296 429352467 225775762 356606071 519496925 928072109 620565023 584003532 319688446 660936486 368934180 840087916 935359638 962733919 320750516 828160235 625726857 468770780 831337670 36886784 63248162 319708623 787881792 141816465 842311449 430880525 653509862 281885097 503074955 145112856 829107567 414048892 766697209 388800533 496349039 251265124 11134292 596613077 361037670 779923173 32149235 139863756 90652357 827809960 816365201 186466078 829617366 45740677 918866257 774030222 751515095 860226675 770146755 245945999 552892388 502759574 575459549 497430324 763075595 919121979 785417465 290686016 195907389 162648274 855762655 400792344 774900046 478159099 825276605 825825998 349706758 908321655 106176804 527071509 854571532 296963118 883921431 922152273 677276142 517215544 751952374 222934404 323065131 941123022 134837904 92195681 671397663 796002132 342085661 652259134 907430934 826880598 68687415 425334557 656850497 458440069 416738020 212283809 131622071 79567549 721729939 288286488 88842364 810630659 182568981 132829312 470951800 797351038 983806892 380628085 846731646 466732424 294500347 192035901 790876487 970185110 121100815 734375110 849073009 734978383 940536157 940506026 881249670 380418685 874483909 897729578 350396155 480606993 745950600 727031337 845627431 931664427 635323478 853398841 368380232 222155528 988167748 63990158 158895500 131281434 475997646 137002251 975747588 650678768 959219677 869263927 60645542 735360585 984980667 975330623 794960214 936352002 90623770 85720315 490984671 949477164 537907998 797269483 541509101 816201720 526935370 664691508 82913307 376094145 965994376 125171112 366070509 389893387 497356339 405994174 919286472 292025728 340229891 532111253 895546369 191654644 215957534 238117362 96937937 113868900 985483028 614688585 166466903 762273521 832852440 379023277 641526941 96443110 228153288 510683869 668334485 121781945 243082411 922559810 817461526 655728131 641689003 163759340 852180452 114241671 349978719 266292369 821787560 65403185 190833602 300806800 577448948 876737811 612975420 951629298 536383294 220790378 53091741 84540260 613781994 64108955 136750098 51525185 133654337 561504813 221268289 341902211 125537907 72481237 603222057 117178578 676135833 663732590 351208251 181136259 857602228 508408829 57138505 755392902 699241649 955302826 168049299 54750848 61439068 813712588 398972860 254182581 227329396 651396828 453148883 686224405 492553620 865028990 57846860 989643063 532544842 669922685 509443590 637504091 553227014 310192586 26574918 215435878 342149665 878881412 808066232 984237546 738737626 341734382 956600688 949831711 761619550 174244721 765192688 410259424 404928445 998695073 856787993 756945592 342593262 607765048 912639801 145558999 320495319 405349149 588254469 169895183 423492413 236731223 485964957 616583141 87596499 935259420 756800387 13795965 208043824 964880838 731163813 480485542 318048729 77497560 631372793 534568665 142452533 701456640 640405596 201737524 899644053 182357262 452091090 310598784 649755187 652363518 13325645 981291306 299031598 302349045 612687036 174148682 70424981 575107644 763608446 918313121 472993106 802347078 26372188 361458069 570046276 188050353 309604736 730183730 715733803 126746431 733494142 104608309 653485486 943823067 260938838 878883067 40594273 688836759 109845613 138383497 911345594 546342830 750569358 422193296 201057821 77093257 679474672 722942824 923792083 81386666 28299568 188677904 250183181 935931340 841901908 550095918 412717280 953382598 444578760 11848979 211880020 975597470 963779170 297914548 797527120 140762495 828494944 400434611 764044453 109004216 742941029 10440021 678796299 109801674 503465089 911079051 511759138 754442069 916533029 202787048 856079737 282593060 527896114 290274738 179067002 611924013 407949549 816301772 770240645 294526856 661632512 896581573 918471125 418863739 594050182 896961239 226629529 567796590 211834105 830558175 704806110 761759991 296332349 996917091 211146654 851856593 965452959 793829271 14758847 78335709 80774871 477882189 442514434 210573865 637524225 38787334 858099999 254642150 62977443 229994987 542082220 798826099 734266537 61225675 169984557 638265423 734371433 802865947 324672007 30918439 2009759 443477498 795188878 67614414 918059888 621221685 966495996 791744065 845088364 356103733 686790769 175069857 906120584 258637586 544265973 651375672 37711902 160617357 34302587 51128701 972520951 739486220 635248092 896343049 496790076 982800034 958290395 886174622 637602440 364124160 523948061 459138861 964381139 280696971 313181748 298307520 111842693 215113543 385142431 246783898 834933353 826915045 341087160 184670493 394269110 961594042 190249164 908354003 867534346 332743623 266095885 103306093 495408746 167452595 970975378 28031176 464905537 694418893 269021533 243251432 383664999 3942410 217361496 651026427 414423318 584356878 598896722 260151374 818607350 880035357 977882376 85522272 334301460 50464808 90897432 995584725 187696612 919160004 960256524 311872884 104352118 768564787 990039 976019510 524994938 747407705 753519951 940785970 182145587 845486281 630064440 451044526 927448451 357052854 847829819 563867666 81930472 642779394 625519975 356073718 571206727 991950391 249854647 204158480 45473006 367087740 97430029 648872007 614280849 610436016 597399857 772418981 502115407 876931921 208293845 67336283 719812011 909681538 788383890 429600200 929061269 280760343 607597545 751854958 282633055 875958149 88953154 543462390 73747913 507359723 414143984 837806648 112543734 414844433 440264751 970720298 308350070 945550436 518751769 788471794 150678076 89984000 659715773 680165596 139814823 229705121 988610826 947481179 491089785 686223023 163293914 349079305 869588963 10169400 282279408 980771751 310160249 141590004 771386098 163167268 17260599 877275972 464013426 256020117 869977221 983587887 393776618 980775982 897629229 114112097 739210428 786996827 804710244 77946418 873172273 898278304 595411916 419968932 555124087 819514036 863394150 89527134 573341355 136563571 509841312 366647725 277094862 624568796 710136400 945896840 669742278 519968543 247296181 404189584 49865578 444925067 457728624 337498382 662100590 931875998 685294224 432500972 160440436 258378237 949643405 178820295 385259272 520886382 251448128 658687451 402900890 365971945 155747313 334555663 543693443 416590727 573339468 286600946 583005699 293679754 572307048 784496830 914346819 546855776 526610369 48510801 60116313 342421149 138350139 116654385 174427704 350026233 597456932 803942029 606754757 600636761 806878259 213823038 404543688 59195335 98080386 654895299 10892274 512932983 737712539 289966914 364868830 590295493 873769318 737989261 357838605 392117812 597806140 867850263 347874535 730123118 263803354 654346498 665102013 483294025 14482020 569512213 959078345 862144700 399479654 235596735 999546154 8084206 179925208 96765720 115609839 578510377 353531413 112049374 392064258 323972832 492368612 798565241 552557634 460073135 486687345 140610806 799250287 329128281 258878545 45066257 630703662 728141767 631820163 745957158 545130007 458386702 381866859 43567933 56183199 394977642 281914582 852061957 562608934 127686464 916893946 99254228 281225210 172672023 847431285 845328555 544112969 734989733 993623114 816994097 717506860 121477826 702729960 13217973 196674471 389178486 931138341 195014446 654793631 759048936 318562106 739953724 356875752 272229488 480915409 161820711 305609277 206196869 923136758 284908251 193154107 768766154 596266780 543680754 443829356 462943247 748834340 931184811 37872454 49258819 779041873 721122541 242598940 166657664 221294927 106364999 123974197 392839694 452193589 788268014 499295669 33625943 324812673 36102854 84950192 107722730 189258262 43187282 220476961 702489225 318417474 296314308 260965604 9482256 875796412 339559666 317704390 751870609 483143073 495030621 222770552 549627451 974616949 871754026 611891604 245753451 670822435 37473833 308507033 657155234 605843204 921489617 344874226 978181007 352985301 27679040 736367855 114920449 972494521 99913280 8294858 943096823 651524926 189693505 657953700 755902355 471740251 848588375 3401607 861708830 867177837 917142338 471448674 937217295 828805686 59830891 320905233 300459774 175152614 292014303 15696981 18386096 259473170 337641557 39453140 629150736 87417270 719826991 71166244 888277299 828915258 236012146 741837754 635650384 733045865 370950865 245372666 800280525 546034808 487260573 468515628 118688564 917646854 803229401 704904835 930681917 59788055 84193581 612715541 54895805 562269977 253572326 459832550 379301049 596968927 439283452 42663135 807781212 962169512 692599312 959111119 270495229 578902298 836596071 58819698 69975826 492934210 411421680 767806825 129732418 725581204 594939717 410172475 111875158 385118190 340968099 631088217 975156292 136446615 706266610 598236192 592067109 601048632 160728257 715308495 42571579 309451243 279543623 321200270 32361460 20091945 670229859 518255984 704128227 359535065 894899612 165840496 195268033 98258251 108684836 356740458 133368947 910648111 845439953 147994412 417114116 412746663 17511710 815674983 24396199 835619125 26860345 284885168 11667894 299487687 857839852 849913229 750355129 106586547 167476658 621998436 312965206 573056695 781532329 542175370 825433698 534050038 63988118 388315700 703640537 296006144 308142058 364978052 710901213 941331398 554403774 516714118 795194042 842174890 809092814 692591914 545314021 356147057 351366019 874611272 945939956 513245253 4092397 745692323 355452849 374627770 75125440 81039331 614455042 218917075 29757537 10313113 591806204 286750963 190834128 760457791 726472669 620324068 504676802 171825719 781385730 109483486 710943631 577145030 706684157 998789758 776791086 775497508 3644540 522415050 406889297 923340647 90945372 821758000 281661502 579036558 342373538 861568643 416722675 723708551 142630008 702698239 744911627 452838174 279669042 192043597 158917838 887630097 726926920 107110518 164677167 295909372 371628386 333767156 776425409 91817582 770419528 170580130 95580099 476386004 627121390 550711492 17300254 727564674 759814767 917742091 96169059 746986705 667197457 314096263 503954630 573161937 734927163 74261433 401301289 241959835 189792129 250424708 964036368 8770857 318925729 899269432 878465453 880669019 182169213 10235017 445862613 523385341 805895710 732043411 953481224 348081852 560643259 462763228 169736561 70754871 984640940 283242579 354579675 634757354 837561462 72367179 253747388 342601281 877209029 16799616 901145913 636209037 366785642 496680733 24209171 335089926 28001379 280991656 679308476 228405454 719100881 208471578 255667532 370443247 805486078 592917203 245860227 914006874 120856163 840045714 940937925 347452647 679862677 608373131 355801634 949094489 806749785 986245197 97010517 864215129 834142876 647775961 842239419 383290229 103460462 175694736 727930201 663263530 190725904 894918214 618850271 385190616 729273312 833709357 734022566 177096906 684262762 523043296 107930286 538885935 700035172 359947369 22903706 436260127 303966887 189854767 377551039 410484127 339508 380978957 873205009 487993495 327338044 886583357 130287406 163264980 349672463 989668708 902854241 384518679 856266278 985529748 234090900 953312250 620435241 690416188 191513186 958271754 171760864 990076477 588847626 649265848 280988993 958019803 147896436 641094494 523316067 516687042 229189935 784898363 829464717 344341260 59661422 43363707 285785895 893619249 747012629 340259626 288098248 267018009 652372138 888719945 393240617 406314511 615112285 627982515 197163052 324724171 30280194 719651122 964952289 744670825 711771677 983273083 481646966 545249389 687289297 541802019 22706250 279709639 636745710 665494958 950670812 399732936 429039086 378710404 991302109 568725299 14804206 699109879 71804445 197543208 98795190 432748608 453650836 432891449 449941175 48946560 272921965 219684439 384022277 252999616 447053293 859145955 970216799 532734707 279071625 30489501 584276527 103277551 900721626 208558007 15669635 303405943 477567145 504999108 95762449 490830132 421026525 772116420 960782906 793028283 311419786 929909273 806852359 283379838 120584428 140192401 292345123 477896421 293290341 137252450 287330278 524433716 391268992 940884522 828303956 950320178 623779315 496886508 821940751 982528833 90428055 419875094 696188008 60712215 48761713 986742657 342186326 684512012 183757480 751405154 404593784 171654645 731363986 800792166 464497177 718216581 769367725 665701785 328297506 380719455 19436184 892314221 944788271 910823951 948961056 22142657 676266876 374778885 585868602 584401112 879620594 648959129 161780479 763748452 486952736 82451212 862657201 107099512 239016511 174435211 500587965 631890832 601756715 261418533 557603767 558000276 401921132 276133329 866692441 497147855 512106037 32609648 461990791 825451765 524619094 590190801 365442634 203713828 180073302 779784608 656916954 458013669 667395673 542575737 755254159 643477538 110387755 497419739 775511789 747654961 348845384 122119985 562468508 34616269 9997263 769558987 213932916 122316063 559796354 539176931 271960430 515822002 4152792 600759704 331316399 496516219 932128994 894711289 246544001 763772377 267057250 167670259 337187926 306849937 202374592 353053534 164331722 222192844 274046473 991652862 522129570 218465575 77212404 618651770 909745606 425951641 705413605 176397159 370190925 439715977 705790172 644219963 776087921 982658500 856906127 581653593 265728147 58864512 956179025 13538823 124664384 532177242 487590690 893892474 706887979 435016025 646846634 216220106 237326641 650563303 537999160 887484406 387905618 731092955 876583365 313692141 989794746 476216176 394953964 159556987 816286912 563786577 806847993 292045147 552593370 192576645 261628376 512857132 489982385 691722885 422568993 33385853 755463691 908937258 988665365 898872504 324023005 680271041 870977943 466449469 31285569 224326383 526895675 138254409 298736252 386256844 216584247 473518084 198796026 249593817 936250217 125401732 563757902 467893238 944096343 82142145 307424560 121910389 204261683 678783385 160990345 253708806 969607380 414160086 543209054 790172875 725821368 691406382 946285542 174362439 761210630 102507317 812340604 453214565 555106193 307953519 891079074 588742014 997088459 774839106 26289156 721535822 638418388 764922117 937938551 946489084 723402361 579031533 648706033 771213842 904055330 973113626 781047194 726357638 503994089 658645656 379199421 463064504 937172623 266685017 297243850 852964202 416308089 777053492 551717984 387191499 960526265 85337069 245137474 493318510 591640577 340860969 338308441 50016853 632149172 752991612 19056824 558063840 534064858 359625823 446561437 741275614 687597346 907061554 9963368 317761159 622677216 245519169 575706279 304630645 264957208 18289085 739140107 793009068 61639022 485770938 203601008 175896990 838171441 942107712 832291037 911054365 717923418 764060980 912689526 541279591 199747208 564576872 385828500 376709666 915959297 7250840 675303857 689516122 38464692 877959778 407905903 746425989 850590012 123061584 94262683 587185279 660716500 197941973 890223653 606022286 786955621 85312583 973955116 664243296 155836543 309266667 278406129 946268170 861121110 33797862 281125601 182300425 226561997 125791309 955455117 615382850 769139817 839319577 70619057 243764738 330549594 498985769 942018353 521768705 732895353 159806279 689599256 224430425 25364802 788340772 645237146 934234767 301896671 592565851 356144144 92565393 337059869 675487851 922289153 268605366 626754164 468708799 524796436 148266939 971218692 909390761 47792927 235877056 152137877 783861855 171825947 857559386 428480403 49742853 95025710 342453370 213427992 189021602 190385571 68319359 314438626 98476584 162764008 532380205 961201499 594145653 839946912 72156593 604853391 340465987 770029451 154031008 520768308 393922110 686158227 280816633 813522607 504486648 903889099 303612190 779887363 925203691 289709169 487702241 980756447 913552758 170896868 64462708 484692378 378905828 419882421 496368244 908806198 81794916 249352851 536624616 812786777 971674645 719102555 564704062 448062547 5583857 110692110 726779977 124625689 264486629 345539546 257751622 539309386 82943169 942957586 446977243 473447987 769474110 110362670 146173207 948753595 358536191 208517334 549552236 566375038 67074444 257650130 986917306 151070397 39082584 813282582 994705476 750377307 5764794 87762879 579426491 12410856 658040564 422459149 587271727 564744350 851178545 541525358 663337248 477326682 298702719 379444082 592945783 287916196 930989785 691373785 87167099 851657387 815237150 353629058 363074019 168280135 41264157 521036923 505485005 773517812 404820353 628626167 713632703 674287327 149499366 729378127 300478116 427041747 619785934 87738374 126363092 888546887 924626595 728379594 753976588 81445213 596289458 628857711 824433774 880808152 520391481 764055277 242402701 315669549 217512021 802629225 763136086 136287087 463311123 135341103 314125358 616516191 323540320 151766703 732588246 811870052 451214363 373471625 645155710 718333069 470812672 89309307 463912377 991279760 420030653 956751476 11764356 959086544 447010269 135718534 178292551 950619985 417950686 912511213 626305741 146871746 420859171 536373771 129953355 575608442 949784814 298835309 732583519 856393340 124641911 273410755 89286670 548686700 769946580 674016493 241559495 143351451 211682568 386781929 700654683 294560766 524439802 399944423 699278860 995167030 508602495 790552374 321559420 55327371 281766732 254921046 580285626 891595240 122079493 961477350 960144956 378087915 686998577 668879027 101646812 711784140 48492357 584333744 511907811 411193208 296743828 496336378 75403772 663475323 64189030 840813522 389461053 473128207 498570209 666289827 930767907 498017294 933737494 146815490 557671313 200688902 242301952 662656680 60426712 971662114 648507519 15905660 691087533 393659962 140741979 17461382 722044202 195166671 701041734 419966970 557246166 715027463 942182364 695412018 591194784 331188910 322346650 559441332 194266588 991795777 83770351 13879338 590579014 334489306 645385508 297043817 367148036 541253956 531526778 1375081 409322148 439687151 128069134 771111501 443928091 268297198 620520682 479691106 908175557 935813637 970955777 64652828 562078568 868270487 644318507 551637783 234487348 814005 617346087 534863635 203435962 802962964 566085537 863896060 323004920 585357337 598004779 921071593 679802710 393794502 874956091 559243280 203573662 417705164 276387381 354745304 145298185 645596037 111031136 18307019 509145903 773434859 112442097 235536027 530029082 920317609 518210047 971244069 624478004 505308685 405792648 927394923 9920087 733826828 701742458 404323995 9635002 300485706 73994663 782241285 776401415 541185291 301901506 719184676 788516681 734093887 519525747 44197021 373993460 325298557 945741631 71070268 98949352 269592068 154676120 887916530 224529257 476162492 585983704 261591260 628956708 798152759 633563456 72261183 629619248 144728487 622432762 833919105 970083338 985523692 402264599 704206904 802232981 777643409 808642448 7164705 524622367 216358082 109818948 841618717 470637407 24686680 77671169 495868216 200142447 542700753 543548532 209509543 725183447 234105173 232755257 420195776 723681668 921038515 927572432 195596043 207625675 304314466 107598243 987007027 699662440 226293122 405317633 958690057 556951427 697989082 276245028 324245643 839854757 14390488 987406641 343295448 424412103 396398740 953040682 598933311 632809029 188272336 880703496 114261810 380911077 988639726 427215520 230598478 718755793 433191939 186437556 658344787 62228898 368457664 543941358 95086126 969807957 573498250 488720863 571895538 19308877 297112165 845410047 734549980 368506200 990010112 208488113 966979917 873380782 649118388 103513660 888914641 119060200 535144576 645739219 417718811 165354510 420334093 248965775 333244934 208379788 30488228 923763568 544843670 342956601 66955330 15715938 4572405 214701136 759173253 578707509 751431288 857712759 917126578 625183904 307450779 913176253 509302716 76216134 22220796 801073557 397572408 49086131 936390764 600985818 65280100 504979795 491396572 291371225 649488426 429678211 428920424 105308983 254945560 759393155 195934291 575023630 592071782 523672700 705193734 283118299 82723058 439718272 914326040 82375552 587401794 705942921 4951107 982509391 175947146 77545844 815067751 676627960 372710557 288342289 826329747 995784860 728123643 943297547 185977082 375409344 502357708 878306047 499373300 462395217 902958048 749751917 996725771 364687264 231896748 686372797 148832482 905506418 614433105 342643267 280880722 797231334 351656599 59136566 945990229 4458382 29721323 924637624 20011274 70921563 158998884 684599765 167345093 64487596 524319428 414103928 427553264 21873735 237766769 583220352 663062061 267365974 576895864 722093227 410152765 648109939 354404244 878680229 910474504 844734872 12663842 633647869 256399271 753556781 106659629 368277290 931072081 243961341 781159517 92803731 866028139 937417788 658453006 954834303 307047039 205362570 826093630 881680924 661118275 49879019 723841942 227798409 85129358 712708300 380773989 675371200 624919657 863132165 636770721 663715251 464431608 641568975 698121705 30625835 834007701 490864849 832568963 101640423 857201848 764920600 440324706 21579396 385891589 838434076 225946394 514092175 928220485 592886199 203218413 617458807 355544942 503631407 401734848 311593622 161874074 381199664 21735717 893740 839455759 458457555 539952463 798792038 363809845 718107282 939526430 803935313 724213151 409045075 119208734 723193320 936115723 69481829 522227066 341132813 701632857 685142138 513182987 856848262 465133719 503844785 603576396 976443656 126500597 642072976 763965548 238366762 460851410 816516099 869359668 195619440 359088816 377849696 149913886 81337409 749940795 543596388 879026249 401576942 880352578 870093365 485899642 21366961 133318342 99176798 4321317 904630187 538424294 564933847 934505051 611413733 540935408 982973947 37532129 231771728 604177495 799520400 48786203 263411911 507329973 988048325 873374233 254880011 140322508 786575661 810098577 752843459 792172171 266312645 398832101 548589441 966801920 512498933 758879770 824679359 219381101 133637510 562051297 455724511 586243377 520585395 950169998 969495849 132678870 609252114 669005606 151066831 493830163 193314734 638071115 543311081 532472257 251374325 73081166 189506936 398378723 936429494 674334502 323698025 434407844 448223285 314451570 175613834 914550875 590082834 992232828 797812116 570843262 182490719 736342576 119187754 703106482 347497100 382415142 750881493 918340807 754487161 691763357 561634563 463706793 334343533 131619711 385758992 179338614 122837522 568409686 384527936 179826547 563450752 227487839 518870198 325416970 288928050 271449205 266117258 658772174 417165071 612100129 237686961 748180090 604786786 239675025 97638410 669960691 223114468 190140318 154458724 462933825 697297838 988451017 494778734 166422681 377310793 493762098 226127809 543641433 980584351 486719921 754429916 742940927 431486214 250558904 612222252 987489848 750184767 420161129 824121088 646194652 447968107 400873606 490490258 727857632 31305460 164513926 934990082 512296554 594546234 3118459 742447196 14754500 201387571 585655844 865474704 56363620 980488387 369908716 747399030 527810530 40099866 353646558 680626896 538271748 631379661 269033397 461686086 384883380 159790296 283216590 433988973 653125637 41471140 610394417 16222394 750548273 905025529 686510221 81511570 173699484 238251793 576991033 289948474 482387924 120931717 656727348 581421800 62484106 353487196 571805991 978470579 431630745 204101125 19851103 278540187 249465093 721380691 129001172 103897481 643247608 24569475 366987815 916618321 78578118 750808893 54599837 946427563 213648108 391563402 984608548 366383414 318943242 546561507 269351769 241619328 850129134 888473124 213948534 795813623 402698123 768433299 774025314 853392885 566629626 496339932 453981360 282613947 113369729 659683604 57417623 760133745 168841862 236241083 271358193 509289003 926212005 767551411 184445258 640148961 688198547 318264395 206344401 344612211 29516850 437621047 391075421 379227565 944992402 528249492 832071274 826245437 988204516 109957352 960054819 778755517 877728389 684312611 838129750 25959600 561956085 334700695 165032570 699420801 5210336 693374464 691036590 620383610 126700061 282518151 260116924 819542749 463715746 806849974 563921422 398685636 201790613 542495623 865283264 428068413 353463618 727998289 131379600 206527033 300255258 493050076 398073573 844348044 765850298 272871256 149910221 64161790 982614245 314719318 587104768 505680436 555270532 476242132 144498910 302697155 568758190 679660603 286135918 685641759 202361244 118063445 550793057 114725548 536004018 975296342 538620681 436197303 696216442 420243165 729295979 805660266 731216042 344859377 646851882 189589219 911416347 635527677 638743190 945814818 237443279 150991572 599128235 791094289 147096821 532041145 817408770 765910655 313057500 345218381 913323493 116346920 523822595 55965598 331200835 695679661 495127563 669140258 169834932 891214996 396008895 791721400 365831543 149899347 842161172 362970531 422184305 664304446 15613221 328639118 617927733 704661148 546178868 166555282 435197687 791976083 904864685 86854442 218369174 930353971 261390883 933017150 533573277 181093240 772188498 294439193 442136632 68114498 921174557 56785776 20337985 787076442 263048847 628448865 562618676 313657459 793425112 994330992 763345467 976121891 713379931 671941518 781258274 291477741 505926290 138375693 683020132 762448443 286282801 51586986 104570911 388708703 40972804 504124301 971821337 967052431 349544973 921302592 614034624 481301486 435141737 837746362 401705520 471515783 652755046 714124633 533028 837526857 134892408 207636192 536772103 150292492 198071352 484851071 744699620 745640084 961150316 407628231 404779124 121085835 443168510 713212346 47165977 109514110 454572803 821385658 891467734 636419051 582266545 964884375 184410460 137667121 553764720 177445253 919439106 144896152 850165194 854621470 848226505 861432149 653527155 799297645 996633941 195605372 500208450 945395419 862559993 966545939 335832128 360882753 690927272 233568513 328613527 962964951 856472325 273227798 224997272 767479110 697229141 871786511 194430400 406329242 138473609 43163530 570052018 614147147 359115318 915855376 667888441 255302195 238278046 4373783 55209031 766926488 655166631 267734259 303174136 595875367 899946206 707435494 823146385 860960759 229392510 751245084 976219003 284947586 118108516 829001124 124648522 223360689 47239705 381775224 333775802 998746319 390211785 12520057 428681135 979714960 18751566 450786161 31470896 97168151 267888934 904634129 851426676 244400098 504592506 913037039 823948503 213846498 248726294 864447121 756782042 227676012 742766199 141614687 619311657 406439484 246409653 34266280 758283158 834006138 999037597 488888488 927626526 480472496 74287770 563915647 576406501 184799190 745585607 188262710 426717746 285077065 333440993 930814910 421053054 366751434 387009873 81271794 138286176 985599627 509606435 91385490 301063069 818434848 915122449 477006153 470622497 315742599 743051386 73889189 235191292 224619811 961857381 143734814 516930668 929928384 489361023 613581084 208357077 311664025 640230178 110263266 534147776 481271368 271897167 762094502 669855203 405305809 596253096 460661885 979223829 628426914 428808321 537119338 782218077 979738002 318837454 437503064 598368995 730495196 868751921 854940949 331894268 940220200 428651246 813608029 951720487 111436417 87485687 408747983 439018753 817241946 592121570 125302775 498571608 774030231 365747439 249008450 517398049 30585206 210392580 100747535 333392243 405321384 819683504 643231384 529131413 647981890 703272494 387058703 478750193 339689154 462591832 997639548 631628825 581395725 333308858 315602400 945866954 310670191 806409344 63470105 117378278 585908635 801679747 90939887 971486331 413836978 823059520 133524757 499314617 118720059 988293857 596820517 822545917 193903390 708498740 150776222 12693192 340124339 330420656 295967978 431837385 329223095 593515124 921807706 219739855 791204688 249983561 726281002 32861912 139627016 942366621 531623544 566752008 24970971 780049287 696465999 230910632 469980703 633568965 180071838 224971052 864610460 526148288 481341507 775330606 264011392 27979402 304983032 689562999 733397601 274752980 929686892 871570411 833027643 869280259 886903600 32272542 882336881 471026971 773712059 510437073 521820372 60262091 623321454 163708387 935447447 517546348 243165588 4746334 265112153 588688125 146898270 8975611 728155932 834344996 571406311 589499276 334578003 572062513 326305834 378628639 9687245 396114205 590197271 625043927 830407370 698984067 536745852 181350923 305494257 245479087 298795282 835650357 628032588 426272396 496433533 544314360 378597970 744609204 410400835 210674208 726333920 426806631 24667351 717820835 997533244 10746248 749140368 966711191 193327123 618024876 911599795 866773824 671466616 481675270 624513382 931219214 857488363 480270454 301407934 734036368 454296401 237829509 856406192 10583682 730727156 49696609 943248161 683501512 485214093 632052961 895166678 938296429 935473465 634267266 738456706 141957540 714337915 60693360 657740227 903846344 603019585 805033592 956455954 214808927 257077218 810888979 614388702 627655695 883471896 744362588 22396278 435721137 845338124 376643102 215886356 725257530 510702922 642228167 653033691 984708050 693050310 178549612 635555281 679550916 921252062 149587667 988337895 683656067 727380566 19511387 562321144 524651686 329090398 242542104 487531206 761253623 178638730 843075265 598274042 853636444 812086743 40772788 292167204 432634602 902006697 523316473 692827582 446855132 840091086 424471103 248303402 954317465 516950396 443577820 352669616 281615014 691925842 255701715 819708545 757431737 330392658 649885384 347570103 773694638 279103211 939611403 603916114 301738120 885671409 443726739 608712255 54017907 328604064 573740543 971738442 102803390 584656034 939877014 439566897 970577131 749472001 721573707 645905555 714303640 704938290 564001456 605381879 865783187 834647829 834064647 382531539 638461645 151903979 548414775 137234045 319424609 697319012 445113806 198582324 450398868 612627860 284658182 273348392 643191506 329874427 816694972 448865639 108169902 424821115 527473015 558824937 187404003 813744482 560636777 975796622 236478035 399096167 187089509 698010660 142234377 288673958 895030765 864418136 763594040 573915299 840864297 141142471 623815231 566247501 916077798 53743 419490204 873015033 887430301 757251896 869115391 763542882 898295659 775714553 877864505 65901234 886232602 391188326 827757637 23726450 877370136 871603362 294438983 661669531 636837757 917961144 487690632 426205828 853046791 629806486 318555520 274087928 498713629 996297752 128961734 641547557 976037582 245652222 992690207 57182875 404325845 807130865 35309940 176464987 698375821 178322051 357825244 755641545 122600191 418752811 497736592 377232305 622095066 76972111 907814133 845053259 736853110 625396786 290310549 514060083 529472465 739966730 560935968 61394287 395384723 183631345 526793337 191341419 316072971 461959138 301699739 766778107 32674865 438469838 908396982 532833633 641035938 71638656 874896668 369184317 548219047 915356598 923221320 817838238 577423665 628564238 85101791 278452218 508483026 395363346 356960170 654693169 554303438 874033719 44644764 411394947 800535309 817436111 123414485 933473695 2388249 66645793 981542802 332079771 894359599 148450131 988297025 156710130 563403305 281553782 77481847 649378703 608122771 649266057 135852522 35067579 614004374 82466150 16628866 109422888 650799122 101435354 568755787 669099259 868548222 731520407 425263732 308801715 379046665 544490549 189270362 932719169 125553786 861499186 157160834 545355257 301283918 341878013 114951318 515774358 247516066 209681381 548356712 140341057 140313663 581610785 866879478 327840899 657944467 104237525 417602659 158352727 950403506 848732168 130441205 565392148 50635874 558348207 943938340 264235396 723593735 72281502 745603981 499765203 152386734 322715805 107307246 360190356 184761617 786351695 418831927 815280583 619582350 214166087 655831160 969497550 412408111 290671359 514105325 549266557 856177311 389809881 623427322 389100288 841865526 823468317 410937642 774529020 484930038 82942716 461688881 998007922 854963847 536320656 833281257 597013715 949994036 13474269 563565652 74074607 169953526 916447174 478434464 212961287 610589292 974539040 357595681 359028671 272761057 160832933 455282254 331954466 95542847 662587637 588967630 117187755 986234142 228982169 785668202 7869491 887319487 592147457 314203158 693988865 23099659 901837706 297122799 919558080 559768972 775700338 881951286 527287686 616278654 18637797 942063190 162585812 828005054 962902257 109122020 198803851 576088532 274177936 763772314 95184120 976235247 693762726 745869405 868530898 432572391 395608568 558448181 850512440 57641531 284297532 6610265 155830444 647609358 140064520 99030817 248532764 813494070 862467039 961989905 384900831 412566056 187792169 852255190 667140784 4197122 949489718 269494850 587064756 245101194 662704451 63675472 867065468 111850291 172886127 683023396 225767930 116016659 484385984 141572363 123549323 2119654 159238958 67035251 570315510 790084631 138522511 689242877 363384168 54885300 598839203 329715559 117517429 254574708 519893525 178074529 574187035 937494456 33660277 200844731 74634943 435804548 469279034 855625971 3383854 262501258 93946060 401013417 699927198 818353697 778036337 818924393 654257580 705987911 709165142 291256297 282755935 644494243 196993946 709323266 526887712 236288389 723381565 6773177 362840264 922513380 497916708 82296885 39035284 343758689 367604518 141484751 234841894 748875584 486403578 831074812 878093455 475198066 48055360 115209831 964845890 687168144 687170949 564200402 276490270 669006550 148173621 539019832 60784231 768142638 609971629 886186674 952089288 449190694 452156204 112822915 14866012 560685814 408718557 911970837 328697244 855573115 370219473 497263098 288553327 466378302 312030208 936876530 324651550 307341423 860814157 678923743 459477605 568208356 536576128 995937993 286320221 462953244 233882698 875031013 609429645 11367742 532644422 742002061 193931488 674116893 827143154 192909897 495961518 158980650 592996796 924756927 596597939 852725640 388438000 274508227 832880146 161155327 355633100 881491282 5050204 15303676 642750574 415739280 293586055 750830232 43861986 326520006 148968682 491309715 347245079 17580904 196773456 922343504 971287012 619883794 203117028 597689314 621456913 812956040 917473596 357061121 496416833 409381810 675363670 583140104 922266632 170423975 905516951 24808963 74476511 220659871 660118216 309730718 986491945 84400637 478263845 31890224 817424939 964377680 352464454 696496061 404542745 38458185 686657074 682802916 319633162 12968898 5170777 443864061 409369092 54948546 501548429 766186747 169967853 475242097 682828299 563092859 736231575 437188387 25868921 487368648 709439160 569257555 241444069 174108625 480610551 400495013 170276290 662146605 431943641 654914020 339630832 556666136 395467729 612393475 974192308 405273980 310101560 381000222 329174715 272472043 117811791 714416759 499494680 19549590 866722366 18864762 913349965 677055841 583085595 80802747 399210297 63791313 561333465 520924914 578655791 178986774 992035164 21540615 426237406 908821513 348457327 471684098 708545386 795067175 246027968 446723609 181501012 457779863 161191915 449277603 164200333 416340009 279282030 793495334 86045797 88070740 716036281 814235212 73803165 709580601 447808788 907184876 784854617 174586268 747818175 238973693 762628389 91436526 693628889 817385125 776566011 613912392 958848363 199565098 483177011 586830438 88155239 219299334 569568146 739986610 516660389 654339538 477534538 815095611 83788774 298611537 566046190 249396148 700247767 182784109 527721339 313473922 208937989 580312888 882307671 252637865 858769642 55443186 3796044 878624986 984737002 637147898 515369363 974899818 196158540 272596958 298782665 478326106 999981378 960835153 516722929 780719697 212976357 412788269 373097080 98575263 328371253 456037749 151221814 32791609 787144477 99665749 347519848 32200382 842516333 246202655 801422771 4021880 462797279 102057297 423299617 627035734 19208469 507315853 558822443 492036078 128955031 809464477 618317485 503575681 987123157 902438772 339226347 241295347 289913130 338900528 157354388 720559061 592562904 216117779 44236735 568965215 56405513 54777223 710156261 520229742 574828490 534699297 524756205 143039372 492367384 49098906 93293349 926869222 576854741 401698265 253570881 992186967 2800324 931277284 17247583 722780249 702757535 984490484 189299205 965722647 497682424 612868705 679731486 446218844 526559829 1514413 254627586 974266534 714576922 69545861 370581871 571464719 467176863 221731260 958969989 434887264 703004184 527258958 457190870 412211465 239532714 487724383 904610646 84714526 353137498 94412857 43234401 720446818 997752862 98287692 417442493 291227964 747716555 725081400 847755161 151102904 516315940 849572032 257731718 951793552 399257557 748980684 395164807 231134499 915417451 99434355 69349629 990500728 55401054 545936367 528752822 63206716 564215062 875309984 674956521 864744394 126325975 144074261 531073585 763089952 592542421 993826561 537630101 599788004 607752485 958843709 776433537 669560422 191631821 872241103 756394698 155390878 684593077 826016993 7817647 477421866 476982699 591091397 339146962 298060627 485270892 995540215 743486532 776352260 7788696 215980828 211163259 459426778 225455034 799888893 588021583 856279312 126811968 279199887 752660746 290004113 474216071 923775213 605010775 786533094 752599755 37464406 79576139 718454094 226680890 345235261 959782245 869064354 751244002 69598257 213859977 528111726 546666944 354112746 578962178 328908255 812689331 159165522 306772619 230760139 917928066 523571824 792130109 864951987 60331492 731531639 838897566 375949757 678328941 575125188 266407322 783480763 977248928 598088155 246556043 861061921 556499942 817341284 89208872 957621263 733204371 83426359 711206043 587045709 520483290 191756872 925619055 56759115 458369762 732285891 594111896 753005854 982373811 496817644 248988024 548484487 212273980 354501690 489625553 61029869 106834778 451584329 933073103 270504799 835426250 346578393 335414537 858084756 57496891 272104918 310114426 126994413 696873526 304187222 835275661 60355695 8686652 566609811 463947785 590752456 978975400 347820524 869090854 225507156 608523722 972569845 754791810 720168975 734349775 880312665 690309664 555861408 159250383 22437623 115152753 592455766 910406860 589564880 365243717 823173420 738314931 852144402 109584093 555578557 928899922 413944849 498042332 714461266 732167522 618761540 908767059 993714906 383799175 812493651 804088499 87352813 240737094 888036359 838024411 695363272 398840852 566005072 262909713 442137428 467120713 504147535 879155200 211827491 940472358 445972037 325089985 731094630 230580948 348233115 539742156 703843584 720399716 450795239 980830730 613806969 146060240 46681571 477671371 355198462 406110715 824857202 601475005 604040039 619471019 24926626 181960706 98141237 251160723 906306722 722619167 682427276 341788491 850781139 575217406 863580222 260722261 640455600 78141433 820893122 28939291 721668588 273874891 168031030 890593517 487070807 826587800 20702305 865805317 30749674 670128111 452153524 673214085 92933583 447063492 350470725 345520245 899977801 263193462 680344275 988266948 219952592 118653643 801158855 225176401 568467966 213667564 778366510 265086426 839810201 719395185 334691264 12496135 318117513 108770134 376844255 910302826 935756001 313401349 73116044 23034496 680443871 970021444 890195325 613170597 603726819 82291532 195629317 89305893 399409274 145927610 609712420 202393647 801838424 277727932 974871939 816094942 785392982 75684424 577919345 987954485 909811067 998364073 965152995 502858779 463174638 169695986 305326969 174302305 87986438 854478030 432344443 854664641 115764795 124305735 166542553 729410525 181056819 499919570 540319782 997221691 536006838 62379342 365138345 237581393 310157754 720727807 406007363 381206644 156632667 27483026 459114116 75669737 309748440 398346013 102877607 165519317 363783841 272035101 362585733 624372557 560169797 452348279 912603818 443509321 737567107 603302776 689541447 463154089 992179260 264927959 436523565 921123641 64263548 614123183 299296478 163162279 707672950 49233031 220353412 851207822 375226758 571165514 427119595 209377649 148311854 980359248 42504333 429757622 443474717 300107349 25215364 163244975 828472351 229624446 389908383 660198550 117951540 532554584 42561863 539438476 679604097 760986072 58345364 522177436 668617550 964401247 351015240 503760309 20641038 948884908 460895688 562059185 197869407 699752435 459258917 285627728 298839296 879389634 462427668 807002940 76852194 36109085 353232631 426510345 70942228 820828258 129163986 495850285 258545874 250762086 364497752 620430857 155151232 99158619 851497183 162585318 708485800 718895836 689246563 510137336 918221056 660830451 357052302 161022553 41221217 688598534 552266160 819021063 177690831 980507122 457945281 312862186 91764595 936950768 806383452 397521113 247628706 76105638 105236683 909361287 903012825 511885347 270762494 749984153 600988859 126378715 52445835 508989848 995198479 856829097 234405808 107339253 30321101 18443989 126604120 8354054 402602765 827794443 541472014 424423699 575074581 445239139 323472143 585411390 943984719 537180500 868530482 167249567 124699980 82152650 277594117 803352873 184308171 773722126 397708212 9075393 26580398 535111640 559499033 762850863 266785279 94103621 782934705 339385893 881606130 105233879 127438245 293336125 665414629 565521022 220362944 346143732 836573270 135515279 195823998 466004921 521876722 224583622 841984765 90922971 315398545 154253386 392854786 772045713 68856105 651292584 730673919 558095871 248634588 759123412 429977355 506095917 267408634 33435183 568692453 476198157 84940788 276387447 256325363 655003767 466491238 622164958 599958341 53736494 563190034 392212475 765016208 69365211 28503525 261392329 636699449 988960524 311071471 610172075 980144194 503221312 231878254 142153072 367437916 892499923 855105220 25017680 354172639 380726544 680417153 565769959 366430408 685471530 486279761 336084278 232330690 728442937 845308946 959829166 956067096 910999614 712421832 18908197 776841927 523172899 377466270 461356503 281065575 640484022 386558440 238533736 92153925 459819444 950798369 41504233 950819915 906183359 134121 877102795 550534932 102287453 587718160 912850668 636205280 894343936 370161030 260792978 6754453 957436419 530886761 957938541 792191171 958559909 548702457 979085198 345655967 366881553 883979427 960556149 731306761 826361174 706537210 206158340 422240137 731128944 784751802 939433870 198924620 238397760 304786118 549503170 329121838 722494863 732443435 187414720 343317931 98518283 821854743 203627790 173072362 677357136 608626408 234781851 884656829 816077281 774602020 350645943 177667737 954432293 682685811 485644833 43624858 553356140 763606696 724737024 983105166 864128243 603557571 702302432 486599648 23817689 31931361 410573240 879218859 42495271 459802447 55821029 234394025 212767181 724635779 598471979 421177922 220387750 888553493 981011124 274757002 682977397 51003594 333766685 79544628 591858913 157522061 422023004 471917729 33908090 215272306 237451482 244984280 923784125 408820403 883063909 918299273 500664583 529600434 875854383 940355336 511855524 139416319 129542103 627196759 502685125 22516553 558449507 474880030 28540035 413376619 580226111 265680811 441613022 678186091 14379585 285371637 807447746 987744882 504197285 702302363 734312445 899913172 458326290 756200420 4705098 184271630 10731668 68323265 312431949 171770561 71521954 970751433 516179337 554513081 515086359 826525497 584049011 944703209 244270651 345187835 696496996 95201386 946373558 283875741 978571166 206379141 632349090 346081366 732476746 991761825 24659068 828203012 622972279 224538195 526060328 768506162 772920865 664418898 791591413 14516748 384482086 565499273 137206676 18404203 495130452 45863677 37671463 194201039 244434777 110434786 804436529 809541210 197336783 323892886 619787164 896178147 215531829 566075291 895724740 52373466 932071160 930023578 272072034 836158818 156202089 321458539 743542174 748297282 606634173 906489092 179633923 578065387 615635736 880687755 610156421 260436080 807933319 350206539 401282180 815361428 592321012 64976057 516401093 635856829 393567039 563738476 236254323 530470137 373335587 40448555 817763876 796587521 791080524 499485151 780201944 602000178 990771534 756618140 24255218 953752983 177164193 617999263 464176191 935966684 355866531 515481673 638566644 683148632 872484511 645654820 520797616 727228175 780176838 29856233 193193335 219652257 993488692 52188525 386834615 583188323 471034598 273036981 770862146 175935306 970132937 438109676 538033243 724344308 86313645 392805224 900265893 944811437 729516361 681385125 684969512 871988318 436540737 37057344 344653922 430338722 391829789 87622152 762502186 786359481 422038350 852827123 857274313 718601096 542823729 136196887 760326888 510882206 559834113 72342459 626075040 734313014 730021866 866130246 678003052 2252331 438956800 912088400 87007796 898213124 86328888 778045589 246490435 599134708 379638902 549661682 367598670 305608401 303130499 146803575 587749491 798000409 416012558 147966295 504772409 710745331 549785010 281610987 476417928 736765486 283633651 228480953 563914429 954510661 964757301 224509546 94945165 538084946 784830667 317164498 493395234 941507105 455112431 53676526 814529547 151310620 866412483 540769503 358286137 99592801 692603982 502714353 71871242 791276200 254287236 642762903 491017287 897896798 677661501 218479978 659303192 892904848 162057528 637469490 55976471 210019573 750123554 953077209 605879612 416116972 331572875 183547246 55967472 866109308 803098093 745327922 910281473 594764886 917366693 21052550 620777891 841872851 165718529 273217010 577967217 150667756 423519025 980458030 324013939 254368077 300154444 330384149 210139671 114861124 360991319 789151398 645612079 8526281 955501881 280133649 566831355 913846905 123184834 371797671 69576733 30155164 105555886 723220707 76293799 48852517 32192159 313297254 747758090 618721702 622315802 278961665 56781095 940293986 845623443 447069861 620597567 111200575 451715939 881083496 738279682 826498250 465243595 330787479 967831429 33210942 370312437 690592148 625567044 412932984 151477744 958251001 360182569 263477502 399180985 738751869 841458554 139725061 426100015 438520322 942317808 615022173 15782936 399442587 538495912 704887691 18727980 402832499 979473449 182265776 446149889 723534312 155979868 253657506 579581975 543818111 201249434 255461078 129055190 215139042 606886560 188386921 991175828 249745893 336254608 159436324 231369609 747278208 105994234 889425270 513541588 395405019 101743316 612326006 678945663 471674941 905052794 165866725 26808445 679608861 796666544 111898409 515413925 164674067 870844582 698597710 882361782 859252706 288947694 876753936 74860640 399706747 963748233 308346829 641114929 721263850 12711128 650284429 103469729 766257006 767787181 540478971 414790928 807626347 450837048 350458482 172731341 242211178 421110298 190128626 631553027 204249119 390733144 848685601 47393742 797067623 326307934 803272269 894380846 244053569 838761984 931888750 326123280 563620572 895769216 698656293 437743683 493176202 349757566 979310005 350323324 375773641 95323146 194592531 514979684 735095094 997494683 184358608 163720063 609605794 964630280 506322738 921022270 51328254 566038685 162973979 6559231 821959268 118761988 784605468 103923455 945483546 424597331 809640558 180897894 328880267 798225412 236682220 28876874 258607687 979464195 194861859 931205025 168742156 656527513 606231357 124673357 456850365 171164026 536949266 89925912 754175589 560849863 866451749 952283827 470544695 528861441 503026841 109361332 961372047 425334296 359119425 625479586 58597102 877467235 166641808 500651234 687274496 160631451 7813544 615921609 157811100 533441510 844094032 893273738 161941946 670608596 943947000 258826573 994867836 931621464 616580278 810277145 700151601 831013072 877860936 10207964 90088264 19516674 799967001 196686451 811285857 551282461 933908532 384597407 360966202 154767792 128349012 397399814 532675013 626763453 752104919 367822141 810084877 348329640 215706562 261040061 353784914 524707134 462213319 695374309 87984632 317939894 320015165 531607039 987172233 266020523 988870432 219976252 248662966 290837796 814452509 549071287 263218271 977832333 455951229 206868846 997663108 94721981 873312061 766317392 236745297 421683438 607043318 813029161 674415641 925141192 524208631 976160691 847916375 160116310 480899368 636695440 833199278 5607186 477431332 643141194 280636907 696249301 368078890 435862867 934632702 168885218 433025313 589656832 868565768 230147052 10137240 342319512 838756167 771921670 393062085 53325888 878735910 403962286 205616522 403187723 912689725 604624582 884186477 762804976 938539332 425012383 921538204 544920276 551142686 756965357 646952943 149957247 465315030 903852747 90953190 532281505 416292259 710853056 293184937 7483603 709413850 706132156 450433540 984660631 83839493 715176977 15777907 546343511 995037129 891606396 39140368 207605346 352320765 715957541 601245861 64436725 355757725 832463509 473581474 616612399 526794184 915951557 910421789 803945752 252687054 975088656 459323605 484486309 919803423 347118398 331021619 660515755 152742744 311195769 976823365 775477997 27468861 320297816 508187329 794300436 28007348 172547801 355257096 132264626 65038040 92442206 389413920 478027072 441278942 684202168 690476731 546660895 356433199 151110940 707094061 796704920 687631439 379924004 47268215 450510814 509863159 457807576 325836862 2322441 810728449 700131748 634804695 154777880 776395886 79106398 698649651 749531127 712774765 692434501 660580594 788135287 392778829 968914169 940479583 993335120 441958796 665602445 448495718 42126119 155660236 220585074 719789470 391832447 803967451 525320583 271892555 847968974 987560104 304850195 145277774 562098797 896046162 190277822 927593274 572602266 653140251 613166756 756800837 73198208 579405421 116778558 419511887 39799090 77247452 459160947 230886366 175836329 457433124 262026127 330247458 187229636 568585767 181542471 207257076 297245772 681912819 795675832 366911440 789707255 662588855 801352298 385473761 811538775 102605521 614421576 640095472 851625202 584498882 889859494 210751100 210520114 978728504 95743303 986263455 391393895 333122054 114680904 343244579 25176519 200967718 853356348 815033717 107830393 764968637 517917977 792682924 538833280 193117458 264889400 736170123 670087122 470139548 439750496 41299316 264916808 109709814 922421950 103423355 948651427 773591012 190721256 694035028 916115336 553491022 595651549 472380769 848410692 478057291 937809407 230603943 580216109 69719570 999563549 650311639 485270467 498493963 661379947 723753286 361218971 737546687 817257094 425895156 647951592 661771742 782787189 518299530 367048896 732151369 285399716 568750935 956236329 109455616 222965482 770889552 607628039 174692142 727924867 341003797 750714671 497296938 63107346 669633262 117021527 645264491 145374632 735650507 550463523 37634196 635814331 382764354 651297053 840546420 69532707 47949203 765602739 524289019 883070504 503023013 973313599 505711175 128512632 401301253 764768516 870109847 329181225 268000748 841983275 793564507 716953527 293702205 905484228 403429155 151313924 876037241 731933897 263414700 346030436 371564754 149398555 178737880 678595208 175783969 920337026 968404917 333041037 401824994 591436467 289645938 471550715 604045886 336141893 687511148 181806266 807028487 683263158 229787945 381595431 967227055 409577591 637343569 40572408 794208854 952549328 711508150 519077207 394471366 140658177 273387097 233164495 722242157 535383592 719510870 67063380 883093090 535598672 404703231 942792519 579007334 897841258 813771458 918813035 234355166 436182352 350107966 45684204 161285081 884186049 632387380 928506979 506192400 789445991 280282001 27916745 864876771 952558035 745469798 983023495 605504854 122401152 558531822 838201958 168930842 216403663 893333648 179988385 288912519 4935942 856768981 701964238 344495002 94724953 936592495 983362552 230397182 117646818 932615994 390614669 840057855 540991649 441187642 169002077 32732822 24419454 141917851 208118697 921949280 416333900 405826991 180520213 577258919 988460997 328195569 639578797 367739993 445752969 960234244 670847720 49476365 957127457 532096948 1019300 671429122 467222015 592010996 102529319 424698912 491778171 545683680 443034906 657089017 243708375 640134077 300345751 945821372 505904188 145010928 91044887 90536275 501913020 658967059 143497857 929095484 595211601 313625053 877546530 145647018 29341658 473386802 251778227 846415991 704878371 714676766 1865546 331723036 878580441 556017366 290496371 805761991 650080153 670585010 675576342 613771843 37947876 453430582 52505741 718720776 68072224 635926801 735026066 520477749 402262691 508817168 438105676 385894547 493004962 262469426 657743687 348302990 778051395 678164890 57887609 422652227 868425099 931791764 395111231 171255659 558639722 836840080 698564957 360044142 968369087 716367662 92011522 689097568 749224775 737061421 65670083 669147125 835018156 251681146 515544220 621754251 715275137 239995177 40145140 732121133 531215420 607126643 329265304 475717511 874850624 569532094 838258623 355839984 705328344 689127571 226610689 540833129 597609779 774997671 345363814 502100634 440951658 716819157 247091549 177360337 721241728 419752732 43944376 375369733 293440594 41281199 285022135 478879188 118921941 488891099 402423039 12389513 764895387 583206431 387276954 868714254 434716759 72062235 111152640 363620608 925997453 288995741 995144721 790415258 141601714 421397910 467119117 817149639 782831900 359170597 552581285 319323155 723231249 533517961 333826795 264380340 104864695 81485615 61944671 375857479 952130334 465729704 933057253 19112487 269814848 232626869 599799754 236161962 953091843 555597106 716877509 148481779 444711976 974269745 336486385 712127614 358849638 958851555 914000851 539415414 734650199 951310238 847867482 378713255 565611129 813400300 57704413 517624202 31354420 687636855 459121172 773112637 420858079 88029457 331302697 992621959 530597804 81885876 32954022 213218776 987547077 45392774 491510405 613518921 381927722 57257936 621525020 441540758 204975058 998831111 834255671 776174377 835277975 567978948 882850561 4027919 986238004 849760460 540810509 750434817 277747290 493713421 633129048 676024669 817993365 149325459 575338573 506833194 4477280 911948958 465180085 732794904 664365341 569958547 669135300 174600064 485686034 554158074 772886808 151966815 118961269 194016903 990100154 136728668 738807132 582042900 232340754 874763464 320289737 787435175 467583738 947003803 653030564 156693355 222944941 478128750 648976578 865706416 270144719 310957969 470267864 789346548 83756910 969761516 449696650 248573659 577541377 29466907 237586531 712832558 481344868 258237531 998413007 805303265 669924571 704280468 361946153 596443150 836189462 954767189 451909042 499113213 56453673 400137941 434756504 431468562 489533326 893075189 562489830 562169577 991127344 695762233 571919768 755608628 269037145 60101331 717630865 830158556 378223294 117073817 580595095 386940653 380052860 476764427 294433117 831976596 15349275 976442190 124807035 448798516 114642822 536481333 427733621 392060493 56531730 574813748 83644336 203933319 874538366 392248173 756251264 180881083 857053679 453658276 77113119 828235998 160185585 963777099 400498093 332449560 543046520 527394168 414881075 155773621 476088293 271563499 278568610 811930404 374507258 567750667 608670164 121379589 400019172 704290279 36750986 611622167 662961724 871077941 428149102 673465157 640316158 279269974 116812563 107348902 391309709 905424977 30947565 729298803 50437047 666250197 927842912 586895377 386026928 532174651 958974389 926457865 381038363 404833918 776710943 350745615 496545782 667809353 544599476 485389311 947508658 800880360 352413305 482184154 23092263 945869144 358862677 790940878 425613963 418055218 226450968 967006253 433484937 941640384 354073983 257309299 852531499 379999218 956290600 571433027 416479208 453008735 3356062 604560743 21828510 960866885 747578704 729986002 887921554 696488074 602874778 744519331 813067374 588088256 486336191 196055832 282607437 232784412 186039264 617186720 589128871 225974657 543018006 522799822 874100578 627286130 768313177 465049693 193247695 356174114 657096584 824604207 992538782 473945188 679555439 956616014 505544691 499496637 823811002 29225712 534459468 99828044 19743241 313910640 879280027 844928232 347672024 515641170 300807218 249725190 990208405 321690175 674808785 639018179 573762957 671843339 582144668 503502312 792802552 232402353 488973856 526306276 517427966 466794580 825827925 18155727 237397922 909828160 836287125 528351335 391781083 831986155 338100900 616264467 808967549 367376618 694090163 968632036 386532939 343942406 617172310 525716625 571760365 192474918 393547402 799447158 450183927 853374560 262429876 375073695 289675489 234182384 872422560 703827129 478169866 36465974 322553734 719324443 723723968 674920126 400053253 404132293 844366640 379664190 261078298 213236828 417816182 526218639 191151419 159598130 894209683 194409653 25939256 766960958 832572525 282874073 289442641 358720287 698698456 134012499 223460394 78602264 301427085 611496601 94357457 716296736 945202223 19989841 690159288 220431304 996745538 15711558 615314114 569530708 708965180 956007276 768688689 811678631 337513847 564342749 41051825 136023379 708318001 132346076 424286297 156332941 712657043 13465047 92393127 144944951 305125808 706092636 942216062 821651414 985570688 371617069 983890479 696413338 486127334 316977958 446240360 806491482 236946349 803120217 13857102 672652694 50007424 831046389 437760613 404622196 61730557 638808150 577760406 459557574 679948965 675911168 795735865 889447425 754669023 917371551 953202954 246769987 797781503 933760259 604835635 920792405 123278650 917747498 577392184 313658023 872560057 943959865 596611865 739933775 102143612 213324918 313478186 31119627 737677947 257481305 207508022 890142276 564477323 974742906 907604841 385502474 469193585 67138206 557896790 121328916 568111314 863146417 185155327 249683393 308947010 931758789 119742915 230239511 921484093 68957460 590839412 906523332 695514911 265617410 824537412 563727652 935889458 353182236 598240725 404692531 410237099 162441750 275432999 100469913 708711838 715065801 883919787 950470307 724857363 929803574 976133170 574781772 994940396 589191052 742251263 700731697 180734206 798304798 738783154 20601755 474207235 551672166 988917084 513200502 239877530 79288840 707072369 149325917 524517710 856404431 171247309 138797964 113643152 924839598 393368759 124567276 196677049 156172736 130784219 595399181 217747723 475054153 482955086 207774500 995887021 256250548 888480655 775084052 914737840 947729812 51035522 387317088 133503504 826799781 624297332 555466040 28376495 908580808 787688987 107358326 565867603 369158156 954818965 317091737 22514863 55966881 179472996 188385733 26708570 397588450 753096825 919348682 691663576 847739991 180291113 349367075 481311890 413874087 825804076 669336297 959007193 672080293 641338799 329474281 350729189 243458380 700062010 676562064 614714329 34532802 739279812 958203893 774018493 839843666 432757930 414466262 449767810 339598959 545938352 196473759 882877442 137461425 961411078 184136282 155463678 499860447 907594561 609341888 302080289 1252067 674960474 160508465 747189497 462596303 668013242 486972084 68577793 656995296 908538159 677254648 661121689 953148025 936339179 669214037 649625100 780522532 282848398 718974409 238851981 370112663 330672925 1212155 913259313 222799528 604266755 388707388 943164155 78629729 226483990 771884418 418180565 984064233 492426133 106915436 65160334 532147605 468933925 651382083 259846881 639066333 591221712 333513204 598933617 362255977 671306257 896700182 912412238 757654273 934929344 227083501 982496077 622061464 963006757 227957851 679385701 963484237 210890220 652029425 520626253 641142111 997443626 67077861 578949422 925050427 161731423 977038360 759667482 747735154 329397613 661888787 571646217 628350148 290690978 540789505 805559775 930579987 15069620 465917373 995110240 135004774 537258176 233417923 275127109 691820020 480449613 80874045 723630625 113659929 672381765 229335031 40959605 770508372 35738879 94709869 84637615 641059668 89845303 353407929 457787164 781138412 298191381 636867237 414047990 940557334 949694242 904513441 507307362 158070262 302670424 508497861 9513317 792453846 24065040 837035978 71432690 603380781 98881299 87620896 80244960 36005008 218138508 703983825 701093365 691104967 836972561 143968916 52669908 914326205 838169759 279481290 692545813 951925891 35912603 199435386 643458861 308121941 870116048 992825941 884936061 229324439 894390904 715251118 964902478 751411922 668838446 330215046 968906711 891217599 882508792 838908295 239870760 892229170 574271810 153448700 401733450 414836531 862098913 479114720 942989347 428803820 300405010 101288142 942950789 518807729 662050943 997354771 622031398 800719610 786422574 16565657 895140526 867895406 871452825 332892155 839768737 130736345 144967069 647488885 246724464 337236010 342408061 840753136 253522809 188171134 600492775 652714235 538987254 656314907 515151601 228020940 992135959 801129063 193725974 149057863 61223659 672389371 531005761 442314988 520209513 864515469 402512059 572520432 890724724 58044418 7101238 606986537 302435545 493750120 359197911 240700692 527340355 623370480 207671836 703261403 326201421 943207670 838394104 358922573 897529723 648622075 807309758 177327070 897371954 486829485 703065131 936478641 890715079 86846431 560648802 766429322 226396786 784415112 425996275 123343835 757520978 278988243 602120917 598458810 649212790 474545925 729536609 649782760 197076937 515989394 734741086 664160456 70617128 777084183 878975483 993683567 950822226 499567959 485256394 543489424 125118194 183075645 966263754 9256076 364413082 191076317 47505505 722355305 560010944 421700976 973383516 872474072 554765256 427609691 366429167 636813359 280920315 873720360 731269816 509476972 625756552 472065166 364960957 318426682 240621451 837077091 811509353 300396772 92928771 37579439 332493461 175873124 890665690 13287321 997640058 530336858 793245667 331395957 426471358 232737546 270643159 885391297 44551538 830972518 945477202 612513310 943942920 166768900 320467429 766158680 864216159 665747237 567976700 451790436 627746746 849244076 734534386 476884314 409071817 665492271 223158025 855534206 411292060 827359452 488587624 549058877 270781879 365576093 832921635 63781672 365278460 695325937 981752369 521160956 401260728 293540360 783495797 276806045 164185760 70699198 511492278 594643732 6829013 397633166 804857512 443407765 296808919 179747747 160756450 933390458 538244501 504337352 813073383 169587531 233227364 788591478 873548572 67068076 885248773 596658382 843648474 115609462 484160662 514926743 938540116 954489251 107017133 37911869 426367660 819196244 418299192 705412571 183629295 869700569 846852503 179949356 420912905 759081120 752473489 343800474 67392470 113123911 476312911 203939127 383568408 662048657 278639466 418903733 697255545 790034534 547379679 550412916 776520070 476937439 890511633 960178816 792863933 196185140 408598222 687279237 499239291 402225097 69430604 435475161 102059533 482238505 113681961 456797050 809436320 67432452 209322344 806442260 521688659 843006269 198338680 340145143 951816227 668932560 289797935 700114707 492139515 403063531 656541897 520842510 862846890 683707874 168797417 273388845 611434477 987146542 665780383 321876572 280047969 399521654 148431713 219873849 233595280 244614786 577866251 143941117 979497968 189856838 946846176 256782738 608129239 13535196 236090768 916819592 957574275 704036490 69647922 696041236 668255267 564851898 708054592 16584472 802155204 168464640 654004895 667125531 358230112 354002197 690244511 479541064 354960092 234160351 546100722 314045562 994245372 601291622 635406777 490925361 147365237 753119713 779331447 795895954 106402270 671640233 405309209 65411948 620642746 656767552 334783218 397977400 376388464 214036564 528293574 565167382 979074389 223868089 323025589 994750667 666472606 403100260 88381517 249664967 369325679 478228096 286764933 808338465 67752143 490474325 536218038 57666969 88689072 605732694 394079914 930670229 942181871 713749021 721875852 954520869 956660295 65822064 483178995 344764416 853530726 700461113 666451675 49075590 543769563 272072075 457968553 896756414 907963681 288340896 999100201 662733911 105232534 808673503 971807379 718131113 831787910 425669838 528235138 351513521 796201762 370247460 502495740 603809304 682212229 865051324 763314544 537664559 325594795 176307866 870167987 27190761 407729027 342808806 461824766 351225065 25956569 900541430 856344059 602076532 45513834 352852804 116058292 242546042 594324439 477775477 972796320 143241619 845992359 337123923 507102876 345570300 843066444 840317903 350374383 114492320 997140256 417754377 581949251 824708362 386048870 274913854 52516014 666842997 144387397 547818720 474736049 629537727 198076108 409826943 525389867 474213228 4777720 615345108 386306412 919407536 833491626 280155592 374568236 489714273 59135914 92683873 259699334 547798266 241532331 442615764 713221374 289967530 407884100 968100220 976913285 558219835 825745143 36242655 476588906 872677666 288879148 167848613 172995441 323393671 829126710 878621600 581605563 421796647 892446544 947047886 2393045 588376952 885638551 81373524 590473145 36281487 757198870 950258555 982157503 506403628 914738112 483262386 452617644 546917559 524294764 73280669 18330290 805470778 3407838 306322168 642862180 29120373 652526268 392020147 323659967 278462401 605078424 134538716 56896040 834576164 52646893 154023861 29593196 25473362 999414555 45261722 132500929 817500320 729596267 417331229 995831749 61817617 976595724 761262060 190076539 810881348 204602652 460897510 648048465 124423566 351410333 981633293 421411869 532296423 18476400 663590283 378768924 921861100 475652977 106603956 865270516 314554341 591531857 783207426 820129200 784570817 57669554 574711580 228651976 929892119 8149027 493424331 305370649 729456421 251795472 903537408 469294052 479977940 113766357 94704858 455106013 67129526 927278513 532299162 929875733 138078717 825828045 508719022 577893897 508728202 783845436 115720612 690326430 692431334 565347321 249018173 619311140 493545793 7834082 16238169 521648206 616036460 722659523 592877058 182128698 682340847 148637001 538171249 994952303 732418281 51625232 362093818 325554390 864234543 103774107 399632164 726314441 629472052 783578448 516218267 834317571 115387165 651868290 248249904 13438631 678285740 345354858 586060258 240079943 712007763 999725608 441098191 716429778 300463398 620849609 562251847 683075245 205271528 586087224 641492408 654264471 101251838 463046485 953940421 67293376 717494906 114372828 69206569 468139708 563563281 77518713 915035092 826420618 128166689 302592700 608199641 238352015 787640755 274090273 126506609 998760087 335900534 186830085 12091904 512074967 842453443 373165492 965862933 776826349 675323286 477634142 889061469 582821598 462191256 615447326 399778232 721244185 376716312 270017525 720577318 245680753 87761420 794036680 763995863 134257698 634579478 562097006 328053529 201738709 202140284 973046942 452868458 359476629 936713519 133468408 513396589 84490712 472513728 891758343 54981100 80699515 599042423 139825466 363732955 248515013 697849907 457517294 286296406 106618719 52330377 277412707 468171425 579762528 339947181 165288638 932442403 139912009 993482881 524896022 90319988 986254075 306637961 405987169 55178572 70865347 76592120 895363203 465196691 99672920 407041699 818170944 59387470 974695128 119610888 175024718 586066612 667126214 124870737 458090311 496038686 520182546 938993994 914044838 202039058 315080720 22466415 193072348 734067514 757018493 315748573 455391796 201626219 511547004 279625817 428872173 134017692 19597727 45563989 769706019 716782066 668839895 791713764 429240289 228880827 291236740 555374541 397581849 373907302 635992426 128925041 185581731 352711570 371902390 830804961 145519426 739254016 740409599 532032213 906936478 311591325 968367422 423400363 270221131 332412795 9553119 978011242 371692733 149243861 627413416 376719555 912319064 300855822 170660308 387564299 846386278 145032370 620184830 968497477 940760344 311213173 209918762 442985491 615052678 80690993 425941961 845858760 222697141 532997353 658833578 794927963 454471305 171180747 936254225 992521066 253811925 150836263 450698910 950548798 19552852 799875449 163799651 75731397 938866597 253816162 964139985 526424724 611902036 571660724 824733127 710402798 590847950 47827036 43297675 110162616 18296434 541503096 935865800 927872386 9026173 784793933 698987415 195952005 81020184 394169153 970349425 901367454 469315415 213094123 593179196 341930836 633804592 663198724 555214408 874825175 902993033 302245493 212087882 92588799 886192166 847039808 778463327 343252811 812743357 799317921 158594824 262421472 532112355 962691053 362865206 914529168 115954971 654039722 107777087 194587601 310348494 823787907 507268318 480843714 863139662 976379466 338633275 655822125 973182934 398821887 386229214 371920764 996950402 594588607 206800323 902142157 456104032 474051543 473301315 344170712 677014112 975477437 857314853 464244747 547061338 783637002 504049556 36977265 30194449 270822272 476823335 303036609 133463084 426629134 329725402 617357147 415559486 60994756 529250583 288048969 855786176 803873248 398102949 43243831 799096597 254199747 959430842 883810428 712245632 593734137 53045495 176463899 283498298 631959605 666231135 452185526 786108505 454956883 300163166 8375456 772787932 113266772 368251087 833169617 89865137 937644388 814576871 880661990 77431204 721573595 186842448 479778854 187123315 406032431 520050710 375554432 815741882 363192578 536837552 925593742 774808584 134356005 822794234 954681743 188806090 745951367 232401209 816293223 372804188 724513861 722517275 553517734 520791807 862462880 172800434 93592709 795907034 472891911 234202752 434795491 19331328 489133834 546169193 813320262 327162218 522628454 719756217 978174687 256204280 564576253 963376933 589197188 644729972 803483355 132731083 504675764 209860754 209545268 787028529 51202969 270903017 946294625 472252995 817953533 960834040 568928232 621136982 217050714 576815915 486071922 162443049 869448146 658649555 133705173 306062304 972495400 105439273 11564552 554047240 771569615 678322765 867474224 724682646 925651931 266250568 419935901 348388331 260978957 940891153 946629051 89566919 106781388 932203641 36810537 666315864 867486246 649585222 676241322 304199992 378582229 254485539 87812904 285461344 159101493 49432730 275368888 513895732 89584207 486355757 710355604 66722438 734498514 881004342 528545569 870416776 547358740 588585732 165289446 82120152 43330073 989013700 244908444 55501180 399164803 875985808 334744602 926583263 256074403 74743405 830779238 256815321 970610798 759298879 415284904 100254628 225038216 76409307 28085558 144545769 954926390 98019577 406973325 802631858 918751847 939601721 675209291 658753913 666992818 109964324 162865468 764463892 675654998 358670126 971325528 425066190 442745402 827368624 375358134 907058003 357511409 9479913 902337948 243947447 173925804 477728517 520332148 124419193 983970896 258798609 59076816 315361916 24328033 5108234 169542511 3751950 388222222 860464337 530853678 928492519 388580401 919098668 132386591 26243616 456192327 588680656 796514927 974936897 609924982 695649876 171366270 481524534 810697107 82018365 695341262 526306900 309630220 235060718 377222666 762479195 879926027 222733245 962405636 415897452 659677006 867696355 537106618 573289753 314094409 673555582 974795853 593795922 325175058 337752219 519736841 640832889 49734760 576873257 559077984 336690513 13498293 683425537 487788272 821513223 803115780 698926820 879082875 767550256 942816528 973495422 815082731 499702220 493568567 534307168 280968786 172249917 124299132 646953985 937927664 892705873 440586135 869745346 659924518 46429759 780593111 802541295 167567486 372676003 892364607 234768822 880790701 495932289 666196342 95335730 332818317 144652358 666738122 115140453 507903009 18033354 743995957 772259639 702503060 245657930 513390165 433207673 858101565 167543402 775371886 129737703 542488979 474282040 645317748 591068701 980599611 30442281 167019772 188702888 557761791 342553880 813447750 435727354 790312915 843966541 32570169 966590827 450821587 779694708 259140706 737193019 544377664 873295780 110406397 888458389 509071755 318038360 785225189 695002249 308799553 174741879 328640675 407105298 790248991 140007756 700639335 789620494 440692232 862407313 738402567 71835722 802615304 136427612 667552769 117975159 137438802 623582777 269874559 320946730 294685764 849479443 350299982 324906984 76109149 86912572 80781287 646407962 432740937 567183477 844134760 413859601 144139742 158612194 610641050 188911621 13685781 662984720 794836458 447940119 283721488 760471799 576016497 550337107 56006685 577757168 849765615 972428712 598519983 213935554 929694918 322000878 959895903 332946077 896145164 752892139 860890867 339114259 724335989 686707524 410589012 800092960 522843998 97158029 179237526 828457772 983083220 279310652 543822324 496196868 66273665 545986486 37750995 591268572 831338942 17512769 874592188 889684562 666399117 584885777 409515877 674859372 937621393 837566267 384069541 26494358 242470429 182109637 752605827 110848167 827465763 688640918 455295272 713919448 94648902 478332545 140035816 148675797 225854414 346605885 954331712 914358436 942605739 593946731 37071824 308305089 953861488 654401431 69167975 944582659 299536990 665582127 632626421 831678389 206272094 243279503 694109591 770804351 847717118 132907254 387096719 960992633 30560372 26301070 55766598 940040993 690821282 37498987 160752982 423298651 640828943 404777602 989318519 542613876 72048870 516983478 467542664 742290723 682680322 162720721 917008794 599195010 207869410 451704965 748637150 259712794 883440047 616073319 864006577 348931540 310029362 704785148 698442643 840609802 365846249 682911405 304504113 628979063 574295793 798350794 369583711 924930112 905631759 852693390 113822743 398969842 588164020 919570713 927436668 806316675 654247417 56734322 411245274 111116113 932456090 335851918 672267428 578196511 456522241 557985606 750454903 572421659 428686395 70659675 172788243 280668890 355037185 107020402 598954084 542672732 135846321 486919458 237291137 280898308 967453267 308461281 84875425 821010079 628050069 931077136 852720936 358485859 714535377 94586362 894431138 625448941 476473603 887717842 927537604 686068032 380605909 941289901 154695271 21512143 611097492 975914382 736409228 316434536 364294712 986117726 237066853 260344654 230150498 469176559 892660287 840982310 194173785 98756859 600531351 350433785 755908104 936519713 448804881 35304000 976017931 393311978 697784951 251747799 80852382 673586122 310291390 155304194 701416876 848908825 334473729 630803313 32763072 82920729 569350019 534484791 525909524 321861873 918577580 631751633 500691081 820303282 381599253 933672230 413134240 500229211 449696119 799588482 124508815 25019333 924787378 914239388 210287912 659214272 874173399 469335438 565747437 78832633 43362067 68696034 806035461 91473676 77934535 868764033 356693569 661121400 433680752 147729859 370772498 44915369 102569152 810093920 14068639 420186092 790673031 534620036 497314219 409935232 93994176 534910651 665547942 612100482 915723663 289874422 105995175 351076605 488777790 816156054 914255726 276272863 772957763 708768865 392645475 289330438 305070132 593650305 213057681 159621937 355467483 781220492 969089204 461073929 147776543 528409216 277616937 915119647 227806741 331867330 536657400 429739245 285788149 923397920 604826833 193658324 987119911 453069776 829283336 981954847 640400434 102172780 592798624 428605178 850357196 458822909 413169728 966596230 770712526 503258350 85532724 448044734 15406655 789413397 216050295 854051214 819005512 111393709 982169510 982008518 916580667 586215775 375160585 371941153 440051604 337651766 768325007 791401789 376887289 129353128 882825422 843085479 482770993 658029202 538879494 636557006 8607792 402362425 773658912 133608972 36884757 600091466 624908715 939891363 68931615 39854299 599869917 192817594 918842811 739745641 990436244 378673765 864509564 833703898 788224346 456380570 922776094 880747641 759617886 515788348 298879109 766677502 867218036 334916631 257015993 430955140 768901918 84088535 723787246 681516179 384493700 503613465 136628355 132518932 264303988 573074269 37290744 241606496 947497828 524389645 594004729 696082485 569401207 82412409 499957849 177131187 424669552 427975130 452970003 531982955 167420609 91920210 596241227 644197715 678667135 320114669 250587723 171937990 825081706 702115735 484648841 767741578 334103786 713347373 544229532 339228110 881344528 972442990 749396299 468611621 535558545 180725253 576295552 275571341 299133387 697029762 208751439 659809899 501720006 878579552 80416240 72704652 338965557 793380607 175729354 831303718 931732074 185235112 850821992 680484311 325138280 256474509 391879036 131781795 526091988 278517702 680265696 829687541 83767295 90778454 589628314 66889638 482350301 270929189 589259475 864027380 223844112 459731461 110910944 176262529 845547744 368423855 248133691 108540251 101278268 564977091 649009030 874281208 914764728 614957770 935020689 362692660 917800855 991442746 46028874 312525142 573668030 186175590 123190991 829042700 53594046 232388501 122565218 221314153 719853517 10777835 669592176 358025705 541664714 642130557 628276875 935464564 949006652 717846338 390195566 409190744 574606165 179861532 627154941 167535689 314265067 412398293 124079683 36711010 103634554 627326237 260363379 696303403 228551980 990898062 301164521 49097616 240674769 262061225 909634087 288828137 908499678 442108376 13096920 391855599 897296502 595416170 350733777 10565576 230323548 388166813 554886669 139769605 79588866 60661901 382151854 518510742 611399037 713534788 939362560 451645660 159533199 743658422 495313014 177811100 364011677 744925629 245368748 672888323 936614070 409627412 522818405 138035621 935849621 861759594 626595722 848897921 8523668 780459089 504419376 255611899 701854655 182246972 270994581 949311198 985063616 457690515 784668185 488786020 623472371 297150619 128631110 29753895 971595863 627043206 333327060 738446382 562547087 65105265 173383835 675781092 519972591 740123479 954255516 280572707 921740650 765132069 263376391 808406819 320726949 65152170 806785581 161666442 18781408 166209188 321597320 752880486 913483793 718417840 940218047 850541616 73405133 231301977 124530584 637524672 76224080 495573774 515310092 787543132 1286276 433929515 940894515 128845748 479422712 766434287 386810446 541198813 507856869 801798788 496332239 96938322 493578535 801830397 66475074 145320184 316573000 400122963 40620903 269310750 677327988 316824930 770182006 386810490 898883974 10303995 898077300 758137638 44656380 583784139 970145951 908530602 409683964 186026347 313527796 182191093 789730135 701310303 224621309 30386775 813787265 938098442 181853536 794940560 895887517 486474951 495762163 834191046 791489905 180298182 646435502 54597765 948810859 433526572 545139129 368143810 952616869 32492293 907662429 541829085 116125402 360155455 904473869 654532760 602091638 68633266 651768675 997436704 881569925 347521058 345153828 253718286 125498304 886076216 492916028 988252509 320365701 225997701 963628732 275869553 816444381 149910912 638716384 78801432 981159029 683512206 991261966 322737290 922508196 578428150 462021070 939187040 109062253 310456041 784010706 530749346 447506546 448007552 470233594 129063357 772248839 671334079 347892551 773824644 600107553 944615308 865340387 83661880 449234272 897001658 476023840 73674618 322321163 179432963 441802111 789566045 340699406 306404612 361967519 202447184 900246023 397113932 150716747 499345459 16864305 235700808 139791223 180806989 362977907 342343253 793861181 520149575 963218781 985242032 597287394 879590714 537378341 7149190 387606483 451949987 261703596 182799078 988748192 104193380 813534586 958738379 241746950 229867468 409989309 136447506 16353769 293621908 133658445 414838155 707554128 405637844 546423462 424468449 689308275 900947988 631043827 274468273 437900458 690915136 609963011 315346298 150870394 849193388 390892107 133432998 859817359 894080026 345586156 692120712 719894970 545470378 420624301 78490457 507936760 450108652 646574588 150377270 21362797 103832791 422344178 470246703 797789280 823674821 426458190 622135855 17110859 694713978 245963383 856419347 2237890 576564007 560214908 89665689 703673484 848263774 622565140 439764079 112985492 800986657 265612447 487539747 411076335 711151825 784144930 670449965 63350229 476123708 337404240 927041777 935911338 611355800 991771260 685425081 933994749 635386243 934878634 53452210 121960059 116747006 818075519 653302266 61894661 114730108 365063241 733590926 623911832 544864209 633367807 557161565 644993639 522122807 568645186 193017904 509971391 141939540 307331930 808549320 524834333 253081144 247452981 258536898 342498853 541766742 799416683 949685161 593769378 208327311 886544184 720498412 527693449 108440098 681240711 945610728 352386033 923652033 886017254 927039706 798872865 875982975 76108429 902413552 634369664 366468314 647300954 712474422 340287145 67946422 190621652 332082603 960287567 30465893 26447916 146420266 182108761 979286678 508281145 29437824 404963538 888361320 453202296 335770206 902683631 872751716 918942227 406304860 298868742 569044338 635724246 261401343 91828129 601021164 916932668 788568747 984187495 478783629 747289699 506038194 577767469 521238649 294452754 603505490 664572906 198415935 913843382 834076328 776335049 562036690 642398314 783506879 182048525 241408659 526934763 530646662 619044655 627628612 639546529 519342040 153298632 623098900 345870746 436088950 775731613 992084888 839372945 103036429 655529110 590221261 322442208 721694759 418028746 316710424 844173969 214133568 993557618 522073927 356430163 183756733 570223601 962603150 941176191 813847267 962485970 284919946 643763217 297067492 112655562 451581507 853548723 628544219 42097332 141351460 577260209 626273735 610192275 914141955 864769029 250259346 451063186 376947484 577757262 518852880 731107074 295406359 991234002 679564791 768237410 966760700 826014851 397408745 507224661 205034822 964135669 498864492 173877411 258069456 796324712 258379001 549933376 827999968 316792005 16591331 312417866 759959586 538998681 787891054 516531717 777410989 555360028 938267584 848950743 129413371 399300654 931518705 12035414 566605810 828738647 157428210 812302655 885012450 23951045 764617128 271590514 834758785 156928846 554641887 718535421 274456806 756379506 639455812 282485522 220480669 291108699 993939826 112506380 815843471 466250965 397163498 634555759 996570130 716932695 192766742 959380454 960346086 655005698 870400583 94312004 38581039 914364062 52428212 764202628 528442999 379131544 363231617 850109642 984293046 514204425 190002359 212935779 813902410 608201391 216085063 411103420 784961014 915096819 7054856 26290808 860941803 962196193 673379262 607747668 793403064 100582453 541706768 562444353 265799264 803997769 837227411 719650893 902928198 93994278 962164157 96192438 137139513 545093246 998341104 357526495 886063212 375378599 84713589 880368977 132902525 880053151 338427774 619466946 418377585 395027469 766492708 144261135 102927028 483350592 810708328 518297399 165489182 965543731 811224370 468713316 501990635 928034689 887689559 522585073 83985088 224704626 105318028 725439825 21258410 245697273 890850677 978214956 954952734 99550889 86282651 469817931 546429436 540981953 298268269 970459555 979393926 747410219 957118023 736334671 101455724 182854005 811116393 662813329 478854337 229293012 271047931 57556436 495721986 711732780 393071633 329969580 164240919 38450434 144844450 441012183 208454985 691780741 407347857 421583925 841965138 310504330 439445668 451108304 201137484 447731348 432041363 458111454 26409660 986887883 464714991 515543227 555684499 466320632 902075454 950756583 688832802 84606104 325885931 966441487 311595049 992526538 615103552 55206405 393562570 876213587 457377406 628575175 607707031 908317602 589898690 551326839 869600131 960598481 650781206 152819295 72740072 523531165 610711406 455339506 759003024 590403948 217872030 49688782 774224041 243065681 525246061 585523894 629331907 335555585 986544254 967904403 284033501 120834011 427542120 387612024 883077215 812013542 327321761 487384482 446749204 1327315 574377354 262943091 751652913 555568632 47812208 585645176 83003733 87517780 469329024 764559459 795103877 46961041 753243093 303428623 809455658 143305979 400474736 764493440 605482784 85983368 277778746 670900193 683541408 632646109 50690308 937926789 235346512 923648829 223172491 111710183 534425407 114134166 730397802 194327978 159370463 211506306 816576046 592356509 845840657 418250561 908960584 56037293 193776661 917748152 626278672 703130362 777742239 380409463 544602315 671644356 473797055 926642357 199931037 68160123 796926962 675969362 83628184 856267180 39860771 239851477 574628282 549047574 899080600 152543084 880460513 190216093 794076683 655487473 849049557 350587210 413401241 357630175 576642120 458459730 81763012 39098464 748416213 196589071 217915774 665596999 518343163 456000517 683159577 481189123 388065572 114912990 75928914 745792696 696999333 6873967 191676497 271350830 318270897 833339825 670086560 15597013 579702125 433999819 721007158 585051838 58229729 673426178 734730864 632168368 125949436 317860049 605736724 492238348 588703135 587242446 495841356 602886886 570735746 24179902 734924467 616188404 182059348 279254925 947192896 730590866 566712996 879525450 846064990 365080780 142871021 381838902 807499223 336703054 14467726 413503664 779697118 519087985 869720274 250994758 697448726 118256179 187470570 717660587 748991360 974063933 97909230 6965945 704637579 241933019 409679072 149618546 495042570 444485638 596388267 588175621 18137407 335754593 676866077 1394370 47799242 528704556 78482160 178071332 592832698 666188124 851794120 800630994 953080198 255841415 226162987 570211732 171201291 912149225 820408205 556398430 655484045 889519724 742330949 367779661 141543094 562460320 274967957 654984352 664433314 7654333 890660519 120688583 51736266 810406814 302534283 707755859 167283221 192762062 458210618 138573055 628076750 362168186 149145238 838366895 374723501 44374140 715186027 109943660 686590159 985100369 20534373 380191855 43370166 941408289 328487713 444779021 767058258 799919291 798320414 30882506 429762296 867177877 398697673 451872340 759306596 603154385 592773742 546931839 878414015 303667506 998715211 427522627 888053905 871632686 943573117 90532036 377351891 552054230 517483025 957383761 559078623 656497900 224245236 28425046 581499518 602708182 223707908 459509109 730013403 806404519 627183617 808414318 913612173 687480849 778493586 134837549 583371663 26526836 114107977 467976901 24977478 70793690 823467425 982257011 738750593 495671539 81000187 678155159 682077556 148719891 44242845 553972925 958671295 743416632 26511035 847041179 333077092 924529422 123585647 31227913 558237650 679695332 555008697 208896013 117833951 548712877 434242689 308687056 595002820 952779275 873720986 57803943 338188076 554775364 720995007 576620298 89090336 694660427 484805772 450455458 674995223 940446385 513439889 384081205 591854575 788496825 212487993 125119160 729006314 952079178 933029342 320976457 823445177 932254708 464743879 384750116 90181999 877467884 412585752 578497980 864491658 308737813 541482466 408295587 743276017 476083697 608333603 879174542 328811756 667593394 407224247 528501096 378265911 785237299 128996713 616374841 14410218 298986220 827406826 806835761 995599503 340697608 242032086 661380272 592226319 158546519 907451308 559742777 390435262 241048655 966230741 390960244 737743966 272933393 915106977 461883705 918246163 654473824 800433484 803984253 901470312 756684207 215563510 588896105 114802006 867637013 996611752 366481988 910202935 151475536 128618836 737897348 586188240 341557193 226921172 293666757 650742353 728578957 368149223 461794758 826765900 958498901 641230902 736614775 58096066 808723839 59951447 700916969 506444634 215574289 144886205 580877654 323656725 364461758 494747341 308022820 560691442 43146970 612683983 498027996 686642512 953570153 514779124 328412979 127353136 78161162 206581593 576238082 124422659 42143765 504891384 340589135 619361688 642696059 128041409 417925445 813610290 960843743 315907202 302208051 83930229 742011524 297356533 76105112 234341484 951318623 734117819 192248856 671092366 94038276 879556700 52232575 701019065 119013297 455917132 428424634 852659505 280758353 113439202 109778411 944906147 611336814 162437473 121097042 669489700 823433796 180978673 356514906 945813299 912183729 76221093 745948057 741340085 469723452 808107378 449522374 536722933 580817683 238058047 194238920 728757416 582362126 547127761 752471467 328408048 526718639 366267608 251989916 519648335 105461784 950268146 197998591 498089905 198192925 831252897 281367374 172348015 759762224 550617416 923614012 119621185 755795830 35746876 580389273 34745168 707556789 400444343 709345119 947128107 427609432 834770137 164109748 333193154 817439356 514641833 782448865 885506678 118663389 882029085 212661083 899924234 906940131 701365514 421972666 661691566 944520859 23042869 907523783 44910327 631029440 208761412 568759401 783362271 983713710 778734027 812613811 755857356 95958129 182882881 218701794 176024718 983201202 46332937 315111512 128609881 116810956 132482666 839755171 660262346 538719934 805610135 665573235 468962790 567017774 306990761 1466530 303554842 779785581 758991009 198878265 661407292 721010544 923227497 427753567 314390921 39924953 775794641 900399977 21100455 24445934 179764627 846347982 27692705 123682972 597409871 612405304 771992814 315460479 778463376 534987375 376554605 137601747 311085256 754973797 106193758 629229950 587478092 938120758 347563380 383124496 344195683 724772903 208868545 937674181 565044018 22777760 702534338 147841399 314592973 44462136 297674079 321455278 752532523 767567527 971100642 74137242 633508396 481878483 93092866 475993876 654037150 936712644 59904733 964520856 680220463 655867056 283477495 966072910 717232248 407792626 765126717 518927113 218659581 79436558 753103621 138904122 389773858 99310252 224150794 943724550 624229183 791339937 542322039 572393777 440996489 54191081 430609618 298620971 213737504 508684198 49560087 948632587 543469330 597912615 436767645 751932817 348260941 460707545 386136108 242284066 486603690 863687771 917717493 388715730 658536173 817364847 135089542 861373780 885558458 627850755 385898723 274029833 467278760 22252071 206307949 447622647 885939500 394156823 763902449 503739342 955082925 93604407 719115687 880435941 460305005 362156560 307948331 526367549 378747041 741619035 42135171 525739899 438121571 467866093 920146203 968850415 418011312 411562957 785667270 445310350 366864760 149432867 140527814 689014012 394956422 39240773 225327809 801479550 136800921 482346159 624990142 747660802 127149645 153714689 995250486 144514082 95004460 591890438 628206601 213234970 140175019 517541046 900494709 807975635 577598241 805396265 313597999 180415196 862590671 194950819 412821318 434644332 768302300 167212943 887887674 269318244 106834013 44544126 813603058 569993289 577295179 418682671 723108025 404526923 786068356 459060100 216645957 612141632 772060116 310598279 799220402 987333546 919743724 316891501 861942150 225218735 530563174 474642576 867324337 957562908 768874945 260479092 725997956 552030573 582158182 734229188 411433662 260280764 947363755 283092818 963274628 812667093 391876034 162232605 593662307 3220005 559475922 440886594 625763923 949415875 587869922 914346515 658812332 179267436 911551972 892541438 40205112 129679244 413035696 43666082 222440995 558106673 128235019 493799872 94146049 308105745 931499416 312295492 960575950 210056585 835329772 654437185 729901811 315845029 502518400 225777394 616561213 112207121 100108982 480115132 636403932 690187559 728830678 3296040 776925556 324343523 409116690 545687275 767606022 230130157 77449859 748078046 903614976 780720534 635937835 470370054 828956475 306121684 804181489 739699854 406218479 720534600 892038822 525631691 402244032 135826231 333430790 782226228 210164674 378377872 489957811 916530543 972605798 822723820 837282354 711532617 621706890 628797067 284088823 921278641 278844277 864155217 985552476 17174725 974025680 16095950 676816032 831022790 43860402 282356541 630644974 442924067 352346778 316984440 837189463 450728557 604877934 273646602 48561363 278735455 666733688 620996387 596218437 495149276 767500910 772260756 999989107 72161266 124842865 90104037 259224594 592212944 497557760 697650486 401875642 395074516 634861069 245109338 913809901 237197698 926105579 911191751 686630162 822207363 884514136 191173788 330514300 756478635 770477944 726787235 217781604 121005303 606702300 431234887 522760940 766160007 49902711 658941344 554275098 593283239 21486754 173202032 315686117 193413324 108194858 447188766 807480353 73765264 430162231 197545143 901848208 527479224 436086368 533099252 9623772 883607340 927575971 967348530 226056600 590550020 632297826 756903290 941687868 930673526 167840111 585812861 438524459 482202344 205908987 908579215 918611881 454384359 822647460 918752176 876521708 326597666 23776114 608759944 285348621 835329655 789967313 611472998 996964619 822569961 1535893 801824834 941391567 544110498 825469949 697521850 312714796 196579575 16138410 316333847 279789020 38579811 174213806 856525894 506215551 686770823 332937599 891423199 965825950 983783217 474803702 161092898 275456682 304492115 17574747 302765046 709956094 305707271 711498841 573965291 862611930 670665874 343385609 262632244 125765478 414323552 471766756 518113206 972559287 94059013 431357905 668656629 654593219 780436025 757390623 675169314 773080683 971675614 893248385 14401810 723793274 373538820 474772757 196310342 819518624 376174557 459351136 881014247 485490040 14411714 552704848 477975486 836158337 545657400 232334905 636735560 311498535 294616298 725531355 361701540 106384055 220831660 345207638 818210455 899856239 481496441 177711933 700820368 889609324 627823985 296049794 836230568 631155132 356968930 87358595 919739036 645918028 570704194 719849733 860324569 747472375 881501481 86122292 573050982 765701247 488697688 874519208 822546433 918898315 705641151 843485278 538349060 924578223 535981678 933510587 684433274 505000032 423503011 921839496 565214992 467611396 190116799 143080705 923435041 566737636 834066765 969702079 335251367 206789422 310554882 126066631 952521037 825592317 855181241 468387465 123168864 737539922 728146034 605702105 729989849 43639318 945171806 336059378 35163734 842551580 260859595 521041276 405742368 762777114 986361912 996471941 152594213 571736756 857590086 430777726 413800187 582497651 578258113 820970056 90773218 856711878 259144605 63247657 635283395 849369610 249029618 347439051 207845933 901826172 41850889 671058500 99756884 181290056 999449414 258850836 965068314 822376832 350304066 428607773 433419273 633749787 296288953 535372461 471610443 526781947 392024712 981751418 971809463 497888744 12448447 385757602 837830353 975586454 41835408 103112617 964001468 720468636 161454679 701248380 868811338 930676860 145659031 866914416 307494387 363680160 200231674 380212549 791047635 486360922 317576789 129895709 344084147 315183072 429863586 781548677 227747586 369158487 234701828 733431924 312930262 510177477 987195337 263445322 69562867 106927388 644233569 315848647 522561208 526442038 90432359 863682074 51821885 43894741 646871200 358806746 485556533 562853025 424462073 281677826 132530685 429448490 162964097 597219322 723585440 983781612 408974967 287227532 674139084 523419464 804802108 184608238 718861529 187711623 553742938 521737152 58155717 580295896 1522059 45508613 453345849 566384470 102564769 503937576 662956417 506244866 582494372 777590275 366358423 746092487 882986432 544863441 129455899 473498482 786521161 231181879 881832785 974718144 735375542 63853888 172824875 274816082 600210860 764526951 873355837 962744750 703030521 706087812 432530890 30417994 818876559 745661662 720445880 80112764 261924231 553877029 891257750 577880496 661020453 523765355 852469660 241598867 368423892 661749293 218527144 8926384 712703530 15394385 834328131 245972442 917434849 631435044 697881497 64997617 90989784 619977311 443744388 762840767 390898722 32899351 256483202 569501684 900475628 392040665 177936828 958383147 734959509 995543182 124321792 564063458 392738460 994365070 60925380 781465221 885102515 344211095 168554026 749424484 158436007 954730185 526480119 66841274 863987828 771411638 195721627 994694055 962661953 16737361 140042799 104796212 85178452 280569592 96890990 125247572 598127911 348318833 273280707 889049309 490474575 708040169 9729850 865539218 421891472 729389299 94277265 519665438 9634778 2259086 605423391 232385040 438057020 53187105 288465390 340684769 59150066 503699575 888154032 721401077 670146144 277327045 525434299 834498704 811098130 851021224 961146635 154011627 743154616 492208681 597084491 88367895 775436338 17940656 503192520 262252059 465069182 976454678 354264701 344390622 34234572 641379991 408416004 286184752 913895788 279699159 226474408 734515151 128235484 279752421 192491606 488732502 360467389 941190967 104614313 993665620 508227546 299773862 635614683 700417847 82079017 26124415 644628439 808132953 844192193 603406182 318959147 515276792 543948776 807102583 701842956 714042693 832874251 76553516 344519263 937660744 937811641 104919917 537754788 492261635 983332784 629991042 823653904 934614353 775266515 947806758 376520312 247278588 146413100 210691445 302487900 237050555 40690160 966031857 676273892 544211487 815104379 655617163 306686685 443733678 425018445 113490071 722652606 92200400 333326611 494844112 424692648 711576280 624914590 470934111 323085669 354363900 796275950 917561806 316260188 524677473 124421666 247022101 220037293 320055820 763034505 363303312 359726099 665940210 439017621 33451268 259958516 427073516 207847900 563860127 693628515 667324088 1174056 583105268 414604820 702272517 381196644 749870595 448689511 457643612 704726431 444645424 573096037 129677629 746205719 954752841 156858045 605710854 171439662 749050242 778021570 426011909 258365553 288751739 906244729 709913698 524755344 131369525 189730951 126941504 222160746 424645664 310872891 146670747 719392259 615005200 456363403 402655325 154723968 226896709 931056152 48004697 831496250 378520416 696315945 266492740 202535338 676299123 524162220 150590916 832579445 310616815 232870715 873636192 352377698 756800179 242166547 279843722 879268713 377835524 970119197 197005979 383595685 507762576 684901349 947828947 307002452 135750253 633720485 412147036 528370918 904091925 365781051 847528267 908691694 935765102 729665838 994172563 372208680 597905096 691530672 303140632 853416052 175473881 840290455 396036517 870619359 351981754 655621729 430945511 729416348 371877106 64277556 837869693 713816583 837698415 14317282 300258786 716991906 775964293 105953249 342998916 425247513 270961650 192345168 708651442 350225471 77224924 615223288 292187046 403100176 517901262 778366534 460821634 600770990 40999872 6476116 564197967 251790183 530341134 570173662 26499835 866494889 786904958 966164302 390506339 945196565 956167228 581091505 313134665 82348651 375619804 175987649 118249296 663067540 557426783 731646169 222643728 420896939 158863912 859941637 785605376 309670883 965490948 421954289 20550787 975497636 9082409 448409076 729036767 232522614 464943155 625080080 964397124 55702288 85858856 860879338 309812688 541371213 985010807 369677779 63443587 543874860 548687861 853228736 25862980 916709085 452183770 548289107 16060134 500631214 100659155 363187408 481807651 618101280 443252454 799109162 182994331 437620435 40808079 453919990 205700821 674643347 405113511 169519475 133434182 533854034 426148211 358191753 38393927 772018735 290197667 914199239 70048023 414525032 21491784 696026980 633052639 261671788 232368101 91811649 479235250 154673359 310235994 345819106 934450315 381438281 734680569 857821816 975895110 396350397 868181363 992896219 632601523 40846907 808495846 604061835 807677053 352569072 763775451 809976747 701717824 582782780 901450042 219175439 444161663 525738657 526969437 864139818 920871328 379771337 442750460 55962144 802414069 856981896 763158850 198812852 582162872 974471130 398860472 478725721 338539274 936976099 941107540 292781602 937568503 243045354 713230198 365413587 462939755 803683431 617571296 413757390 678513986 220823283 819517120 729338408 702062399 752754771 240668335 900595093 680901895 201125487 723788706 228145523 567791407 310820189 338757126 382215114 514498348 789191255 244940710 677503051 898049639 951444160 736239287 464403277 537213217 985487143 968538837 118145230 370329998 742235192 176330757 132126582 189248714 674472917 944396214 546833300 936656340 340743678 56721854 503980062 808630421 559077857 520950104 732984246 904021727 151949004 427085866 202353058 517169000 759420735 97054530 224619217 512727 692293594 443637271 945803993 572443827 933681261 705433473 308282621 835731050 443031780 368559817 895704863 683642457 19502690 251825819 131674323 668467393 819985956 445072908 690244173 789626568 142833306 136047005 878751598 176787333 239091796 595251246 611371196 877160683 856202001 142263311 140302441 107332831 656202414 48433141 226597705 336786984 669426237 31593468 744899036 371231610 842294508 562558634 423146315 671391343 676783896 732669935 950099042 978924675 393494342 433989147 587850908 502398499 303012129 401295087 370806551 753443744 898860153 998551694 955202969 771756594 573262413 392979081 492022163 409381117 417207229 535122129 175197467 523065862 358403350 38667973 754804206 152753475 346024140 417135147 780822136 199175560 129455226 779406382 196112582 981412764 508404706 60233831 894279566 587081508 974159345 453138384 571105074 945759666 683524024 900960206 153046712 223394755 811381107 93034801 490566350 290514352 959479175 50566445 239513807 782502091 214687100 986785372 614393269 716025921 839323913 228862410 965717801 440021546 183597318 583778270 265997949 282396813 256535672 681193329 195721636 605018700 569789835 398507710 828239426 453987900 576773265 328512109 585155226 615221271 163783429 472680584 257393823 593148797 360800394 838040455 136046308 80734967 898978285 674606404 693172653 691724023 26572831 973824519 127353820 292052693 990911293 926435196 12555268 415083475 357970314 234015674 992428893 308920859 944061552 984979005 527841475 827237309 832828292 822996200 91204543 67176371 761343872 695499532 549810049 111904990 426951496 448435807 961091036 175582984 243436774 101063672 914847831 388738528 60809361 625635170 404979986 656314883 799911839 222646155 890887136 578943982 225978260 258527682 75649335 864824590 768301344 219717320 144224054 270294706 510926610 350526917 339564198 664111892 7209830 271390528 600622068 156542551 801203777 806861365 88940088 274674559 329340140 426587389 963226674 94260610 701910235 47440476 442957131 818268729 752309419 350217348 388607117 323772258 184693531 804434953 417407922 418725803 413112346 487089893 47650332 672843169 754624955 416211838 974521807 479938750 83354422 783563685 1207931 739206245 182616052 93348746 382505079 672877790 892229242 357334223 672779203 64991834 49640833 997513590 78208260 781080053 851461857 808796911 405721228 499203245 282752154 977896205 424812883 528533098 123055071 659903244 729819125 445522691 407626237 696100502 76818874 534609709 673149810 911658677 990400917 595627915 165279456 677784799 983062806 208973730 899123221 180840943 862752133 216206056 136887553 103485230 654642882 471142838 917537473 185929031 202468446 439214668 960199319 196411214 520074389 203144148 689646831 7020997 429139777 571124060 520265306 959045005 980375784 70438626 19578009 240967925 400823745 52685381 574105992 912013489 620294810 624688206 444183609 384349406 439405560 714057134 476813789 178587650 980855552 110533632 219091146 516428812 809328260 950809282 384896907 875213137 164965368 134328930 296430537 121719178 514111103 769374510 97003346 387112163 481543130 18564702 266977577 632355554 174956415 309039383 486067821 15679360 90496385 470594401 767008105 591044124 459085726 884561194 574751888 893386360 973275205 700045134 806392193 147338691 935697277 39362192 6726138 302217104 361274367 552924311 941805 833203937 982954031 287809268 614964068 681213205 788381455 372913186 189642147 582251263 512427855 333705857 554822665 455251408 919441992 724579673 384516131 594467880 660728056 705600988 464196001 763299083 386680072 805605924 782024033 40063719 999957447 586653749 453803623 64977550 235074857 173281522 10931419 462804546 554416849 506748722 76939539 409867433 537105667 720811691 222917769 244881352 355957682 475417854 752667873 662935071 257572211 567855286 632899815 598145411 250531973 55445573 460940683 951107645 76520398 927722242 517607658 853473785 17064418 746604590 268678475 397192396 165389301 199203828 826795026 554383924 246973669 331267687 532938971 753855513 592508989 664265338 972768345 508726722 499483943 261781780 665927027 864038123 245498239 945296380 769383477 799882410 952983235 36935909 617733326 952865421 795710744 879957605 911463584 935389560 589451857 542855424 74795818 151293129 372358370 136726559 875408663 713553716 611222252 435196176 393516860 405753831 716719415 670260241 977512851 482158955 412754992 689839425 745498174 816970932 778408687 739466664 512049292 979077154 653936179 213066811 688408047 711945850 691048804 778435278 884620544 656969193 175446419 464572198 378083973 309755138 32967283 341787629 23459941 215455173 287994215 92392880 49850553 35302549 256031860 523052014 813350582 438230849 729396554 293697027 572114374 449580030 790233664 380047419 323591281 622752361 994256215 192382151 801571177 863871110 931301685 758967999 221499530 903750599 657168934 726263077 290213849 894423034 378696486 453068259 453530238 385707104 620692178 483123400 747764174 348608161 950369909 734277776 771745351 998700998 33226999 344709085 778166920 98704710 149719028 660249141 58707550 833441277 273224364 766028041 127374269 231187250 168360708 636948149 525076927 781826962 202783885 809356664 585370535 88843824 404195196 448257663 935179233 247350669 533974451 472881366 416914176 821984397 161850806 476725371 501545665 241855864 85114807 710886732 932139269 969654029 812923020 496870930 970343639 33103712 338653365 420845442 779270507 467195132 988471128 765182771 805396764 345110476 411397446 83882660 554292848 168680487 901667317 508047425 901097231 120830407 167180421 169163867 145910989 132943573 244055738 410535979 656242853 534595803 579167753 385806547 490556347 91340240 440892551 392999001 496902747 2679570 414977008 727707827 621492981 740970596 453840046 474750645 796597543 903492855 256647377 952922405 603665076 432125531 181595406 121485227 868820102 674091920 869619656 242025430 521873330 53705725 178534914 970686499 897954933 242242156 879959150 727958255 182862125 138506772 462668898 210116484 846373223 965944210 769195229 534926617 39143640 804098540 713534342 290450366 696054875 771197325 12567982 290520445 355415795 381599052 197504845 301020474 306886347 948578665 177785343 68662729 374022709 131699843 65820172 642421471 601924269 68330155 968862052 10741793 812738519 6922327 30726816 292151833 155327615 967712096 730883069 173707061 458235798 280690705 283879010 331606224 289488697 903664149 364998753 856382506 350663594 753578367 364329261 677582192 376239191 701903308 168256424 715318448 314195151 913572583 861346136 176432867 615242193 924084248 699794799 820595947 913230397 663960343 404554689 115846291 213755424 149611775 659747278 806434697 555087278 967328597 219163584 359697511 180624450 317177609 368462691 565968304 957983582 841001325 585533230 583957196 66631087 892998979 514476866 332263183 920627205 664853418 827298921 157753004 445839967 800906036 518371595 397887434 697807582 165759188 627695685 135517042 671376590 687210728 391651029 818912915 304807330 512058422 865370656 629281029 108219895 252421355 387981625 823849101 124667532 142269339 870520274 663600081 87768912 625888325 783305552 493312354 897641046 485509453 546935225 928360638 213133017 208695935 105737915 183895363 256335417 485826066 489212074 352084280 544328455 225458595 309837194 98765354 141600753 205739833 327355907 393000232 993731796 297631804 395491936 64047933 417545141 824355977 50218906 380027130 86171580 852980566 207372371 474203694 230191680 607494733 347192268 37694868 360669114 146869879 317641466 943554511 325029583 483995471 203738994 940575845 271736134 785685933 28949109 176346825 88595224 229887190 372319720 474109778 817263965 232466300 770954586 103598151 374454614 241029811 798530820 527097547 105161589 40694 104257732 689755632 202846791 61963051 964431650 333967282 281060232 34086815 908720719 590837746 203141406 784122121 609170207 165954936 201311253 613238146 306585616 808448246 196543387 965650325 60906062 511162372 839077905 557322028 71213734 611468324 253377524 535781021 815221905 740532673 293128439 569183141 978460970 191277865 155431655 877401190 255372348 804540311 971391169 999839860 910880053 461242413 612403624 182343616 218500653 893133042 547393515 852152744 269054688 296021977 62627321 47610865 136942009 970724797 721687405 110020552 418916038 944488795 464362508 172094660 605123775 373960796 443973315 323649505 98473475 568022104 721042080 503707778 21615510 489495490 79379941 142908793 490133037 329092348 814673135 246375416 898992925 961952082 684629836 371704988 39392609 452571124 622873776 157256300 908933799 163993851 813746677 685504980 180103736 303852646 679636511 824700331 4812816 603383585 702359897 101684781 252833740 869721084 911301623 553833981 73403316 609447603 857034609 963656492 612413368 718300900 870279022 932881453 981259374 325408537 726076601 476349151 546139668 1231813 727310915 798378375 891978132 985014334 951570473 391314895 597155197 113662408 246214828 228645328 581872388 674122379 47806778 740105478 664076042 100986520 126303588 615952215 84269847 500201194 175800296 21383692 588881494 240247394 886445481 877007075 950479011 468937414 870218415 936234224 190523261 457529291 133340974 162849727 787787015 629934089 901803140 67213368 624271636 695950337 352364595 673416627 969652250 362010396 628149478 959591150 724584506 463535276 587556206 255419148 301086777 600746729 602845643 557657756 606168198 45245431 724869148 208932501 174652986 574511835 396048303 819774801 865228821 908818057 682882039 671926164 96472955 236693211 304531341 541245839 488115068 156931985 903619892 10794964 845302226 983230291 111965405 106258020 802975197 898789045 239470740 97191842 932296606 237286703 805186968 584821085 99611848 858807840 160651084 504755654 575620533 470847444 638297658 135189631 830690913 483959932 813372697 384643465 256242035 302667570 75901887 840259156 767316281 47850742 848913456 76674231 316983983 203194289 195879837 758552554 137843825 52589877 632423250 207730071 487056839 42385464 264998350 36877001 722806174 563895137 140644789 832003829 847832976 759225398 377518801 121339643 395214044 135776808 114853141 960348188 956930923 412961680 800463771 802686217 511146696 805014707 984289192 573273300 43497261 58432180 654492070 908129278 24974455 26020523 42388525 667930984 662142257 607327883 515029745 168647525 920907655 907568185 639889370 720717476 458981969 332543100 761975280 720560453 130801166 490668041 273010794 4717006 586985959 320289399 892426658 802797099 667601576 814681412 332373528 188456626 106872269 34831583 527106940 187692321 270895728 421460374 775230369 243354523 232747101 991647394 422763388 128775087 760365313 823801638 273670712 759732560 428582003 310104875 667598364 637178847 932326513 807919777 775117212 431189790 360218469 412944482 261613651 822638141 606112092 72127791 653514245 235699406 544186639 607157937 710281116 320346064 529832669 611925112 847918639 558255787 89130444 617731331 97106933 895475239 983708813 238665389 329923920 16993661 280396918 688340160 922376144 154133319 835349126 814259310 772620585 670534285 520537189 663013844 602136622 403466684 191915362 284811503 855377900 749307304 771815796 422736040 892382857 658973329 8547388 857650642 689947222 726646553 56003071 647794214 431984853 972168012 357797549 712825159 854624676 785579429 878261980 756187578 243306896 17646588 192777423 738479604 646377359 740592795 978185065 156725580 488615351 360964394 338892602 714322693 796662348 848996291 515264892 25977158 55760061 324936670 201305869 265670690 75835546 455799653 760466803 858282131 62120608 762534818 757847519 789344120 612776371 444207183 690047013 822015645 372184540 616597122 665639369 327988143 401939791 75020231 687428335 440677195 215623526 486274822 317148006 276532721 463485352 786910616 732975527 72186635 33135293 195798587 265993681 917563881 857559929 475465745 942807209 909279429 567977943 434855847 818179234 444263873 92461050 454542837 823548625 93299173 383453488 785851223 986669045 784902688 453820651 304707728 750098295 433897553 62613954 119624147 22311010 746296884 443484798 683991470 388264050 396766327 669349126 107287588 429470471 47177126 285144945 533811097 980644898 87245630 41678584 179575256 133736313 302738591 169352958 859841818 449234270 261947410 567822353 315246841 553061845 899204553 187712222 34068347 643537281 101912796 604920136 111681037 764595890 826589774 45855055 932833413 701853283 593898505 596788252 169743391 872279855 148171737 230500612 386442881 262105695 432829564 939117699 531905723 982248675 853394580 877560637 653160509 669203023 13078951 872673530 525742056 630252519 638033704 269295536 85865728 935163278 671307119 27770488 768966196 609519317 402297022 30631577 688793750 672526324 106836544 556797051 677509286 104765130 813096706 846663858 80670024 141125596 58477826 990556921 19258056 725821277 343002655 624911157 236833246 525964323 631438114 303308911 193602216 342685354 787436220 793381338 504683431 480289821 2177160 936846292 93610187 823171915 800382983 771254495 679901800 922605480 800563614 476717221 649548348 761400919 981640101 623816954 255177836 187991327 181620047 339288281 434756743 641551212 348450754 113535335 847923328 122683224 189595396 734260972 839999925 538942112 460318985 254069217 482066410 876368302 601735336 94411737 588057680 267162770 552276642 33829534 838673528 317134846 776698021 932004632 325757792 988959319 366624315 736992349 435452016 456181921 52412898 312409253 63441013 335166860 785008122 738033748 790516383 644896881 405648332 42065655 795907472 334170187 511900811 184407103 832433230 100112069 990739023 217821451 147137346 1784620 786594071 998986329 962277702 558074744 308015567 570069590 368935061 477950282 525400905 901133657 622663634 932979430 211096378 40967385 617130255 900369982 276453192 322292858 241110717 366280683 948913661 903635722 478759101 322011174 453832642 313332091 864877903 933387227 261839355 644235236 30584871 429673880 799604705 922760332 272935251 234637972 306554272 963145440 391218263 921315758 34561357 330710641 138976531 615278192 892080602 560347640 20433625 242983940 563127343 498337374 758421337 143694918 240388624 941084072 69253556 138117300 710867763 249631758 281197935 398492021 739471404 53810409 126901623 612427351 7762307 234653629 840976671 488899539 632938138 725730101 494702374 598415367 600495814 444149795 15474867 40648634 431045184 929973380 675227729 450291036 712394538 265402491 231250165 820965894 796719756 670727506 578021116 393682037 146892120 976647805 666869551 435332112 329095014 140441752 74733493 870754793 880034937 72874598 902994729 593690034 616934200 313227731 740640133 410717393 125649976 903902447 799193905 854552393 851907822 962792184 336157174 144419528 137717949 306408784 297024525 864637865 190332399 745551492 629992723 756588520 599105204 756157767 599070987 727451695 532923431 596163443 275445090 883837133 118506822 890105610 904962545 159938230 328499711 801627451 225765874 255789196 38116895 849319766 971173644 260065688 501107297 426317273 105752139 872769220 327638887 507870562 790111012 738515373 755263160 114209218 225555575 137111950 364886470 993092842 859259783 135187536 451476205 442351606 9360638 567876995 210769003 618728491 480848889 333737821 814803306 784673775 375527150 896056765 609178365 178080215 731514055 633296171 415538970 902893472 639541198 441197524 644933030 57337647 550218427 867252884 406584167 907647882 421255594 627475431 596158224 810694634 709014817 87533813 582049339 523607718 402261771 75153549 211618919 408259650 66357183 532134437 534303742 295137900 819451128 140875487 639622480 748938483 328825056 967081086 158682522 158557399 811556608 692534903 146854908 422458167 121108816 554404575 744250493 543880799 451929386 658313586 105939217 13761730 12235353 91498651 995350158 339404801 964631554 183829095 726604729 358534615 837489602 785148302 762477110 901170997 22139027 934322803 112035229 651989803 45351897 773839895 244889698 144895989 170731617 672839468 123084521 76631542 957902691 112945418 585088635 275220573 962177402 87971503 433982535 103997942 984313263 33590723 856456809 525920388 629567594 307279765 829292254 647007588 611721861 965979676 945442454 427505351 941374008 967535352 763526239 944113915 666243119 268950129 148468719 397145471 23383665 679272562 56677100 540448754 377074548 163260312 755994588 3305253 246874906 388207134 631353651 615047685 371571621 921497327 212475977 441536179 818695872 522038420 618793567 504182638 619635845 215259213 766151580 492886436 337653870 69000433 238464022 625778407 53372514 746042893 476687554 945671665 11354028 533919948 372004997 138358696 383818757 896219913 774778150 428541975 535097478 395727424 186250326 354140526 999479480 294912157 320695470 705910538 612638599 838334952 696842419 30263920 126809156 343322782 768262089 457570379 812238259 114254045 253261636 438860141 957507828 57739627 779675485 206362065 515065497 3456185 305329205 617105305 549742485 939128797 364963030 934238226 578319938 305971095 820631088 801278640 655616875 885872973 629048861 695987215 445139256 127735822 304094303 448097518 100893763 440356243 272584093 416010557 378778247 616242491 686734441 643378444 768989287 11148556 632160830 469103000 690816437 32914615 281839741 273295428 253309600 179497106 125468013 181190042 254916300 404443804 564890944 988130383 506222139 110042494 382666000 404755004 986094683 673856902 826440673 692638055 896770303 812252586 970827158 962360571 727659879 107463308 996170244 273583689 111752502 561165680 404208613 579063756 953404284 376234312 687698393 842970666 555408301 70292907 176187241 98367276 349391012 2374103 363457543 558567623 446461866 799348660 384417291 617569300 302985067 341362384 72014264 343316059 465359610 398837093 419931191 700792833 510197974 266921806 517682326 866488732 734712294 913397527 83523282 376972011 504825461 868306669 438111436 238423498 151471927 595306406 46704461 725588809 145715789 165923267 589658373 746975387 31597624 399804523 641515404 551878680 533910760 303534188 259871334 612406857 804680885 269532992 818695165 433117395 393871700 604770820 91387550 636617100 392334067 668373121 255294342 128226163 155548954 315844642 446873558 348278181 705313729 972417283 282709398 532189809 876948546 82994914 363881145 767514183 585009253 126264357 857586709 372196550 172539222 223321308 652835437 58364846 310255789 873767870 582561131 40002030 873188194 149075756 903492255 235547801 99655902 194714154 134494339 54436325 163865582 560321387 703922038 582387256 472522695 159804483 15024839 530831648 919667974 522197427 55503267 146142799 928404145 479930722 696671779 81112222 36728115 310521502 899892809 483814163 887516515 943692129 245885181 956914134 208313725 279310150 998765843 527761213 862229545 231614105 95607875 441962178 917343600 458330439 389042222 335036937 603284940 880675302 834495839 297920989 421336344 940218550 872186946 226485041 631433112 922517153 366562358 731763744 155457277 224432691 546406522 799513327 220869462 586691748 450686777 255410950 642990119 863237332 884630654 347171325 329157456 955609673 966139210 902319243 280772130 564585013 655073405 567232914 215896145 605817963 32291803 154584355 976214777 850409580 510664474 822426991 10372513 934600802 313955536 382113740 408726836 647779354 387675011 721388487 36733707 687663114 749503640 310113794 55730143 940662866 664583522 773415254 24364761 769841596 194477592 143841213 100760194 141516980 983860960 880928600 462474197 262894163 205435582 668567924 871899432 499006295 560213645 214502277 200883526 488827686 436001907 525568036 982448221 41395410 129776611 775203353 231012092 501082131 830362527 48704329 216897831 452376135 399151674 761855946 231070526 570896242 34950959 879260377 379836176 393934150 9513435 542389718 917020884 575717405 954485385 275403601 847464486 365380595 825582444 593381366 232896781 208568684 156286362 674349990 808272114 819248351 850694680 972504165 204432300 443143486 871292109 280248664 427853435 170049323 951878538 16718808 829831939 300957675 796144392 778477152 213087823 337913965 862304236 192784273 934595540 974502985 211553211 409407285 327060594 647229118 618081767 625103170 704469358 193063350 545998024 23327956 30529911 979605182 944698020 536891690 558864284 764282893 7540385 435712181 531887199 137743233 920013264 641295362 835327653 991365540 613763115 416191699 153294009 774251173 924764050 456343812 461492563 725151064 958187730 126970278 138893967 11222080 368935576 993093096 218533104 532801666 609906302 210246186 134525033 643694830 650630662 89447661 282918219 952339196 793654172 552495579 850725200 801876426 508848013 442233542 424546983 26444064 69852435 604612783 964682963 128112751 533195601 878137010 759291345 809370568 901080655 663573280 590931193 579522803 80018942 247817834 745214994 455242321 889011515 419743788 982320714 485029362 597390017 523862568 17108276 102577806 230505020 418989898 284954066 561184902 263224641 969605797 711569285 336803041 216945218 259748981 350815004 254666827 616274343 152291612 458167754 905106460 211037877 880221223 716548144 966985049 378608796 14053191 577992017 483468705 453947261 496411481 703922584 957417033 661828944 264164702 961052640 752006469 428326148 298790277 22455907 267592757 64501609 380120606 607934403 873162082 245483575 166158502 806869522 634576058 273933585 140221120 320107973 134108884 979652735 71741751 882929846 791329777 193157362 312981756 56987951 229081332 698663364 346171439 252473048 317230705 295200822 197087503 689407945 201196956 954312819 892369162 618632063 737007958 627077256 447951794 216595424 880104742 109064051 633245123 377653817 132312124 857043986 248589855 72299581 745886829 108020272 838348496 785434892 768469307 898495869 849913868 845702698 170027211 46392467 709796657 512692357 18352363 309646325 530896315 765608305 576671766 464645894 893471323 102853036 239029866 509181726 57048545 381639771 8039084 522358901 777640009 120025613 852998992 266126122 528880054 252573108 171676008 581416008 477848949 735420847 781605303 260968126 104063736 522641604 875533219 228713576 535051995 518310174 594623545 345343751 39292385 630102358 131637555 391629634 921548276 300928870 967693808 48704429 264417065 383853492 358880886 624637886 551286456 132036622 206238838 762557144 323829769 108183208 530648646 10322246 67202980 966145313 150396903 715301687 79675454 169581436 804136445 634792901 498929072 590632744 637811929 908280304 848824320 524741627 960683890 647130532 236046937 450153264 391360616 822327984 440492043 17999469 328654082 348591053 95237013 402557631 346864688 435102111 526668183 84524445 902914439 114214827 81914335 130586595 55897161 459484519 221955167 891784404 516567128 809480489 861268018 345091872 96152395 903679793 132021405 950751199 220063573 629402285 579353097 442208135 573718101 383060138 311330057 240179970 890282704 584294178 654146395 562911390 217678074 151825914 478837982 523842318 676949418 763033078 950032034 765238385 11565916 779837898 470695897 467754315 145054009 122238224 906539228 41581960 744606737 657823560 845716016 340946303 402199897 685165275 313195905 568987886 825282097 958952475 741367969 795885561 678437986 227457086 2371210 527389741 669627224 447853164 839366243 22281600 41629998 970448041 711593074 270298446 718472611 516794598 685691182 439184222 96725786 287212032 117152306 757053149 323736487 380950196 455190337 119688030 944944126 897398449 208251717 633836514 450413697 171318657 945209683 685363149 702596661 83954083 88215461 710416873 406015946 484192629 480461471 550713198 901620887 784702016 81217994 2561786 736379292 411060025 720560862 638970256 152014977 327746167 134644403 430336929 757790864 65559545 360962122 695674366 117105609 738451117 582673877 889291495 221963717 270048094 128791969 221931262 310145738 57002954 490156331 621526613 159921357 870107027 119775766 379741533 884915811 72768833 307623726 584334324 977967049 949329731 767711592 273359459 547998695 790943987 694993117 563183699 546638671 362390419 592805329 389341147 256807733 966288718 522850220 66980472 447977081 697293874 541502982 758557710 220015267 312905019 450954138 280821229 529948899 787981641 144586568 701862344 43092239 842347044 18073374 188245694 819223206 648073089 171840333 788613715 807442384 581402102 536465203 182860660 860339293 499812868 958137934 678712183 479274179 307730710 858014032 4715800 914529568 809054332 849762569 835665791 317077055 927378546 72668532 443934517 160662667 727090452 692400821 56026419 809763102 424035185 425576983 765709783 416811191 902263415 26179340 233330145 852266685 572898815 508773424 726071171 693965887 926597069 304888904 44572496 563246322 955794053 323761982 439282503 245005883 938417343 807426855 877585867 384165916 540930031 423071033 696916141 953141831 697955704 607691484 799167004 483573008 823451042 894056091 351938492 935949435 906410658 264397607 586735502 460802346 95327630 519201883 511034112 11265394 372010856 939246143 66575336 627756103 181515803 377884153 930006404 292165703 770341237 746860253 960422265 386996923 68452402 948807016 342544593 496695443 978164464 73272383 202925829 993843045 744625980 627912489 342604017 837655152 515341958 98064923 248423384 744008093 474970407 109955120 710894189 757889145 900779358 80443053 940577729 910976828 962964054 770934779 194162256 144595911 931568930 943828655 957734146 697592478 899341755 902382722 475010597 273393650 614163968 213321563 493139563 414580381 100905149 253143105 461089778 698683161 195360415 678286953 848129346 950413456 80352067 687819310 984582215 588962257 911692329 676521494 740791636 25767508 995075515 793215945 409593898 392247096 247917129 727744795 269238507 666635331 449201933 255770886 364899110 155172581 247531302 617189552 925477582 409548596 580074659 559361122 594073925 796130546 822648175 142417554 475145803 483182215 105647718 688433369 812089104 838012412 512250955 990785786 761150249 99500047 810072258 406044128 478707090 993067805 332065122 641353376 747457971 98180138 584132258 976767349 814045270 160023530 749323490 502231233 948445363 697188273 613528943 931167760 558710117 888211585 447643509 597155606 338354035 547161599 903973137 638131372 805638984 315954555 606766146 456729560 474960316 257674477 577304050 47655106 634475786 295407090 262959861 438622658 894616025 82328789 486094081 212844110 892454964 508906368 341933495 567226381 616785044 595990672 501206432 319131592 258785490 160726080 510421808 913972852 15840054 300625786 970862017 316088362 562595183 941369546 223690896 63532336 786777485 374769005 442698184 725306609 41310481 916699195 751488893 790062332 108971998 679937216 269118115 656996882 332324674 93615659 526901280 586365202 604735732 937760336 102358971 580782091 250944017 756549810 27188516 791776556 643371035 357719926 709597432 989119445 628945410 459035759 301219765 513485189 883604765 108625934 519634116 861234409 952722468 206057590 1879930 559900370 644607552 315099246 28440079 572817217 82967551 831054950 66951841 600431701 589307987 813946228 759530043 393462104 852642717 60752985 784571854 745144257 46519455 358068857 881106741 390943784 511875974 289240805 104112177 545109842 313811178 740792659 147940200 884311339 410720966 982254373 916537712 614180293 334991746 139278945 991528382 140139096 177276137 161228980 191316918 522839631 13146928 749226618 79702433 713700399 886118902 771823535 966307246 993142447 787546942 258338554 892950264 47361958 391085176 505748140 491659906 290654490 80576887 720389050 735025202 285111350 955135353 837533381 655832027 916830799 633220642 983602964 809466422 107434972 334850179 915250070 308412899 679391108 879997453 237844962 717571180 779555089 138284959 805958968 239076165 99873399 56169087 743063934 417922244 78663375 903286617 347345991 603870506 952038748 750050627 294453189 592759202 519105167 812643512 583015896 955639100 266347765 927642272 324977930 669703667 841876043 61668169 239346059 993016743 415550581 445264742 615583278 647209760 682690685 803084053 108854644 865458451 884382104 129517277 146196103 942474516 129801248 294601383 304267827 638028969 105897115 815929546 192514032 763542073 861654192 475313927 844200158 496097301 623298101 298560382 586070725 293976953 988640802 738595775 492992784 797472641 795871646 411269055 778092507 915216954 27820788 261959387 990261989 834072982 67228310 942329049 991822993 304864365 396971039 782945509 810848498 275446142 58062162 955585171 347315391 512509046 990631708 509694691 118277207 778957028 477874830 965526842 522654398 242981187 531251172 253752421 415168680 568480242 10313605 789875606 262861162 652948027 96845047 537373038 454296068 429909841 874882031 774093554 914478623 734984010 896435527 260305550 99623173 579762730 552648197 655852824 797534384 13781211 340973139 496331983 915263169 594865194 155425410 217002068 793835900 344557012 712090642 112107958 992361172 919651193 394242725 676520813 656009054 849862562 196755202 652046674 75726680 994456768 743535137 822254509 82372012 883026991 418800665 497232427 546295529 310105900 244026161 969601247 659789893 596524517 828002517 358265672 678860446 844362854 734777491 103793996 28827516 327973803 602221866 774388280 322322450 817657494 155323262 82716097 745671219 482360047 623701913 341915394 129328478 88091240 483305389 767613316 524749246 326622618 262133014 303384115 493710625 283685636 85332824 119546466 831290874 838253076 771716383 739851984 677192813 52484120 504397628 937564836 376086336 641981770 51143596 940515944 734247651 384400330 593588882 260844819 926666347 281989795 253147449 146895618 565588121 127577286 35387669 597929210 157107411 670917643 594175679 752220457 995725352 796517941 51730171 267759141 562942547 140500460 410114996 646795750 560915630 408786881 789451520 498889432 582136134 879099695 507892762 415185606 202414021 222836116 286600800 114550245 296641157 542824766 491882085 213329872 322048898 740377179 591956180 946138766 718692200 607368707 573555601 611793295 71447684 684409658 969106071 218007205 689551823 433145832 544200983 393819404 676954085 224712161 499228257 104608365 400001549 212840410 319376624 522972114 114420539 170943607 22083434 756741301 449715968 426266430 488237467 713479660 177275553 431387044 604600178 348122306 616604674 231969795 604432909 999707619 69167794 547862167 387076782 933091426 233059565 830538381 280268737 984372928 176496779 132395767 863822299 951453665 227838488 853011915 912451250 755760142 797531586 495882477 920705071 327920643 662120032 813607718 44939098 840777177 141764721 917047591 206724968 455281173 343892255 82956423 497759410 793710759 761816372 520482506 856916926 950639585 87113261 75501144 335365687 420166531 86487333 461574531 130413551 568479153 846980581 365451141 883145694 253242361 265828316 498217341 969811246 53746766 905757473 307451764 508745255 335997456 564081524 462467423 449171259 442047237 833136956 872111123 975437829 546975830 418322056 2481235 4632138 810063772 824269327 174367177 289063159 898886101 618575409 629430278 262560029 89270881 320891893 151425922 235980022 393996816 505192968 26650785 876845286 485477915 514436036 124326057 884256890 383981337 150868522 775342285 812994405 666802196 605186268 50024740 659510913 697733494 721325870 542675379 779650257 705463318 904222996 682202464 150127234 794113587 302985775 676276990 153222628 803793519 633797318 231661128 175828598 424840920 153295561 171738330 651283419 245997541 877745869 568544066 301440730 871334768 931389712 4428272 806947434 810914240 982036096 198751805 399464102 574933637 758085543 749730152 968085459 26173904 161323453 257388958 337154903 744588576 13933472 446296814 166164169 809652827 348275931 405166163 405364962 91960012 321173144 511261357 350488713 480253484 275106997 262582212 781751236 200924052 538749100 640373581 758658253 818055309 896911525 396114396 290653433 208974850 797484657 903027190 290799052 996732745 129408134 976973573 465165302 521424156 344852228 221755991 899744838 56235175 425885873 901593639 619564217 170845296 345519102 22975124 529091441 870643570 853184000 721244845 984938938 451046409 946363769 815803229 340697351 864531702 666958284 288670337 170314228 745306220 891959823 697862104 836210499 538889471 342536178 321517583 577520353 769680553 235794651 136949683 655131359 785087440 102903498 653658686 270452859 545764421 971238773 940117267 946566420 30215224 407481134 251541627 764289850 597865291 405394425 738845863 124646300 458269569 289591417 766666413 826134042 27085895 753038590 852412819 539184821 822080370 59612290 709478720 842137749 956034112 134414755 570171271 463076626 862379609 41447846 844943646 100775076 882179269 9109884 795823272 986487282 746121981 319705791 410248113 3812034 626379227 133016746 189037989 787478285 669467817 530973988 435908833 694106090 158525966 493971905 924352419 173652127 743725349 893845172 203662617 601417109 877142120 376334301 725475920 101124959 171970238 275747780 194367813 13296571 812895861 494237337 977023444 112819338 180903487 770517299 209294539 84871384 234337851 492098574 81630937 721978840 328112365 399222356 893814169 755565542 716649540 346491094 428186251 611574660 391098519 857058568 803358230 20251231 909810590 538044939 189456016 270134855 796351365 103831462 165342000 490879035 483952595 860458310 397069590 351551324 529020031 366241030 294928461 511608310 428591336 155814052 556442308 545625212 437510867 281973894 420312920 914468490 404126571 751128253 731430601 395225061 431246919 190994430 683484349 87750515 309363812 482524331 90001607 941983819 569382183 260977097 998953826 444695719 739532127 97559048 34568942 693648618 68389439 261238974 345023156 187428512 753550948 78212846 888963558 561263997 787897557 831782972 224661662 76422747 392698366 487051254 23093978 836485182 893435572 859965977 944104840 631017809 858714423 484067391 103192436 95012326 928508969 283845294 192482397 619242874 116191641 499664219 381839838 639062449 643964924 796674266 406133892 752983893 165049135 840828778 80542400 895088982 893625206 962983411 95408106 874542038 895560321 408670980 847104838 738867474 897716323 753062357 350906107 918857850 118531225 535112002 93539097 553134494 206289162 885774550 742578844 925935931 200731395 828478913 994908770 920257587 901266489 209803735 390222395 209463954 989439943 131843225 490205134 918154892 244906295 647593516 627889598 68163962 600277360 827648098 902974087 817388258 277704654 626918323 206454674 558060399 653306120 541598266 937993267 691155953 33381960 326051522 386672291 859284068 520758299 303924665 263427838 154675440 670542706 183251511 543380564 618440410 528986287 31203577 421826453 602501018 104299668 319231337 895286422 160250314 681358161 260663444 549984030 989435436 40675704 46709298 276569042 693069485 414076680 346258340 170088772 842730844 840067686 27453167 262241006 451434363 776024928 686928325 367724594 467958375 28232748 418734201 612942681 64695982 366873701 242752780 630309520 665154308 581595152 672032294 884340983 504418628 862269086 348019736 355679117 465029489 208486881 59560919 143945271 684120757 653843733 586212864 671397068 506123365 238150115 87109599 819493379 187902713 768157015 419801185 691106427 947229977 392805092 800369949 364410817 675756173 156366696 958119250 135939397 252977992 786138669 495718120 505948510 693384297 421095898 715003758 220115537 819545391 708827526 926436125 86327108 857681417 90373553 538516944 235215179 652748676 354657087 103154194 603268701 682832739 209876601 789480977 586765403 275482500 804365338 580313764 179720720 66198773 125892669 837561930 189717548 885717224 804075366 881567276 683188299 336379833 978059652 7092503 107233770 781474793 895567085 644914309 666353015 651892516 741162331 53071761 500267839 202294593 91113206 263470598 521556605 601639222 547162955 227579218 298676816 352675882 24394831 705098124 852565191 5247080 155634014 405667957 601447372 683467873 451772478 96647795 50377791 215275440 204704799 634710931 156170460 385601052 129355408 960363662 972477262 351058573 415850645 460548036 391765800 832593430 948646286 884907071 819317475 321203959 328284236 903002278 629087965 490821004 931075587 17218648 470195810 231093605 893634894 320520787 241663651 187092533 180759860 193827899 370716088 475076308 760270884 377284449 743130532 252167242 360348402 140004797 547467087 177750208 973303772 937338604 118372747 893160585 418040196 591514424 478669328 858544414 3982843 822815887 300495488 36316712 530425269 533272968 345200997 789768300 313874060 601579106 100357937 306404067 101400267 703127046 597201721 159095205 280165915 424470272 853021378 718962932 875739797 492677260 170169332 767858748 400948144 403844 309877475 784800020 383612761 962214260 70078596 731079730 977707225 856019849 942821307 273346686 533616613 315934105 728601679 100746753 240311706 758139685 979940339 512370412 549179774 622553170 928412480 397324444 973687937 195343093 502301367 150618263 955676658 404112767 54255043 614637444 843780758 481472529 515491761 193717307 602759564 541218163 592738494 879274160 297343332 821474837 853404939 656352015 23437074 621309196 351764895 421460636 386442996 304652057 174025580 662668494 377738192 189906851 600063052 834041921 651662291 188594104 510403586 570247092 147461009 356258067 37038900 950808855 474597641 556356879 172816502 473250426 651564703 104869300 97688894 833301786 752760863 653269682 305641201 595936346 307880896 611244642 129223637 446488261 688312606 242007233 798531101 265304333 915023939 571119734 550920417 845421838 584485524 499217873 149767973 939502284 743721455 282235338 472712398 505030004 810439050 485057278 264920497 824643157 853573903 70963896 747227783 315115500 769389447 970128869 20649454 827793119 882195053 659465754 61566835 612396791 714082457 82333850 131812995 394545189 626338640 96351051 304739708 296753031 388170052 859743676 200800925 211447393 396152201 805585445 59299599 593107739 354747033 422044258 688208867 50564682 264569181 247073534 177708820 867629482 654620702 588467753 232777344 490297118 381887383 316053687 285947124 832500147 669208542 650861351 136796449 992816278 640225662 834734243 205025949 131838507 15830117 8066553 61061866 36627692 683175650 777222816 889783925 134786188 663413432 768273336 501561740 346018523 152112648 48834312 588191592 976194771 391968357 942056959 132918571 284323739 658364351 514169010 392048862 187665784 742743924 738927335 89434741 38804708 911958347 320991997 257806020 826827641 400592496 527721224 838499472 869281525 94582906 451413950 761431939 313808456 785092709 319229825 803684139 90138757 820652948 619170643 244831747 36431847 158605016 956941287 654731373 668332238 600271719 369722515 760031662 307359434 63426521 756097622 660648191 7249804 819956535 612550873 97030258 222749680 508572652 886100843 952044045 583920375 818229456 394521089 377550519 265979086 501093921 457275451 610455872 719326666 30466174 546140769 889218404 717065571 696519165 289109602 726036674 251393855 247408906 682447062 77455847 450316326 709106571 985158651 956973887 759536398 258746817 713657529 934911014 87799827 450864982 244604831 5810654 868975988 805128806 801685988 993686161 768464545 713241194 980893289 155284556 967388970 653168969 321697969 982441996 317622218 942756429 920128497 615732400 675851112 924493617 755769338 48127493 657515020 617645325 52243024 259603894 640734186 623468902 773198619 599626851 960148575 367812911 956012069 327314056 734926572 885760441 504102378 673609104 769074748 822696386 925245574 744479950 570855717 761047151 710960837 332464763 700110750 570169933 844928785 836616372 700583884 564184147 714999939 16590472 752395518 350195933 192985051 477225700 671802530 616287406 128877694 916814757 40727382 519910903 26940798 563273862 477677532 257279307 836470419 951462969 884531235 199159977 753282329 857536838 455778872 880303221 148597017 459930926 17621339 176582780 457443906 601641806 975214828 750465781 109059308 449787891 2230793 212097403 992006420 154420553 37381557 509296146 696067428 333309037 775715705 451359789 593246250 537516636 755534027 255148444 34133599 218529030 798081234 51099550 395332255 802439223 915493094 603154905 360265265 684691627 966581122 615543128 857569801 354951425 511465286 782238098 328083897 310269634 570331135 722694503 978684034 973592931 222606878 749085207 530505806 431188282 598696261 484121681 80869033 236645513 964772400 945789738 300603340 730051195 331750095 53731618 50346900 228133916 657596336 870321434 829527181 581106028 434899603 737144676 18657503 999174728 549513563 626323123 976193896 217279354 336017166 799496480 447976099 525372853 306996967 113853241 196060091 111322767 843641660 238201059 846038906 868012428 176794771 245017209 183607645 665400597 841830037 856499124 555991167 537588089 369800469 291435709 725687977 836495349 852753169 218338078 792861514 347783590 416553384 351954127 457805432 10994328 245914411 838132522 855232503 928037053 456212489 654850040 81276457 196912363 88167391 796974692 222531358 825186788 109660271 369982468 475684238 207203157 99212964 294962644 287528923 430388940 377934739 470945085 783786248 653104323 322211191 480608006 918964167 201759130 944810163 901789290 380524396 312514716 98406609 4077058 247156475 900410106 948499333 422335191 654439448 158766796 404281258 16590165 592137749 945997845 578971716 81124943 646581476 774460861 337191295 218852356 1243688 935861910 413641133 685249306 953149482 19633241 49360969 334390172 398625493 950803111 411439860 538450946 322565828 219770887 370206337 813936169 46479411 249618158 951012314 890275925 869612556 895700148 493415712 303205938 283066077 319222427 860158612 69965273 815266780 167956683 273383332 359283906 431712747 796889430 318804958 179362519 763651727 972494133 821621763 586099043 271886071 750308166 173803762 884012059 64465660 154948441 762205883 677570079 222600221 434508571 781585803 52319984 13757568 362169637 786546881 81170815 149005303 710446073 495202273 845217054 913854711 64585472 34017170 280327311 855942559 52912525 5169836 205027571 787487412 145740759 59043114 139924695 936177323 14115327 700632877 499090227 836206233 203669776 917397502 629122659 908441403 322763773 638771478 322836267 930780665 897666202 498773772 290091451 410286565 799904429 578716326 16913572 416481458 224249050 196944332 966937576 678592452 831689657 419977878 717167594 865611038 385150655 764949051 77303416 250549362 399564622 748148254 578546119 91548183 600555438 664225487 309335413 798272011 485848085 251422973 876021636 590253812 645245335 510404226 82857317 829794596 818339636 153368422 73178344 96180115 930847452 746049746 372483411 547768029 843694684 193160728 841379395 267012170 895002223 795382198 457990346 474741962 620827059 439427149 472450651 52516855 526672821 986678184 275348437 854941963 224594403 186617788 986245754 170755568 810389657 221463971 93750013 104012343 625173527 705068705 78317165 613049876 322690948 126315809 240773962 831790950 704796151 924441527 200370810 336383673 444216677 319229468 69030473 592445494 446005679 692695092 864151404 632590010 288698782 407458061 283738626 299764928 954529257 751413718 586190993 308018032 688788000 112208111 355501314 982580125 204545997 680133847 883754927 139463865 341198162 605285179 162181712 31465956 179370759 269830126 222673167 94475497 773457441 818306029 127302519 423328565 576744897 988268118 127320959 905869023 354364400 416340861 750951040 838271910 892809379 330009548 738864708 28524531 296986801 687121124 467986425 766906835 740475611 158219398 999084335 199522815 322517704 288960927 485160165 509022421 373089806 360392513 687224450 754095453 628315427 858130343 196308693 12576326 467587689 767606069 634803469 935637734 961883947 515582836 776902092 330406977 311879319 75506204 174650905 189576183 628240071 775993348 85015643 827744093 207526847 602692656 534529900 434968169 275838564 384740559 872810376 740713143 686822283 195144751 753683796 750729363 510196460 187424205 79750879 575099368 946149929 852566860 547703962 715976531 125273544 46294905 513258088 864763149 26337854 937305415 203513992 631035391 704389347 659028175 241808556 398145721 273901304 350683223 718283497 843538036 504250534 975069511 544010938 863761420 467688446 453937461 656757765 100648202 458222077 787285724 700043801 915198110 900810111 721830174 264052902 200391327 163327054 945526791 347593937 681837195 486927390 252567499 230962200 783211145 161325958 596876738 175648623 898234985 40960777 684030324 601859621 684698274 374460431 761855882 260250874 171206484 395003883 648103127 84202772 769291079 497618130 383767382 869261569 119487206 261860074 660791595 325387186 711619919 726022971 92047776 683862408 765897530 869385394 402708522 212871494 343147029 280670000 574918499 439111453 938159338 266892912 810739214 446650782 29535090 617078047 579801625 537520840 578397455 160571851 852887442 625004802 957957059 116104174 194550202 888365591 798816065 438797549 77150194 826250811 211620321 703439629 921838277 363661583 968309151 526046847 357543653 149473428 740913954 996461153 434393644 631228475 433749695 647967150 913952930 518773718 133791078 15879252 461391729 911543975 455601595 774174243 91305450 965387343 816863490 778559442 393320074 989426139 387078191 502434309 533310962 383153346 631811284 521522244 126696432 758240739 671704117 154261507 489677945 279856768 983716917 385104791 827566243 443550535 929162340 730663746 445832626 256591695 350508797 207648305 27595796 921596179 277380058 144447857 381122141 366229880 368199556 364248317 25147972 503696590 667554862 10278580 819725743 242459080 291916458 141376356 807211947 559782022 910293884 609860027 927617382 298444683 245704648 352375635 96684865 319896259 683299421 172728748 334422970 883566212 762501812 33678130 707738243 74125452 374743019 184305204 693580136 300154627 79366603 633284589 200618857 282746736 639683520 859918203 257543079 766977486 840340453 573180651 694142573 392812918 465193463 825174059 423499312 135531059 818755678 844078615 779916426 901317931 731241257 675503982 966883135 937643000 613517583 907571676 565253435 846773143 161522286 960657134 38656910 487866218 337689683 891927842 774103159 348905025 205069668 895369945 193177686 999106896 464792320 928820054 528571578 506071862 765700645 71731664 62929235 107480312 262983798 383309408 691264254 415602434 9830727 856004871 330074815 315257386 141665933 616858794 759802557 562502317 1005542 42080289 882946894 418634032 932392348 120397601 213060593 575826880 396118941 638720331 270834243 742497491 539200639 164756779 143466259 943729222 554353796 948805422 34182482 516156510 471115921 330204336 815479068 484988104 12052791 338031348 349631671 447894426 150399916 881829921 34378635 133296723 309679310 167059016 826978603 351367893 500069417 404960869 679464532 567895149 469101799 267376469 224437736 737105106 467686112 822239459 787483125 87509794 835525527 686159040 759269547 537026274 654191406 79663497 519644518 33297660 370886011 184054201 932905898 845650634 103153903 246643902 773383203 655891207 982784426 560639462 600980896 178888407 566470263 870814063 920194083 471568584 444322243 844375924 973300680 42465747 500182692 482738434 911290849 175601742 174716891 812021002 190694879 471787269 238121166 180395366 505327704 353977377 902659214 989338580 968500248 378348089 502404819 567633664 834406660 382654283 91893496 505030012 542129969 578745784 791014152 451933375 755511258 893946196 621298353 677351466 374002277 209736782 316087883 718150152 265079129 359398472 115343315 766480523 724376426 44411204 589064690 674232523 271449207 458308787 133663478 268641222 666575489 835046500 475716059 85521258 833488561 269116826 136622392 745746312 353206877 584029176 809390685 951373527 931176447 334176397 945087027 279480824 751996474 626694858 749505618 824630391 544176347 818367377 885081597 669764546 773915093 784552485 290815766 424284212 727783489 821986099 350421298 83916303 270059362 284723152 73458308 141794426 417089448 993943674 573501676 630170763 47149475 69823001 18033394 154018869 226098956 984529652 73122502 485317468 858699211 898885061 94498620 33120968 225348838 777627816 17863896 913658159 156844438 243138083 129614527 142715428 775320626 224733729 658106302 391848751 246098240 49750267 995558737 93028018 798635625 337756264 158953619 895411459 445387650 89920149 677929803 147204441 325540740 758654730 743666412 884183255 681494420 727313855 929747338 194981250 363048959 575505422 597706983 512803666 477867827 336612286 479987048 431463709 572078801 245599231 10611487 77725602 685729433 952983139 261010623 687723151 378178933 832202726 277206186 57258865 475221117 453656561 517100518 782042307 677482471 813366094 848671525 95667431 878051355 236258612 581695931 400454948 206681247 36948546 808403625 934117037 673001771 371494266 932831637 29051291 202956952 593089355 8646609 376159215 344702442 892335240 981936977 517223570 572402509 117692273 312508853 707526231 734432017 493778091 984152389 723795188 676476596 888436800 644338160 122566157 869866456 703658 823568972 154820138 95379275 603460036 221653660 897316287 815816188 59010514 688170949 760923678 464066570 221410948 360072788 644636304 544482231 878758381 653160836 96081212 601212013 885926283 178004017 591469618 962506688 672513858 432892389 745384044 850513005 996204642 305458638 996395722 144913234 67751071 64019395 718458136 276229250 626947861 335592258 666855685 948126250 739722571 544214646 996257067 313551273 398510124 128116522 692975627 113654399 598767376 827740123 121052941 348754776 303910067 137172129 207627141 763141899 191549499 75156553 484300714 664045454 773415474 883801918 391541663 800413448 272379794 287504539 980504684 538724547 588260532 979525405 611094787 470142001 727771744 21638699 687787836 275979247 894615749 621970645 596928216 207588032 404218482 717187282 121199748 460660367 447002475 713529731 864150734 73341295 723742737 324204781 159118639 605441179 449227313 91416257 788403977 737920374 316096002 315236693 409941671 352676495 242181922 905797798 763592758 29287059 78126999 160728416 11501781 504185696 689302218 292182481 979433342 888864509 845595282 274944239 129074211 893523089 255622703 882088792 667622541 331251054 7146309 638208597 466223483 739610131 268468959 722418903 279465866 534815009 246611059 733508721 770467399 353813093 754626270 925168229 462730528 528634318 825388393 435662491 822554226 221941886 248636607 375995551 931785341 699906483 828718579 586606765 138900071 854248923 76753795 599115422 711941443 80823687 805681751 15163647 644011789 115141748 858546360 124762108 62051235 567974021 814889824 484256878 239407055 409387204 159169642 975907540 104924738 78989415 735971931 923444823 717075095 995792836 294618912 660182977 957126735 950832996 459568910 195646093 758446033 797880049 899047396 632612825 353687921 630172218 20794313 283832172 911354468 757125696 332126787 789841590 922931665 86223394 284440910 164287952 903549884 217367086 643988037 730729592 790275099 55528151 825310957 86521108 398598083 129524663 140456051 354460083 220340089 253811856 863233643 491507982 516574947 457320017 606004183 401842052 344658323 22026 285475862 809538077 442304514 36012022 246105084 578115973 94722197 96897660 108939448 834875157 540296848 737808165 526020845 636650444 189370152 499109282 979260826 501519188 837507188 634390738 292183345 908544760 180891767 659397046 195660935 46497460 175580185 921611387 430998997 479079970 804730925 496473971 544999365 27356047 22706280 587242008 163442275 145683682 206905968 863421969 121456674 502979771 178887885 665514021 541808867 219420501 987977197 235289417 712659688 353542550 70394157 873976216 771000798 403202067 194662351 462015832 612349919 803807741 559028728 225469425 931176035 569845300 144404924 413309686 739545427 434455107 216822805 402597669 70398969 341971797 282047968 504435550 652274186 380076357 534748909 30114222 218785448 365630350 811974889 443454539 958551893 274251869 166698092 624802443 557000956 986477948 555617787 716245491 293042422 452681574 353728765 526975792 660619776 353306679 589324483 223928085 645259068 974431928 653043591 959827866 110443325 684514649 709682537 462135015 586446067 480866096 831041397 767254084 666558139 496362748 14943899 395895589 240714079 334827557 851206323 230672934 52210439 226467259 827392383 711800841 379399756 278677363 137642919 717313211 4432171 860523693 251673534 161908301 758721031 521060210 90208575 1573883 41535662 377590641 912027529 319543595 894691159 55058687 800968418 12273763 439605661 739957274 711553411 679252058 878081927 965391728 67541118 24254189 350473857 476132171 674964697 419282968 406747232 868442786 282159225 269734159 684084836 179287575 924947250 175837471 936159790 461806831 163357631 617681095 9200335 378173464 955120829 869952166 798521787 925763375 190524344 507479181 887480783 924555116 14381089 101406315 50596943 747900605 192720464 539548509 805049320 347812525 628281481 216451236 15454645 518902133 9243120 767955119 690025003 199013104 355416988 258589196 888945716 640735660 580834692 293484668 152666143 480846292 6313864 803408350 681962653 600696384 490553461 857544513 767110093 600233330 668397302 943053270 92236853 885449868 939294888 894310903 236114880 297077345 490930447 473789992 522498757 32408169 194292368 974158360 56387843 907639230 486131069 261446036 161453210 562084397 890238225 210267037 510492957 268035874 776702059 317890387 636618876 359287478 40597397 648460032 83515419 504879785 199181442 115879194 237175225 94583134 871519752 295095612 878303364 435885288 254394604 629355816 749448213 326886911 993022677 171491788 413663078 944601343 920299349 432485942 647643103 385620720 93390563 375771302 425754697 343782532 26820067 913362814 462885852 616059151 998949791 699921995 902183735 173249427 944533828 512660154 924862298 805237170 835936495 845688748 839493304 289392834 38532768 366404132 136646180 559714489 904644928 716564042 296102362 518679856 802543010 234604661 759957121 206421622 644609917 824355356 259746341 400578678 338684531 74365671 706423099 796850632 286835468 445490079 939391393 782778540 43911101 255819060 620612509 432989706 727942107 363691463 516536027 965840494 345371306 307409817 762227569 938819348 898307155 275265045 880280285 142079703 884264164 170450636 413205249 283438399 104843613 196734588 279534893 318458748 623614616 95083528 527696663 502126950 390646370 486588797 496316378 134429821 219640941 298808584 746771196 138813156 993785678 729798156 46246763 805794415 387674507 720138249 34185853 235536274 557612171 336097191 115645164 845639790 246114721 630573502 265762784 717290954 649421571 500831815 102306277 768432660 242850005 399183716 818906096 363001958 483864607 897247298 696536673 638324604 948351954 363131577 261055482 661130944 234106313 103281917 198361834 871719744 244207555 103212019 509320134 26862259 425205355 792796548 621861003 215411321 618550353 850913738 212051869 819538071 373614319 439348221 690482893 401066687 954675623 546879869 855381067 874047817 599312577 470625496 911548344 762780208 579951215 150746818 865231641 816136223 399530952 122416918 599346136 286572901 818292689 603858903 716082126 537922806 357287536 520041519 559035961 166788468 899442040 568144240 704191674 451821606 738896291 3681818 355879008 913321980 286324113 714438351 349243555 82386573 413313225 56672086 898847836 501422870 959170752 379618214 287869651 109927809 372236750 378511579 13440180 342548315 703861813 799298100 474854167 153587931 529552668 705676833 835713653 21137890 53401494 947921202 906717109 291470073 557929372 531250981 827120933 64178764 631730959 311377370 583172473 665758899 295310521 415935070 325978831 321781423 546670410 777974756 600587180 577479011 40693853 417148104 767425023 561272738 851438960 638145423 408372250 521260772 821826799 345969118 839283647 959354948 96697643 970865550 33292045 864244111 23848285 287362457 223676311 481152559 191396005 199651104 23874380 34693693 753379598 908081778 451234705 833357689 757048456 858650110 189267493 946431562 842063854 62472547 122047545 662734015 626112512 29879906 812774750 903712655 212982889 887592935 32949910 810170136 237941431 371976965 374898500 779813991 923315043 272137721 101298743 438809634 570582226 50526499 673993889 611534249 283777098 798618127 115010336 844674038 543349504 483076211 13951164 505303218 939721992 738121510 984221153 252799277 484680808 987206448 199038819 809428829 85126665 684609722 57042815 782990560 756322999 743079447 437367003 771417599 534136880 85916865 116295044 303419563 551358484 824089693 408073715 997997943 255755502 477252535 859808766 641479335 303921452 578383296 968143857 356772636 450755626 531189908 972052343 95529837 279770919 415592569 722950307 527438026 570309711 347880150 236496628 244155929 498134958 705444162 6955088 883136220 260436549 253816948 304178690 880316996 97851119 156248916 293451714 889326121 22323063 251131368 915567788 525277192 925190543 176849001 77217860 487731722 565359569 13601326 244533115 79097345 751089853 603318973 217946019 668167262 723047866 794102975 499279736 692026693 254565918 991146758 779283490 862378362 251872287 379458963 569205806 630483312 679944670 679459973 726150801 229793340 304614502 944916775 27092905 260237980 871400104 735870701 141255736 419698170 887926398 746267250 698234990 107272037 767165862 184860283 741688033 164689042 768505549 574139121 117968266 443749090 432955010 244788712 584582868 841573980 795674174 103762588 505648776 227903662 999248228 576660591 380874463 105769010 350852669 833840111 178174322 683142373 206297337 898129354 220887624 811562863 710084786 78481888 374885585 547706908 417697385 37988402 312432349 688821227 432907783 481859053 495621549 939068275 320106334 876783715 686130404 844250113 514635559 914885134 318485906 875564672 420362755 164092821 67611435 272128138 733797242 862953150 371705483 847794527 430700288 629567363 978523384 928895203 36353260 716233465 859020064 770600102 815102848 848250982 836429846 487568098 333317095 724573237 407799389 116444023 995790129 613794552 197416146 607430374 854665557 109141613 881783752 131284325 18309175 986082933 343868405 76326341 617272991 740737052 92590449 425857675 807570749 589687956 959332551 736321755 717360558 808147517 208327646 18207620 184744304 926508947 738853648 391280128 268881646 528866886 519077403 968148332 884380280 571052585 608650528 34370958 749198153 340621365 301773743 517170650 730510464 555757454 557169085 723600995 925407273 297284226 896830119 963971816 708175409 751901059 119258162 277340629 70571892 663541288 376291212 315294517 950013108 332336187 936389193 902266815 299075482 893165218 202948455 586768852 499649462 975751282 293421645 710561402 275450754 460365801 143940548 882046562 323766625 200313189 869477637 401116387 467565721 830079093 185966250 171884794 215556699 651193034 213563324 625994833 229529795 90538816 435994791 575756343 520942032 251365596 267204159 208094368 894241391 671685577 1098435 478059823 77747053 296605273 327776471 63886888 671659140 298306564 905720455 492389247 234700121 453158005 740776522 583216068 258220142 920447089 456630270 38864702 703902781 93963500 590305255 868671697 641950745 793550853 32001968 984625931 938212165 440150522 401161076 744416034 375694824 499959354 823247020 669822971 867627033 697883734 115257150 841465112 432640205 72176908 734995576 476095402 18211556 698223423 180673551 765703563 12785708 278891766 783300895 824470069 960537682 759408233 535467310 343211987 157756402 150694129 413131051 34166832 154058125 93142032 991389288 725901771 286187145 566360182 773074341 594492090 388337210 641412336 174968836 940196300 555985115 617791870 52535320 30025068 698293896 491577410 534478545 492696754 395186257 334360199 327287950 172836957 462792481 546604993 796185620 752376791 249659605 300621961 246197137 986333227 183981868 976901027 245847450 720231698 47268049 117284605 391476267 416159724 178601557 895277222 8862635 282502337 657823023 588851677 419346407 847816511 296053956 746582530 824301330 96933820 47273819 666502050 762250445 773836857 23652644 795957107 407361816 22130012 28892989 931993930 687951206 408419703 888101538 806556974 886975883 509525375 24237375 931319372 402037953 984577041 981806819 710698484 828313263 289263737 820999242 7796386 959931491 574463907 929242132 504738043 283843922 490406185 662549962 85453513 661438040 728648262 517858529 495574015 434810044 745604838 947275690 169349046 357603115 905768596 255420014 31444790 942292152 351911306 140093011 110970600 21453797 962110376 917700713 90169182 901995410 293041011 827443372 195361876 189587982 733688602 481866493 321795505 900455953 413258614 728149538 375633017 183531444 540526855 746585809 915792868 180921726 771138801 263058593 581608527 549465951 267555334 821535505 481811000 348204967 214745020 660310156 579693901 328424983 328511794 996990822 22455651 612073683 501530161 419425493 771551089 348175721 166566437 663671290 307960990 380193229 723978537 287025376 64875828 189636444 528578810 12915576 333191079 27228639 26179583 721902746 848915855 857791102 639687240 675399435 331307187 36196051 527584399 700109934 543123965 973869015 265628975 742272089 190040704 551681778 951629615 990191426 973279865 906841328 154718530 788204942 483884615 29410568 859178684 111085701 247795576 258736597 239759519 67855191 714196930 933528670 906137232 273121820 142041082 156203791 180070367 205752026 608128810 377853117 992404612 535908470 84633465 726673831 24039453 884620226 87519544 223499376 402367728 55214201 787902952 129856809 460036337 74545210 141437226 970217539 443473586 313635729 924652489 475962268 533921911 177214186 192068281 755904379 66389282 371608486 976002579 183374220 620485449 968062208 53841946 813671911 247082523 193038628 486744637 407191044 7830655 622655522 367179276 904022476 959357431 534889205 10537540 455701645 418633650 293699708 588677064 770786811 299145613 750585984 854840997 947599664 463120129 833529015 397677321 998020535 713491513 502157236 453903955 612831353 923980035 442126332 116002823 414693583 619259350 718922488 709196492 191630705 289295569 67851768 465988986 492770697 766766269 402642231 706314250 165580705 410838023 920587989 292480674 912981680 345231817 174626777 197369480 568271636 419035326 595755320 257951028 20688785 386019920 843254474 887347007 497748 956085649 177406033 99558252 292273652 205028402 99518069 468109735 574793324 756090262 146874310 553164291 548626978 362410951 749478847 417443772 804557540 284755055 280885698 251720757 871006438 19380711 66702872 642745849 27352519 231312428 111842033 516800955 800077706 204842988 591331175 710656341 910855583 461897073 111322746 193491149 420928984 354324914 323383829 343152461 456318836 774785361 675987464 476844582 888647706 681264019 213059342 637518295 313477332 464396135 193525190 460471555 88515354 173926502 488576444 453246835 494808519 745252302 836681311 43045146 139402784 155294600 552250376 822894356 66326231 816855331 144861946 676447911 496448762 521542867 576523357 619596346 902461197 198205563 891603779 341643365 861511153 117087392 389936036 707928796 944518644 495872371 335685475 191695755 290471885 381141448 124297033 895527798 238635415 969237539 254752772 680950229 466300375 606806441 8180018 960353025 14281853 53803303 961311313 484229501 950661085 789201432 267285964 92983541 741818803 417958296 546666994 194115901 459172391 477737328 644567552 979742541 387091138 355592464 317333780 88661068 166796668 416232078 535917371 960317572 392039348 253522346 439292513 579241578 955026733 777075403 388646240 879787927 504495890 975632382 709431550 822471629 677876476 237968382 592112864 462840825 817627625 973758248 410187931 671724846 879522104 409548933 45213347 183450536 353775038 652668608 624099678 101826507 774604973 104324406 460147730 656097566 267488417 227663074 83905010 70884185 532939934 28412270 785467670 779111767 168205078 39858217 14114179 415335958 498883803 592068872 720106012 226837447 143300139 695446955 812856760 847976122 197850027 897386587 598963725 289233519 284103016 922051333 924138173 37638787 284232154 534100033 758560336 927979458 795168475 447500366 491998522 511574309 203656368 402437142 985672404 354098880 634350345 212719653 491733597 778652891 770789368 98790322 576920062 173028065 125479676 419883936 288171468 491520098 650218492 332302706 259049661 546209820 550560323 105333338 350541235 655086836 608654726 381124143 821810295 801641201 849085154 795994734 399289018 820870216 143023585 979692864 817726230 935542869 188437865 643759221 766830095 378234522 248140499 212167811 801260296 396640196 219135708 256483208 428699479 899237029 53641387 461704783 240325939 304424761 413651146 80105795 915767487 498034081 102201392 96493438 268555522 641742123 83534650 656878526 131054321 830165321 412141231 591197036 509811297 626414228 29485240 788394901 367401236 721910229 433329644 254343155 209087414 900771059 419978316 522250210 114128086 389434369 769770553 725486955 125997040 922431036 497258880 126586429 146879584 657022726 597914202 177711792 44166261 255807725 588818017 277214914 837716061 93179040 534814618 498629915 770944816 800881662 838504310 865242120 325494259 510927112 578423238 770525318 668775052 412217579 880389577 986230062 370538703 481732856 495976228 337864522 673618803 379282860 244156134 914355659 308941595 954431913 416021634 215745604 775856974 104443066 669585109 210409974 998894463 134513877 257890086 596404940 436693510 41399570 134863394 726513745 480437542 199290552 544159965 126197434 245627401 404289071 100226517 508070892 167303613 10324489 949748206 391183981 30278204 263456772 121117561 67513450 709756778 26856452 874629928 518725306 540896269 472382226 679180056 638720480 800582873 650010725 510422481 532048127 889829732 395482707 796568380 404833001 757971250 534141793 523381682 404697365 806789290 172959548 305643758 229132447 444178977 145077684 137006360 760013651 831168717 875364298 63266747 943194780 203437520 447887517 263819469 986931349 54807346 160182390 757933994 377849083 120683240 835759053 995304472 417750069 169450951 794274365 215667527 885992021 324622995 468811653 169391814 196344335 67235060 746088597 688098201 1054147 183586940 175182973 697851680 764762232 163485604 393129336 41052716 796936928 377651405 222682093 767639536 88434256 308797759 136754021 858542859 827663305 612719663 397419921 624776830 509666542 986708400 389774160 106855613 624751379 57870795 101213091 529381529 552371756 713197925 432903863 762083407 400007128 452771661 278973661 836226694 364092515 953324352 876572051 953826123 200218553 993039070 719711353 451142419 473758319 435610802 468163676 483122105 236225737 173741867 70268463 824621956 992660392 898078627 31533070 75069475 6061987 210000216 915619901 843175850 94628331 468359803 412647460 367025556 682819426 257048341 227118425 123933643 419637649 742794276 256129685 405923737 976868771 202360969 384363198 298982578 137416049 488547852 281700831 308794935 852357755 809005662 298904617 50127273 876860646 368406553 887417078 104404984 233540740 395899326 743034830 464609400 502205902 938882743 322335066 83144682 300784351 64327253 915333231 870486382 798923902 424604879 111782149 322733972 259629854 1078344 82881343 223539024 539040724 158463947 244564075 236283649 99291487 456602183 63694330 429816170 462717223 126171542 456009866 413148347 408978491 190638457 792973020 433088903 148697682 96576666 38209245 91758029 996490956 895471497 783150750 828599792 959774128 758857152 914144604 483647423 465730220 263618208 785841787 782940014 341917722 881515123 157913730 303820954 655818230 163674984 296258088 199183693 267686120 745937051 909865800 415135980 759465795 465840395 491200484 5104469 19092472 15476899 601261354 585116095 329682860 790694197 341494378 132000720 632001957 101604726 285761056 979341463 566805710 957732877 518864112 320852873 821552834 705009790 815497381 115680645 332579521 263875134 182254897 56991690 493409455 101258148 8496560 93305100 11249181 84901620 265370985 1621087 898690883 947071829 899268800 863814716 950945280 179201494 527295567 971678607 952585946 945746037 288624078 517547167 150600192 398910737 738801953 433224229 778934860 228224627 318417232 66738234 750062652 208902988 965847956 699307881 28603126 890778934 438611525 912851868 852191050 883524018 500256231 154582824 107117742 902886699 42433570 66318284 797951556 965650415 543491791 734653867 739423698 702925112 256089318 544696405 343198921 872675883 655355786 488009149 875914042 65103053 222078729 852342080 576755434 238256398 246463440 282480293 669203009 129416653 900948354 722339097 958825291 71475145 293256671 381114417 749615806 663433895 826386383 620084968 552031996 740123646 114227819 759794342 753035535 855446596 612202985 605915704 950294944 361441755 85380782 242541780 228777483 426570765 102242376 340048148 287594828 990852105 319851112 881861120 571369228 944706539 438462955 378531332 917084317 164918196 771495377 161038838 901174766 688634442 805326407 576087573 250511017 383106691 920813470 415093504 861864717 675799060 853359446 666743500 428511499 487385251 264130831 682064361 345612605 563920562 261780885 980075063 579865568 325404346 725240282 441049082 597274588 927280656 211623421 797245663 329807808 778036726 554755133 172942588 195587779 56240276 937907206 412764622 506167236 988026878 501086446 395219771 975256140 39919917 194672046 480036492 448784265 697567486 941813033 539456383 638542163 509908801 386221931 380565289 944867111 500892577 488758953 951328017 734970159 656965306 9481786 507658790 58044214 54920975 545015205 87783871 191574969 154109959 348839826 450994327 569687253 514432241 525701849 399005136 376575311 175957515 425101168 720905212 214484377 807905653 782641022 430237201 109803210 2733621 802163276 793355367 371248030 265412926 127969614 703408072 288405379 5945452 764645664 3882078 606957441 910421886 949196934 867195072 420994386 578579740 253176680 716172524 605477975 910600666 303379933 674028358 17163413 817073456 63306524 872139677 138392508 296747646 481590412 766410275 585584164 395837455 599233208 871231604 186920395 750097427 556638289 832627868 300306265 62877093 692561202 578553860 139944732 123387333 425426275 807488131 596184589 285006427 472655368 244732754 678805195 437106490 529638522 808582682 69376668 132199195 500210997 467598825 868248176 340249758 175502550 958630449 22164449 654187857 352797996 304330706 373417001 716746399 728293932 144679953 661742386 484253410 426545392 584923544 561157259 368408160 859632824 997625217 866396267 166451262 75559413 984500807 688705203 940060048 504604980 603209420 352208870 148198477 97613367 961685860 643149369 466927703 967780058 239669953 999186558 643132023 404703278 316185853 478333752 370407262 21590884 949136035 863730060 591473832 929885399 350009755 422938701 605528018 201163019 213481022 665045738 557048648 203711402 473890888 485016204 153586012 786232456 442324446 880430836 438377285 79467683 199921295 713216915 10012196 769756952 339028556 245716097 532617732 941819960 611663991 47178619 98412759 546105460 103318227 547878123 591430004 27998569 527949965 825464030 976422045 927842519 713576250 428664335 406649850 734309290 650994649 464414424 112880927 751899894 869278158 533346882 777855109 771201272 927441894 251552000 654433416 546996242 475105622 25059940 499125880 142992846 40830654 317668209 82002309 372817377 189612320 157687757 403327431 360582948 60473068 44892868 799991612 431472797 196604660 81400915 436503762 196410485 769886073 162901015 8349529 521875713 783250716 864256597 60145801 460868026 562072556 305708287 269115908 987703366 299170401 417692330 509830741 364265839 28367957 782356888 885617131 892358694 617465871 990529199 789780510 745958538 874037051 385693821 180219955 395177180 405246959 375806522 233447505 727179 84955559 854850758 706228873 38549796 916670537 526964648 332468180 37368678 482017570 739775504 432874775 921980468 727865833 378235349 851575831 786274200 558901179 470742643 449348229 178049990 359622682 836891156 61004540 581559836 975868918 644878984 544387071 146996760 593179301 166454340 495965428 917693546 163455202 56008043 315288878 701574115 34234836 755630273 912397030 572318845 918198790 285267637 126005310 738955357 968519281 379361375 446841918 459651789 312068463 993376896 58170839 751202115 895339973 402371708 139633379 478524502 264694178 265939815 615801635 306596558 481713051 600093938 728590144 377789076 960584621 929728641 746620365 256949691 656474685 33523738 35083841 799488380 971699480 434117482 558678012 725582654 759586421 235564749 832839500 271223181 830729201 392816703 432921182 102933273 106291085 628127846 603561550 332573629 236912317 395141526 885738525 212938623 133856079 651368128 555126194 288255880 374282887 702259338 498481374 760892204 330190852 980815926 717736031 583964904 328358618 419036852 81561298 204487516 988021880 330973598 857416129 61713495 898280385 789719600 549787807 342866377 461142004 4412501 729673665 287325390 462576068 581979032 96539501 985304234 352031299 771234355 697474251 234893257 25966063 207910405 988901609 830782651 262527917 43535764 196842436 164484415 514210760 426198288 762044732 852565813 327738106 799847249 89302557 170711978 551983967 392576724 273908498 759222739 439011195 477058756 815609764 707533832 627204410 786382317 59464084 364045007 691955957 672191430 865851657 507882960 178957413 574582643 627964523 588831971 552246193 352121012 695011057 471964414 699571303 604834046 528070590 279019336 827737212 415737958 450755294 993686027 513622861 361953453 645279295 387066296 504938142 843244599 683035322 830865902 165655457 151474964 131765009 622749294 420168677 478031871 588760812 702486053 368594536 540868946 442985441 600607781 692128404 38586905 494556260 798737576 316340020 532976895 502997721 663643156 262246779 972058463 700105350 838481395 411936265 994066484 994719393 469868537 414964194 738430250 603457345 359426303 112907123 58981263 784141924 816046089 609249171 249633623 192700665 456545093 949758077 797793317 618985935 721057538 129863895 28799550 16760476 921265343 71194286 94504339 888223495 185117725 905633400 90790585 315685269 760734182 501598740 112581617 438888120 356477715 379270083 591044131 288148429 646004152 928962357 640775131 775318031 44597279 74257022 443587154 302522794 842073005 286787359 916935275 453484210 814002169 72066806 435847079 736680477 817573310 843065176 453473593 489967308 118450655 704794612 804010231 35617419 740945510 289695725 331756638 505731336 933444999 719195331 230368157 35156702 992136863 209811814 496524410 62394513 59627309 27759914 317132145 860306821 519733216 971396815 676218529 589683468 654511499 324445558 483093201 959022947 649259561 15130545 694944368 921579689 855328731 153488497 631956116 121680359 701887983 430671893 240018433 641548814 920008662 308773729 169948697 313355512 384240173 661194885 4282346 33554022 821376439 755950100 877303091 707056898 721601118 154184205 243219788 757016414 550756409 937040085 729729599 234281713 320149117 674789943 727898555 529228058 519191698 485813865 254045719 242885161 692592899 614016266 751709523 644521035 874404481 262766111 817466902 797135000 633778406 830650642 239089326 568158229 952999997 644574140 228626452 861012137 128133544 560702299 752241896 708747300 897809023 792219537 230938222 136738626 258232124 533466987 24591769 444462756 665897092 828050528 556817917 225609683 986209825 812036431 141809368 261267517 975117828 817500026 925968407 838272575 801857869 641974670 972027719 269861874 375224122 995754661 538216602 498245365 728300603 811803959 568963062 820036579 225510624 700036139 116269536 327774941 123174118 856336846 594888328 290869700 841554480 713601238 266672323 777506657 625857480 892158307 445882643 282610791 628291810 159607794 823934619 442497644 480102363 634976891 157669934 985400564 915126069 752308555 675159363 713341542 385018520 323109408 25403641 304828183 156312029 697899813 687427350 4259900 789211642 795206625 124515082 626500858 460046870 596695628 506406125 249688407 912347770 979179458 957318269 769233222 261029789 686805517 59319329 669946785 185120533 521913939 627621867 27410212 288477865 924704302 147256462 67955585 90283840 373179545 858419308 586730563 380838898 286637306 376586380 614174180 672723193 684006433 251007902 569186502 851383478 82908991 868144888 178640436 877734072 865724147 275339163 65213276 884501680 655523907 916168490 641854555 268479864 226289563 464379128 354987821 378914326 515450320 737396474 271037633 476379315 922530080 139600082 203480037 5596581 36565555 496489158 482742352 754288739 545513744 391316167 559540138 990365330 77102640 5479 410269815 973992705 525127027 362049770 387320617 981875358 323308312 480772661 81713946 272010118 409160913 835575769 909638540 10281471 848410801 731985675 559572135 51694448 403406902 495617709 388704381 599950702 996507463 888114242 557295109 377816246 184999724 586595584 818452002 634428969 131434401 879097016 389647008 19014099 910865343 952309485 227529517 188914662 515996428 737058243 710944353 798613440 109923956 619125002 223608001 505089762 250060113 897743677 238985138 404645368 398094938 680511609 226783370 403126741 799421624 897956739 206358399 510597237 225398008 631424204 816633010 482578427 144069648 617216874 556188977 592710576 200082523 889178144 809759207 981840650 809282206 703267923 571018927 976021669 159027976 303745297 255808845 827764032 519503919 679120915 350431847 625389771 457932303 194938550 642552462 410354519 769806603 319157508 73856833 853969948 83459316 197880490 523000283 481934981 248924668 856481280 934125223 491601687 544818628 563915529 924428247 727943817 365253710 558365284 49118338 108573362 581652235 718655080 991525806 933988761 101139403 144968201 273581376 412105318 112118734 275436519 208475403 531666032 151960250 48209225 574816711 532753969 785887132 353736477 517495319 118336586 169702377 632260858 345686403 989354633 441176189 152898083 456610173 524075745 656577182 895319674 768217181 829434474 289705722 23589778 515450982 250833514 712570023 627032994 305300673 384250703 928976414 156061322 795697788 196559270 255660619 202942159 453095829 375506734 841825653 458464927 955046379 992247755 805011538 438311637 774386759 418786436 774898948 976277999 798472026 79442579 912283148 412457234 906198718 705060940 685573977 394194705 931963380 279157304 359372097 165298014 190136678 15000064 640475516 190205215 816273252 593249143 724476470 423391767 786567977 785952663 70158586 541614517 280371669 138597765 109072317 914628627 326040945 590297996 398758362 423363308 126145519 628524576 549376793 943462061 23563815 15630555 33544359 706530654 988934874 273804161 282696728 458901438 78939573 186750716 925984363 6792230 747687493 703597664 761014018 967808930 753960709 600236521 715131055 545617631 341684821 974479355 47736994 46369587 580883329 648374303 227221375 315176863 216205752 748479497 571309636 938731976 172550421 919314066 162968930 551191809 497566102 21976770 672424879 898397503 670367782 564636354 147817828 156641315 396172696 831575268 536820013 993326576 20866468 459683495 799430929 817757337 365820397 206796203 389704585 375365813 709465849 437566139 594803825 167599234 9978168 361553099 28828684 216094441 796257800 263720436 132263436 555947639 695870121 348350079 455988355 946943074 19768129 678704597 2432750 796218766 376929765 349867909 97054004 493188992 664473996 379729487 142169251 811242343 553420058 601330452 641453292 538583323 839840341 568098273 712601904 242391065 229059824 900170471 388322036 883241096 186341250 488071043 999234852 232929340 758886545 622310199 681025302 456981416 240489346 281479854 217699719 344277230 942389160 976166590 159368605 505115858 332395835 170882913 271770082 197234630 429746782 101272760 739926352 978302688 844731417 673397264 272792129 112834785 482246492 851079391 202663291 427093806 102851076 258675643 426953516 979810007 592431568 689083752 344252392 445193107 351926120 437053397 413206446 956500161 229224289 960853267 288829155 591151721 147198768 166435934 592806736 125732923 543537721 473660185 795544880 622172811 660517058 986068428 147409438 855462237 279068930 830063407 739879456 724842836 261166093 557888284 202796195 85771970 383363303 422165908 376105336 862659741 61285750 789155270 288935394 282444165 775963025 623612674 48732551 845072577 663386602 176121285 150035823 528632639 796730153 139583153 216047377 503012505 592033492 803644306 193804619 562356746 327752284 447546972 753411427 76960636 693284891 569093160 405014022 874279553 251739219 33501757 346094153 390903115 711048235 891603713 874544295 328273341 574181558 100926732 943205385 770250331 691477484 372604439 175172793 590604630 704010161 210487812 180142447 238794119 413409995 265519074 940484678 604296042 648168429 70884578 890861509 155862568 664138417 668019038 52555737 549378192 573010580 821733852 809307348 338578458 353306631 755662342 996441720 814799334 131748690 562111921 768092907 281034169 387541428 275266515 239903154 519460097 931646542 219854228 501025997 939880920 651785513 79906623 875825553 34600445 830631476 190409541 195781063 178738646 72045133 236309824 790154906 446921077 329455662 766806776 582388129 380274062 763504519 620681047 770201562 951612034 536070117 917649774 676186793 168424278 156843460 606570363 704129245 651265727 6268805 736495581 728245158 963508749 349493359 877771810 830526377 140598850 726734259 442932735 163592165 596779273 755775343 253049421 807513289 952283563 332070815 887462926 469090605 611985443 766948142 249281395 156242248 551985680 77141231 784827079 244578246 429290936 621638809 65848202 788528306 158331149 386396111 6745441 383004288 989729443 405017369 413118738 620035343 569078970 891025641 167936406 295827618 468077115 144516247 618701061 467148518 389726130 13082469 484795809 547419125 609602138 613520253 941131478 201844038 280339728 459647215 165052987 182272708 35434333 835465396 54887558 410889145 662918255 177240496 50124959 209771993 293524508 407479211 84740748 65140292 224553956 480954962 129461382 734824062 747950576 245249092 836123108 322993525 62738446 395666434 510021677 211508348 916422837 20656368 327687686 866188371 345029124 499205733 421549640 206510623 232677573 751382679 523134189 861542509 957279075 136845737 980955670 312171054 551388407 518440098 396830994 492801991 338360387 105602165 102426961 557639673 130037929 844372219 115475312 514148078 352510268 659276276 248224304 843839811 380040114 71715852 314554241 734818030 125744491 690305490 945506160 660891225 237623918 346773184 183796542 208544079 518836328 28139575 271845451 692908549 175819701 432917633 142082338 829047320 635397713 789774284 426699382 473124753 845214947 371561270 643043879 529181144 704935868 567629758 915084851 904436423 617880016 417739086 25968069 12495256 707521474 195122614 273587253 831884784 747632345 940950959 6222841 642605278 166956546 484367325 975885240 340576728 930872022 84330949 740555580 138966458 42249874 21918428 572323447 993209800 307756833 813956473 798852231 947570353 704984079 763789791 872434348 822999435 648435090 924534070 698069332 627526351 308070798 870613649 844465425 416325990 519195784 658613220 905335710 93158814 608256686 672680729 242306785 510148138 964146393 704046321 553559520 970890537 565601670 996616224 391092179 450550558 980533216 499569730 874715411 541767160 668700339 49295062 604922914 869069835 54305143 355914309 774903982 807641879 910316364 47336672 95241353 227790652 336183801 179489761 580809902 911052301 796903661 480146026 927656515 79136635 356064831 847784066 901944718 884338406 569206702 661258780 745043207 849241619 179951010 580318226 118894150 201518124 480468011 68218146 154605330 492507338 472724990 470014714 728504403 960150250 830430588 278146342 151698716 574598129 586982829 272322597 338174378 68523177 66842940 395478610 450103393 737714250 260316551 603132666 761697480 764068210 683317127 162861903 428416150 475408677 805582055 108005225 729534630 715355600 395005684 556170055 385933308 506075723 851878 373804500 107577537 730185935 712236191 524067812 188946760 866771970 497311778 191689517 479648014 129328117 112158752 955373392 240944566 75512089 491408177 886203099 921164300 950009165 100965266 542802488 32370432 735871702 161056302 934331588 904460467 785297250 880653713 146987969 283886432 54132999 374756595 247614297 635983483 191512385 982537013 325107608 345846161 161861106 492229082 644024701 702238559 247760493 720400406 168859623 800757961 562629220 437926335 261053086 144838106 351242999 527444561 770555735 999497415 876303783 45553142 39048359 967167206 146099555 987205248 158334739 977605056 645473666 183678561 70550528 171045375 372075200 386365371 786057410 285721715 945744450 82147668 203755922 219218201 681399956 82554782 199852691 180146711 43486383 458168237 375272138 633081522 434343149 635372099 302864173 559953508 53990421 424951493 629151121 787515846 762839123 305797184 8522168 556153243 742079549 111394418 786101327 404900300 107042255 352821941 366478308 707635311 693515119 14846739 199759344 770132670 8275693 727330105 153372630 613775900 890791545 874744702 939074012 855413527 736258483 187126245 396760120 132772958 974647970 972550419 916261889 443434961 57732785 896549716 295571510 786640239 282480565 890150820 374351557 630002276 165454573 510122146 725799290 190634503 634334714 817698707 801884435 590759117 181348848 49274215 378156591 603102046 949510209 349122485 959924310 640218500 717085129 238624699 545217787 993528114 824477645 239775587 537285238 465644933 538872573 210180667 160697101 466578365 540753004 180169339 660862944 600141385 289160856 942094848 876052488 942134198 311079526 514627413 826068348 882269638 212980773 33950375 163386398 211759707 447697031 956680394 733683382 627206268 109031338 19515459 673571317 216487778 116979222 527399479 771094388 879299428 459086774 173538677 148333751 802467079 98222304 295508338 197856805 998585845 322480979 761355603 364734479 944664066 262967086 686854362 381556652 263557163 301718022 925873528 549895205 684885904 132385739 701956932 879163773 506864257 260595164 259584510 435348900 100918122 585841150 228317197 989313401 966341612 799626080 533333377 650073529 793164234 903418773 71517454 582575628 57741805 211976603 506510614 937022985 682274666 869625559 767741089 926414884 398292603 366130198 394764893 57021120 976828290 431705231 351459744 367549737 65864717 85739740 448886125 386715274 723376591 591562758 304651623 22746370 447850913 863634552 281205983 154557585 587381896 555316998 722366923 929638428 766085808 433475571 597838285 550819450 318298219 930053596 184875819 254286689 58273587 980562645 122147797 265742964 360193710 569681232 311664223 637407802 552159140 936515371 982156042 312431911 854531341 702807722 633541825 992098962 88505601 188420478 735362574 500380606 698351554 120157625 320412202 666632402 969305276 352818905 501284342 658139107 801694086 38497473 306340598 630358501 891186902 331090114 887149148 543408575 332608404 767516304 500099585 245054260 432949705 195509064 251123039 711836155 252020135 705011311 333617823 875365034 45861000 177203955 568517009 537286083 470661108 657820713 488029868 959153838 797151380 563394252 804204050 978794177 14683453 681930244 110355079 747104303 721065957 69929055 616500345 527454495 896154292 328265423 303800578 60018837 181899509 794753461 868487906 274544516 25611801 562560466 159878015 206880710 896927932 254521687 577987559 659243294 734224290 736148694 621797843 97572403 203883703 627709519 202500768 673330069 28837900 277278758 973650006 960553664 9654495 311442472 955719337 580774165 195656336 680222348 490444777 722605274 950625709 769899759 468548634 944315973 421470951 534080339 422223840 6574698 676801563 835737384 323775375 384302160 642019147 328221251 753924632 408339932 526790564 522492897 812589600 256526561 282840182 8580518 139266282 308413975 384934976 635408034 161217896 494470689 126843813 140133449 477453618 862217862 442388079 380224374 182463877 38029498 456679567 215954802 958221383 817672471 45057826 692441832 459356937 907871193 824501102 518597869 232922115 892039213 383359451 161233408 931352338 948965154 688829692 544523525 586268867 862942901 722552974 735334985 152077117 654901956 322325620 705299586 751723869 155132442 691148730 370228173 680237473 606908265 853244817 439467184 81762095 905306694 824825943 583313174 997973718 474351671 685608586 577449303 699513871 846369698 283136988 801004335 396302840 642982618 489588764 664720579 527671898 9392923 874415686 581400479 381953698 983542143 864305537 760437691 59162859 669352468 154293777 562086002 652894447 626025164 684671087 942531981 867361048 297234047 798283317 658680884 75465589 728570861 287815971 157318654 755257534 323089088 43418664 663532523 356705105 712505482 966873174 196282206 447971383 801896389 780242411 226660132 920981533 286908623 198254917 806517874 946162266 165513972 213295091 506223078 806263792 676988775 306067879 177344647 897860228 970395197 556377404 301381311 936387942 247084409 60329909 489882469 147561102 10434053 319768382 371260598 843733916 78419632 415202861 934439256 764989140 949336375 217251320 632221526 845309991 815596855 133951045 778647849 766251565 691251517 364960735 422339753 355204900 355594679 364360120 541034528 997956084 759964160 495278062 960700728 934841132 711865691 101120194 760455690 109580291 130253295 366383520 779298833 709411673 619502541 42112029 703870769 233169076 131180525 19276526 632235705 911952708 72474420 102937855 864400989 842519779 171313513 83960404 423084858 442518794 505282111 236990245 445411544 583887845 557958732 354562763 384869923 823086403 790183442 496138955 974253166 515108761 701254911 590715340 902005881 19912457 319133279 603289766 102469991 87789142 294888556 718888274 198374857 807620596 554597705 746486259 22658190 356777208 782895101 601885143 752441371 106504739 116191100 661301869 696474926 905559256 174088092 893981779 124507640 481240621 457146915 932000843 693645584 77770194 806153654 896856130 355076207 213531946 834118374 650518091 431892093 468458556 910255921 574590367 468088583 622613177 558393330 903694754 172837440 969357042 294468984 661318880 860543944 70772974 725550576 425413646 363202467 205194577 310192245 271975172 153205054 384523368 7250953 114618312 730577008 466744620 144128658 861107586 690060917 651885119 400042470 776948104 650428145 791400676 88190140 584729175 895489778 180992013 274400692 800547469 890592240 227683665 981963865 325024246 361892036 468667372 928645659 155496586 358016695 893182920 534681429 812816225 172673650 625525367 937616965 692531134 57664783 126021162 497153558 352878607 788253449 80374982 153947613 117209826 365930308 996093647 593695116 433350647 480568334 673252980 631617291 677038385 19157022 658517135 528291104 708925848 670863248 494147485 909985916 276895329 326662376 592255173 433832120 424292329 704885270 820759766 57179481 544761521 958884205 488653131 944691395 251986533 344953514 749123903 617568073 290189526 906177524 794923645 105352742 183534852 221688536 15738478 39415416 816561167 95685451 924349745 707201615 641552963 418193577 588728958 301960594 52689939 677902008 575425219 58669349 734862618 873562790 661374986 691388864 852999453 868365832 688444175 719001875 109606148 173861850 321784363 980845741 500237284 42440581 479634027 137928964 116573691 102556113 426957434 156572287 493607849 540479991 647177652 675152995 957718649 817130641 969735956 658767330 694560287 640324777 701712964 166640918 962342775 328501415 310224529 701019649 272853378 805503331 651573746 168551819 203333743 130648347 828651531 163049092 510957710 490114163 892580637 92747435 951087965 446186873 203088155 860370329 760911995 846221472 654388379 175460317 177276089 261908425 985947612 432559078 200390404 277866292 661278662 255421710 549731708 638082196 544639720 417513111 893331042 151373309 469633147 625372840 71606565 645417705 273862491 417750357 23928145 4070718 493503249 330038677 874124712 982326861 665199820 704977994 869590281 594241992 302088804 57346878 599614850 571270860 740479318 638405155 614875972 782839008 652598220 567479183 165563821 390449904 672018837 760314373 238496831 643651668 32983845 457962733 746510755 410056132 198644382 36331420 15240366 825952875 678468809 317842504 542128479 198408400 357758481 132796691 36084690 494011374 811370894 601837319 731132759 37063200 581996546 971143442 658020704 470363690 6649556 642396946 927544969 238338621 11249937 774200007 318218133 463682794 949426291 157676248 377691757 718777392 318639701 198220248 692102952 200755828 507992769 946603841 357297919 820935556 590921062 382070896 960832853 272880533 151448221 191438772 90521783 10656323 729721442 398926138 527476695 125626773 696269150 982790175 695478415 140954871 990294496 435965792 336361700 801129534 291150048 411827435 707408898 645988008 808756476 816876685 499770682 246235612 507463036 675949824 154007819 914268388 752633168 796763878 957073939 381705017 917654543 25011145 326477856 308263858 624828661 581683482 62748455 63701915 667764716 945279282 872784958 876108191 436577924 998947408 477317807 560215760 653220595 41224610 512451297 794773425 458125593 861584439 569552745 66338595 642295164 450383364 71125505 681695604 420656716 985452275 936823946 65695579 810540128 628667332 693374485 938959091 653980728 223310126 251059664 830520513 712135421 606475466 499358746 524340917 524830073 844897304 509642612 415782178 488338727 52184448 440168842 597392838 335777574 900938070 644401713 41838280 350677821 337466066 370100321 544905138 251664603 802476821 902432572 390616186 627462166 738462246 797183764 769427073 452522161 920395259 610590295 651670407 75082511 334267243 885268641 370923195 18386753 134904117 312260021 590944179 997508607 414398727 80373886 554283884 786818982 704807532 847496211 665366859 378022720 730060261 508237483 126163998 626850682 204338124 321535658 123489563 121620399 472642926 571593628 162490589 676216536 364665852 794872118 190605928 699131043 245865872 562021456 77558830 386623578 860452392 302134767 758266624 153260534 742934194 550087742 609872670 25806617 369072635 946480016 710309677 508098566 647636414 303588193 206046520 450646191 131431324 938299219 948940216 180429224 885612575 847072305 381539975 256238900 991646647 909748465 50786283 274719291 734790076 435669930 537065872 143898950 908307316 366639781 690892174 431538067 456038660 27960135 256898400 956067326 147433087 64805159 384636654 210699278 386857181 891619073 795105155 853569268 335203072 538236340 499643093 78668423 657812658 102814543 318550014 48283203 554004900 663402500 564011659 349765715 231410288 159304496 255077728 20327556 288430996 243027538 475252696 514346320 587921021 457394715 10752176 548826324 545129593 463603032 102669068 730391001 663216581 458948618 743910779 883374796 101105276 780539473 561503470 534225605 660850094 756520824 680363975 321650820 578290763 695367413 410053321 683257198 552189481 246997342 943514144 9036951 809002764 670717820 578288227 771241907 244805532 58992953 151050640 5427742 991972971 642891940 908271115 634764263 593010928 358797566 803560353 467338935 242683537 351874473 286100104 761176806 576851346 929281324 54473308 874775670 439612967 677465663 945835300 693466127 335402344 932562105 1698382 616506874 86189659 919624865 731433389 433536820 829015264 908037409 269164668 807737948 44519123 15881613 473800294 333447351 932619492 225551966 486114422 913263925 145992633 59035193 135542816 477327212 714874074 543435499 655997505 604765853 8524218 111011426 136601121 490964143 913146032 907809215 650673770 32455473 556929535 373598784 769765426 82700891 875853005 334231125 338518009 877353483 480326705 407308430 226825377 145765064 251507741 852217512 422465656 712094403 245165688 422929029 733051959 875951315 659500043 245349683 473916916 935352692 594029443 388585953 463866939 347927506 307755132 760077037 505586420 626325178 220228729 909009624 614519417 118026659 865493985 569708882 683344515 57158060 650762501 159780907 747979066 310270621 211559198 901829724 926302763 436937191 174396239 690778380 690324298 793001885 485261729 986531973 448318966 852850048 373212675 552076090 996406259 392500728 142089040 937670854 858857583 829733143 850015306 697221868 792549116 274270607 900198552 187940506 346347676 240404416 23601102 131671264 935952562 132857525 521045605 506510331 731918348 19895066 674661051 330690124 916379615 220582985 59321885 736414562 836551367 388330300 422848952 172455151 447946185 144379297 76138410 780341194 941029716 833027269 125413875 843500797 457118783 96230555 869030777 423017132 249377475 472331974 506591505 552176433 707847048 445520782 663188083 957789188 895935643 766803680 946659647 972441800 424725614 912575831 653027839 709755466 309127908 299870508 17363750 759246204 209875518 142895948 858905099 325941880 626941994 576190533 103921137 29818756 929339584 509726539 491721983 578428426 452636024 569767233 908716361 630232477 493780540 973501866 248142279 787141368 395298393 646115771 495159641 504036094 114647424 667564873 924016585 363844028 986269395 994919886 912616649 970802533 147731411 600095099 263677682 286681427 503769456 756046358 101283524 682205961 960320767 86182940 964870061 965522226 270165308 133250476 77864182 950421155 275002193 27258762 684319968 837135703 50085828 564847655 723295625 622622575 745303951 566925466 720575992 504160313 545859852 455679909 494117667 241916712 852940549 459085482 128748255 48587988 69491619 898503357 867311857 786513414 278631292 901932434 136583167 983556773 994232464 694193290 857394332 481673923 519577920 515897771 681004609 408249247 842217311 72666791 908581967 808422555 799245085 485820881 271970575 379222080 77992983 19879213 149414578 6151493 690590295 759678812 885635155 8737155 359852869 353710261 992428787 43713278 745771707 353568809 339460729 875278561 330504691 489009243 985813174 370306174 333209235 481249934 565959784 382468179 185955239 504045494 343731756 546925825 75681447 61929832 801770381 361115730 742811761 534224613 115585017 790753854 12005957 883524114 518459342 461125085 895546581 209519743 183786826 245470321 941912372 276685923 439594905 800949353 418020833 535743388 373913545 661285461 521448385 491242167 21253590 760854001 139043103 259345370 365121951 775258400 362081970 835541989 970348527 5966575 996843671 147226451 725094263 132587153 80779603 221357898 140368846 246320223 662888661 726834845 253950585 920848094 521435503 562047678 947062238 411929529 868125921 189169874 353026130 933372100 521484109 793147039 149582602 115869432 481288772 175041936 413159208 700339066 671605179 589187011 687392953 145773207 8593677 252654320 240349611 911041212 954847743 737825669 485610199 998312844 707288513 941536139 316561662 220474566 50845158 294527934 574406604 4270932 384653165 905884794 13649104 546169935 605062073 148032715 420091525 439593963 766921624 388718427 330105162 727615120 321749571 739014530 893941353 311628743 366360145 31077954 568637716 831923525 125084363 208465728 935182181 312686053 545076253 471616972 952764762 302925993 131100445 177360863 68732896 652996029 261125641 658698517 501901255 15831922 89555843 612223929 275542726 414942537 972909469 56091061 851595905 69223646 952751815 791914916 455346049 371187971 3309282 105887174 200345653 804671142 156019253 704077566 647043576 451732454 667482726 88097249 298418701 991708933 177398675 923252642 39550107 294275437 570671923 175058723 140005811 85254323 910901548 674250729 836776527 804726672 49984717 117474083 372659535 352152809 185008589 106913449 963509887 903686858 515426628 561175549 971212684 23976292 464249018 820793152 583892244 506599957 161574687 852658248 32778646 738640989 111242180 999206280 860283 852794601 784970090 519261475 992103700 967227533 805430066 314707419 581296028 453513026 703516076 506210850 952080434 396386159 358189518 314901776 218547681 318890395 237221874 250072421 331050907 956246522 998319330 350339716 784965429 209975018 996089030 307729794 30302836 841528622 940151351 124312594 748884995 962067631 354027824 360113044 364676717 454681472 442610200 532178449 496956721 724886238 992736444 261939508 974750125 72214060 551409998 348504922 442325548 870248438 418087792 483014273 716132574 972001004 268420391 641778508 288377565 187719407 510700509 635213326 94150442 539215355 110194024 916046269 683439534 780267329 842758406 44546809 531141692 645317137 175727197 655269129 960621452 565684967 481628793 220504794 408203326 511636071 756510415 140210694 841462749 684352604 199476287 504782798 138485208 252764857 47357450 952080404 157661325 32763034 952253153 106891373 817096246 326901056 133900246 51181323 907261444 483355418 993128810 614000593 953875714 210632889 605779583 478667074 931013935 240625625 528392036 688806802 586711142 892122715 113362125 485305238 596700020 84741452 710804184 424135630 836676875 23675872 577102861 828065633 623138496 817063024 962789971 903964 312903194 322324867 75346437 78131323 226810239 478927552 360292060 710214808 808740159 90429949 772349185 512795454 959928470 808729141 87751679 642419677 363263141 8634505 421796810 298923657 539493234 139876678 75868098 158149376 406844147 99402464 101947821 25825710 616167933 674090738 527975093 884339360 88400211 71603007 916860528 727607951 580320926 270245040 584730588 399690196 167054706 432226396 226092129 601355134 491762756 487043194 938048198 960248888 67504505 88726898 595058245 476860252 531246166 537718988 69446010 845105639 663472656 676558908 155507563 743807358 334406846 451496094 365707396 38304631 215933539 294463733 502373274 208216515 940962279 640841066 827431148 460312580 808444445 796131412 531145502 201104000 357095611 276812077 34318397 104517929 106947426 273831318 963510974 804931219 287872672 265371741 605192832 227250942 288057060 830534258 562065352 502183251 112934278 964869620 250231363 771529759 874944969 499940134 898098179 896166555 612335572 155801456 653051018 235049380 645060538 113572968 736520634 389263556 922476662 467904200 226789602 274972458 82801892 935193461 678115766 609789610 440229587 1288822 679677782 753033416 222576624 48472581 904684869 594969000 720152279 877590390 675248751 976218394 51980294 204047952 153001002 278041492 733617898 879065920 504256822 898373432 803787475 973512471 419355319 983630029 411047416 193566671 122555190 136181439 994059388 912907661 823993263 537507879 448169835 245034908 111564410 732679108 528150450 824630639 506353246 239641344 329212715 316451746 46361995 429601511 426942875 850989815 648316561 994222387 733841828 845470043 185988465 72850750 389113822 579047134 255723151 778051860 225287616 47557311 773942712 693343332 92114092 784540768 811848995 224593797 322325225 421170251 64419437 915884149 306070187 813418804 348210070 980166106 294511880 132335865 272770580 39138823 368688386 614742423 961684916 939551216 977744007 23305790 259344826 101589559 456885603 394601026 94011847 255488032 656613456 585559579 621529834 91889823 944141297 842069612 885652119 295606084 466744271 107539717 677438893 821235031 447114073 906239445 120331119 866742456 203570411 974106617 132671117 958178043 962870981 529368754 804477464 46432339 660236303 941244527 855459986 916999842 936845277 244119999 66578142 41631342 409081382 484934752 700144456 609896427 677583053 512022583 470645896 335781865 711324312 50553931 249606843 523896043 155451967 842794961 300512868 156191769 130757971 209746722 392510834 357826110 9663322 629255368 675937851 47732950 80465596 879855721 568945272 683256577 36651469 475894743 430804562 247065216 126991810 605058064 474314070 358270152 926034878 652104248 640975227 868451311 314117578 961437336 886371864 571064241 275843545 779332005 54425848 595368571 770513602 519657208 13606728 991837782 998263113 100512855 351278747 307198975 729091858 485592236 993367533 304082896 622685108 911012617 974215335 145058005 758924709 6365610 124718996 935397304 592250695 899034357 821410280 956763607 543646691 782793842 326192708 713304619 155306156 929188308 224908205 59171934 904428984 880172025 360889995 252910017 425187597 160890851 293576120 64723527 590699407 546218427 13593456 846180243 166689297 499586519 81829464 598072810 507459150 442731441 510171262 774505277 550895590 719913196 859971671 661695008 541392739 45550679 507648958 550644950 614474549 50583774 732562684 274147909 808616116 434368163 919006652 462185212 70391591 992145383 366037013 254712371 100294832 362548756 481085827 486315718 514665316 588893887 863765992 669284418 891597375 768604321 575810200 911014864 46674460 535889566 372928322 163181389 685077705 344632004 314646281 491094580 617349106 749404484 773270892 588168366 714765368 636135801 973504863 689324170 516519446 308417255 420750384 302123073 646675704 784198199 227849890 855186414 103759918 798638656 662788569 198832221 846227444 992080634 567253088 447393787 564903529 674110090 557100334 409158620 549681300 25515068 795839136 546482374 880791913 253542274 130186618 382496794 947265731 592543992 573082093 670220524 781748831 29164384 409857163 952880882 531053801 372212900 98455376 475025289 862828785 199599325 929738918 583155898 795710448 532298049 136291927 461214260 909064522 623941938 403189398 745289295 951036230 569525569 446430983 644688649 699155988 727729181 631572392 590182666 321885395 614963619 443981290 177844385 39112829 918068181 248799138 75943108 545739007 403807198 146864655 201994263 186189865 143117812 992291027 354260955 322189493 2260974 225431802 241935618 212081474 326684949 400515070 944829730 687811935 463275599 79909050 652666751 639021689 428703633 671900788 521205242 695970024 224557559 161346007 680521766 722673904 945316547 693392890 976083003 516671930 843961953 398207323 984364564 26993750 859108709 771603676 947003965 389807295 275201928 674031311 247163616 283235027 341416113 678042597 149893339 223246175 530619367 79718463 8362151 724802320 348769886 760069213 769845102 304745860 211110517 941874226 340102145 935309371 546570925 234979345 617182674 30963613 354061486 555089845 146128903 420860411 613103184 999416647 777914465 152833167 639195788 192331856 558466131 469696121 225967239 730207434 68249077 779954629 283571851 969385486 185700098 965661792 170894088 360188391 148281828 783073576 129925022 868513146 563558571 833283293 766216208 646998116 181163535 917937959 908891463 319178652 663701098 216498580 131910231 794885260 34455753 929483429 883722108 108303360 909047768 854584500 892914457 58386733 106504433 728201488 404007607 657279150 764921615 479630055 301240844 940240781 305642460 799999571 519432178 790679603 809235625 746596181 614856559 909375863 935440747 739562709 988157611 785973140 879794624 32270758 812132857 782260532 483599346 251407746 971911380 611033696 501429230 87489033 859775715 336028047 76385358 154039235 474518767 183591071 107566415 160338725 937861098 903247314 530819033 792186754 939820530 758950104 509351034 210731042 293905734 76562374 240195690 549002539 403478870 530167323 690631307 135668399 712618420 886756793 78203998 636552102 448569112 648204781 400885528 151372530 455257195 149536879 938054799 65584733 81061808 106689626 798597696 771010455 160468259 844146487 981652566 508087610 119231515 176565741 95276701 559445958 121929242 761727447 394742157 181867176 426641359 817541039 359235909 650274093 471009803 754730650 248845455 997145488 13006023 958599465 715876309 394936819 679586347 885007439 246070323 450790237 572167039 620114023 659147879 402086593 327851062 442684472 867689942 141164536 132206319 512520176 290941842 286132419 319043177 803839525 504980819 34965450 841649809 840064723 824387186 594904995 970786682 946676316 409892094 925407680 726104673 571562644 71049893 669541769 510174372 498348970 614304697 915760450 893112534 47382337 689087037 244642080 180587429 691055449 300315864 654142524 516642541 234918754 767212506 94875029 765437616 721736497 212273720 387679508 309202973 811186178 460572821 199028876 458774148 577324925 309461554 611017401 673527907 206159021 708107780 930416695 952981595 451105543 219143072 730473104 393335353 381101416 791445574 488204601 438527468 843143961 333917150 711272071 252170901 253819075 925813236 33738940 3921269 752993148 429231298 441041157 849898740 676390851 689439271 635508847 642450346 801213564 546659497 773994231 322528592 532638197 757851256 413630585 46568394 311876320 745884268 837997506 12544037 628031841 243427074 653977988 540756367 96532470 716598628 564164950 477322345 981119633 224981600 645245629 517851441 235689349 826340206 97373210 228910486 631491728 410134445 803324361 684825451 81883096 960700130 815375610 155031977 583642858 300994687 248466643 685389686 841878458 23605402 981555548 718115610 464802215 81293555 462535304 573576972 958721651 732164592 833426734 987311333 868916559 1666465 9282065 85617257 839197133 861211325 140071128 548533379 812101358 78062500 730703638 254434884 365910548 990251358 259580228 985281516 860792846 620898456 613304261 183654362 405335056 517195946 530858462 798774684 885472955 840738453 437289667 934270180 130095373 339811836 304114317 680955533 996062074 196084787 813123389 917864347 805243604 944633134 426322365 934472248 652253528 77986958 738671324 729326267 193325999 611551386 712278103 742664344 269550561 754900802 258502603 155859323 596770919 357224733 279555524 253788713 49170204 443102823 22584498 924327319 701434951 667535883 977615856 849351137 526068117 936811159 696840894 9852745 797871385 978413891 201568071 995833146 494309458 832911597 122578840 396795721 791191846 415105308 597102254 8390193 126388963 75775745 161838953 894754516 220246842 528587888 445414802 47483198 873422669 733903598 577028827 324606882 863927454 509437084 836982237 592666461 535911453 124629326 80190745 92787182 175514908 21878649 765552631 474021895 276304474 533909308 198160331 977949298 974024446 777010526 470244557 528956723 280438675 232929361 262274844 428733544 706660110 111258409 303852999 897339230 824555981 791165606 359920057 381794699 220271765 600093745 329960655 317925252 121111444 545178841 188334791 153106449 210975071 809510481 448135246 680760093 692624882 541576702 570872308 36547257 309675957 365919717 588461360 994187809 652463729 215338418 724642663 270700217 602460255 130283970 78775009 207934218 679735579 743235090 476377548 877979085 320842922 473731913 762537286 357645014 748192378 616725429 512965708 953547308 412584543 478937676 999954124 578137340 201929110 906754995 211188370 474326679 195725257 192623917 963347036 967676790 566503934 392162729 413089480 376930370 819130798 663981758 86472545 939492545 977823671 65061296 884853654 651580648 807866716 616856160 52218308 34692051 227206479 39402594 631932456 785642693 635728542 717673451 374193136 495912489 346605515 239289560 8362025 319785104 577017786 855805879 429783247 916996537 789294265 255109297 67160000 782346630 400302973 536042655 518009801 862400768 213463075 89611264 339254681 395792734 911532847 467237373 313492168 303782651 583602832 323948898 792995037 517455446 203052698 779426219 804822075 162476828 11977996 829848563 501933365 423573284 913602570 235784707 379638022 104091492 591659810 138470219 693012686 73999621 810401352 352310753 571071639 455884364 704024797 311063939 707988561 117133744 481464991 887117979 169144533 844689610 802679490 282168630 427051239 26389344 603793110 743543821 406368813 701440605 964796894 369826687 534020665 646181075 527370554 446808210 220079492 55679228 785809853 853920246 51926643 23330108 593303701 254377732 511634506 132396832 785817188 27892408 706090558 587086940 83931694 81746618 205827686 563925446 850308192 774702172 715590340 539496553 349762003 49843091 845106755 931956328 252262589 982785535 495446450 274932252 378959305 30353892 468251339 271647997 480334083 928186678 141008686 979197104 59888863 116030603 208967527 833797632 421598522 265231392 525807587 120339938 446394460 263615710 656276991 409550958 98586607 692005204 686941948 474228712 878647818 718890171 917738752 256851388 112305194 632820719 95520802 941422975 493957175 431965816 428619606 6994921 115371385 499056520 549145470 733348831 728550823 54599411 544991334 319006061 315445726 89234491 404805055 604308675 570668969 909646213 994698271 330238270 674400749 999479969 974761993 278300773 532630531 635545605 832720102 122619612 729333927 836315091 628368392 685690748 692493569 619684048 28213161 152292927 16648604 52602733 831031270 619989833 160715116 859726526 209601487 840632288 712186579 217905030 480034897 248138110 8767123 856578861 368587077 112054970 317118166 813083324 843753581 581978715 422517817 209436145 8862832 826213447 718501043 132683305 132576229 979094165 174224043 572044649 573536320 50542208 663858159 48943970 842031847 462592363 501656242 826176108 679760924 319039457 269134484 485196422 36255257 204286100 177015706 7388247 804251632 827158368 697024305 31380012 635729062 606789706 745010477 250559745 26159138 525806204 118559948 604205425 46497848 613750600 56888242 628036292 376701344 430976810 841543919 289456620 731385595 804243657 276850167 538441853 136565714 31025130 697627046 214734264 426175895 503418501 790679362 216678788 558178978 19154864 81096057 921519471 627512118 338898101 87030113 97949619 94773371 838476282 316320626 994832940 840343938 106242583 741374616 765104995 790739015 697471680 849351966 554584968 307193510 433228769 432348089 595989872 141838701 274401918 816755332 400380828 3541324 550350798 719812104 317673266 914617818 513657900 732778544 872144132 508013213 856475162 242540881 994835591 576486394 290273604 511950634 665426648 720575555 119750527 181805534 646611909 976436402 469121474 342267132 897863350 700895337 44531507 811441784 658188742 757039982 326926365 910479283 732269235 930571705 627789557 370540652 328183269 133791770 873007443 178856404 747044716 274408283 114097914 179114369 237509116 473001247 603254488 709707886 87364090 291233531 864746497 699831299 211374694 129567077 658652332 810223881 544935926 171563713 333376320 933827769 678146559 119557209 149156166 803332526 465831292 721181530 209392243 824451822 585164315 730962912 586767266 367871208 332557094 858957295 540366292 501038193 392590998 857896554 286253367 66637250 589556749 638271015 192401949 343318916 262858188 295043295 945836035 379178948 849816011 638712881 19480200 783809270 499298969 730322086 663953531 458897145 998602361 898677426 286652111 558525968 22101584 675929516 386626460 435661803 116346034 635318489 500840232 409855645 964415699 233264733 412436193 281318307 673426320 961644107 605417045 953705188 996338294 923758495 93897793 910782893 259295918 200044342 40010635 679838643 768671764 981898972 250234425 633392658 640720422 500700226 910916226 94005840 915475210 190608896 585752512 277747034 497693328 956763289 216231289 224713864 590323505 103257973 848208468 493332629 868375817 929004518 150470951 212261541 317845216 920835620 143645164 183392069 304470310 351831635 450320583 110033772 42063093 664247160 581393155 546453368 198643462 784237190 650163219 796783150 149208262 28988250 525360272 551087546 895893826 42429873 366932290 312777395 761384496 982151221 443846675 531306258 317013235 618439542 989746962 626993985 623499151 378438896 248395137 82118413 60451763 315633669 311395005 724350119 308328887 215298811 200392021 591956911 87661979 871269380 392230906 77038124 392285702 732974650 253602442 746912136 539315015 382983327 219429638 193485722 376191061 25127707 268431514 193203616 249796047 663056766 604919450 291472189 926533887 704475269 589705088 638248833 370215630 962205902 869871086 219186143 636297946 495194082 987284403 80216884 375658080 645703478 628637375 468024006 223384390 265171744 410555438 254857029 45348636 998658018 501080391 543394752 10577946 135757991 333174383 445280957 632632351 610701949 655227453 979296024 187403185 787447134 582314088 899607844 736356606 775462701 22481627 819186580 116035299 674995379 533346973 660488326 284595161 686454944 481092318 445767297 388057867 714846349 800430591 304124782 788241734 36837372 437033598 962671527 64361986 170769752 727821837 778582759 339913824 411444464 373381238 214461264 121117221 104065534 489149630 682541175 679613632 46635939 158312450 422170185 157182029 664121833 269952655 499101225 245440132 526243519 863575767 280668633 73996753 336870657 43351160 467815048 200650304 856252271 953732402 863331275 337460877 584121779 760072692 682393247 421290260 304852317 25620942 695438441 966653149 982631653 346983677 959910390 425769110 909652657 284595683 70657148 871297432 668563972 924043277 386529432 618686177 812747285 68657962 143751505 138087449 141084410 808026140 753826576 368653967 806555319 198203360 830804653 649075771 532357680 462884007 878103143 526874299 550611517 194031295 173618910 315379798 533793426 269902759 352754212 810693885 933308627 156402943 808473775 887830855 787024265 943476117 561811030 9597296 219710242 341768793 89930596 360584293 911036154 826278251 379435398 746387633 53084244 770797322 62945486 212852618 130590040 447339685 472974013 742862293 53704212 17567178 691499314 108539155 671680391 746752827 239885187 919044726 519397004 911920085 249921374 397813718 658622704 424939431 850630628 88147122 57325669 594047202 494760088 513387314 361304451 602060514 521772138 790220066 975609547 541839661 505301678 526312189 484664229 466308714 615233569 45090526 273659234 195970416 698236391 357217170 964207168 633072697 518911119 940220290 722065501 366059236 827132685 820975563 301284033 48780482 423462336 496323369 351162463 638847813 315212653 353892098 989307664 797773063 64048703 721587305 792140437 186869963 576671437 646595344 10407319 757832316 337190674 157518941 534293673 449828400 26621816 119624275 955819840 510916384 575126472 583774882 966519491 2459312 499946043 597264289 98093430 46084970 956865643 306202958 976205710 864539139 179627100 543524437 109108261 484125268 343910271 52717312 970610230 64782437 974761896 128094793 283797424 100187995 119952404 685212878 117970532 494364812 722088553 720622550 236832521 327960692 473687475 878134867 119663681 236971959 681800038 474022872 905043861 417040925 156294243 246943656 903601783 91070874 387277804 971202474 655908159 744598349 541161649 269010283 899996719 239333494 372506563 310250786 919133808 964244352 374675365 61430449 957054230 699568385 717186870 390356125 487775766 129116339 967667401 795120406 768613717 302095479 782676241 180017909 648414617 871791960 527527465 954638517 604059027 461805199 2461705 291044737 18895582 966246000 475208270 846169127 271881471 668818821 723280285 464290847 902461528 119295858 411322947 601038471 430807358 863913488 782333028 651597094 775916778 595332187 950553999 789226861 690240127 97382768 21402041 180808562 33616386 513093536 896466495 117079796 965867879 449827162 917373159 27686491 765287302 154946622 962656475 21183414 533424418 468940301 158174132 171403708 668924388 44852654 78697582 287931598 943254365 904614972 608225392 579323889 151265797 243398637 963861124 801198549 449367102 836766500 159625697 561883090 969613138 898908529 72999202 975785188 178894961 572032131 567168849 862703289 895291317 154788662 806674134 747969688 657900318 621002382 910383754 978073215 263232920 456022198 550316202 619340297 860783602 951035904 367615963 608408447 483941863 318465003 30452775 777109201 101525268 7420948 916104198 735826068 229565448 570182477 861314900 219477257 181047603 974207620 134475867 350062871 41604586 62738904 331447489 521695053 508182384 205540235 302862497 855592675 378740723 755350278 847838068 382086838 512126846 834872288 49010978 653376593 997801742 621166803 952159481 144378590 217166211 926708927 408104619 254039608 776723623 715424179 721643863 916376033 383487016 373191650 695650947 813571577 129303205 920470695 714442522 253077077 636517530 549820291 780276340 986178921 450747763 150262562 375655757 45889367 174163072 15742043 245626056 655772899 650425853 30128933 542004600 747830910 425634310 482897829 156864589 585325888 490461099 239326501 399745446 438691817 435892695 284341528 825108040 990910940 194513511 398392349 578988641 500647469 918257435 440380149 480566406 109782161 421078682 502033288 63496371 322359400 751323515 68357102 492099407 613542841 345285425 648780129 522918438 175968305 740992803 680056131 569044847 727538219 67039124 458360352 753453765 91531685 231848122 63108267 155583533 311023427 820131247 655294142 647114518 287812440 731573103 274429024 646843223 663025884 184211945 184679097 572287529 196442221 422745320 48303900 341770035 578514256 350892333 40420360 738876290 210761334 214449490 168774172 262764175 144057206 24925412 866896679 148069680 32254352 556613463 43014422 368667824 319115949 238915837 984100109 52846523 604476505 842470429 498683975 393881444 215507659 91535836 294904116 816697900 334783971 702503246 101845094 962825974 166372906 175203439 893554587 614308367 469359055 110439706 633167024 997393964 226586023 601658909 272104630 613406061 246177331 808088103 196401886 411282514 395124377 338055891 92743554 624143054 853201320 342258079 681204521 174241074 845847771 454717174 978298746 329784126 120184653 493816108 999518794 646736150 414325959 193878390 475105942 966335560 285033144 528925945 760899454 910102216 124059961 633526203 213272912 139763700 205609476 818427310 191956607 728458643 456227719 252781996 696579236 336898255 371917772 83333752 422671748 555925310 691581837 504324537 181904907 36815839 766504233 101076735 245496648 34384406 48830886 863334084 8313724 742577329 480555445 422699885 687428361 577315557 251868844 680497215 196124022 35046733 378253195 83598957 965965435 551229170 175756278 488423951 972215536 994891326 259136835 928188712 885602779 574909960 4634978 941398688 78056292 239983246 384129014 5660489 43224035 814646388 806664009 129969370 395306703 112672713 39146821 977435384 200123852 589913343 451266178 995392554 680094630 781434357 233924930 693454048 21200208 417730286 116859499 875887224 19146471 516858781 706516619 94815790 805933227 483562514 48902362 243763759 539432970 850489292 866806840 944232584 604848278 759491249 289571373 544690742 104482570 798148109 635608039 51106330 399770187 533349270 911669562 411710458 863420513 781473384 303728045 545333132 286497665 370715658 271988577 894667623 2047241 474851176 15105573 592495626 614291574 276128219 637204084 741254882 472523387 905064985 874885740 447447870 523024357 632553804 297387730 549507416 692123825 723746816 747460123 823399762 55317251 455278893 737122646 107586098 710468133 654941485 746581832 880021743 855835021 89680581 423747929 556025181 725110738 941113893 127979667 670871358 785344445 623043553 220785329 849726782 879600948 718495733 292770067 247870442 854934092 115782342 482617277 843341504 102855232 985433124 599153249 214045473 286469749 704975938 18338645 468630354 268627317 203085503 968202905 806006151 518297586 186904990 627138259 258693848 302787528 776046671 815191634 525094984 519766780 809500324 492548624 886846398 615189176 97637852 882546859 217575695 821929551 996408734 491633000 689711345 59592253 453520117 560642874 613569541 726519075 320506710 231343540 540352470 103582926 460225438 508208667 847479253 766514482 162721044 849693264 439733851 472912747 195799142 217571301 453215657 344871608 58736295 68613907 257012454 48248713 205621844 651063735 256663337 223164525 124609620 441513558 270491238 831303458 660220661 771024165 911759488 566796170 768730344 587917560 999452738 235380915 424783950 619934798 858460762 458293709 588851627 81933903 210320997 979122997 191897837 951221706 553526238 503119213 168987752 882442806 675088182 577283104 456181722 243232946 390527673 626643748 440808299 299238665 125262242 736550770 791752355 489793700 567067922 238022702 440039801 335709599 258557204 636964771 448653131 154526132 78509974 232997954 32664545 40769872 968322418 325949354 685763682 450361987 570414957 357814684 590633576 563899901 833688874 142782724 656256240 560393762 200103489 931710199 271098716 190707194 262825253 872087981 117621375 648181301 75269181 185403787 682710409 686562855 665581260 286845978 13413144 93439694 557214729 704987410 833458226 446885335 962670600 175409995 849810246 734060685 111118544 446866886 188790054 725810406 954752326 651952308 313396242 842967174 616637503 1173092 916130478 698592176 833760623 862547539 321377544 50668631 281109627 860628514 234376086 487530769 628665322 380204702 237190707 162288154 493440048 688963260 946262821 160181340 446784678 777628820 591573529 548121192 33306763 11115629 683205924 381298035 907830280 461916077 894970309 506964059 32247091 31875563 658209761 560336042 110273790 190136802 309837507 357474700 84073040 546051701 217213987 280870109 717009649 839827375 798846234 872824344 145197712 202378177 996523829 666269543 752425928 366190091 715141976 939895446 903194906 248160779 790796510 491552288 3018225 635739248 336529540 169400354 557209501 129583117 217629550 29270373 686312020 597524188 256404011 214659156 51642428 946904832 300060589 392034828 935553116 488043462 338153042 390654556 701589926 632652961 983197922 10957171 72217586 165753899 786112905 62406553 467481347 548115749 943936728 772143472 507261824 441583486 133194452 284735069 889161213 266473291 159560156 638888547 842487280 773373889 246370240 718088496 335060670 534884425 91611318 282242847 284075182 67144555 188952152 914109485 411711986 9834458 147542191 299678464 775746978 20619637 221607205 9484781 746583744 261168698 633952658 850925540 7020342 192637785 674175792 987403657 397430485 988578849 53018536 335894562 573236308 417469201 31916039 693282460 560990297 801712842 716501950 795250835 463028327 652680472 928187309 357005122 246600693 42144751 912431386 208976531 170997081 972075113 286005939 78157331 766898900 880883656 799802248 566644218 696502162 715260538 627622429 440820265 556295843 452843283 814494034 975115556 290393598 716251979 988948857 977385756 939193734 862161671 623711557 600299243 333223943 612388177 69895888 40299275 680449070 998774620 615242193 96957607 89808790 96067975 579867308 204882060 489232833 302280275 731375422 712874546 309174548 177747304 203726871 299971771 188986855 252055711 829528413 670696424 843438958 386857710 629853339 111205166 174394062 346636156 824881097 228891811 909987853 458792083 54435395 591234565 737281311 887025319 79917517 355991997 748728536 409279824 996499349 446970327 355166209 324822102 847151922 578875660 436125247 289112736 748681120 287603646 248630562 625750341 16169028 842670320 211907365 123416188 392513515 71297877 101512363 357024430 534897612 26334783 124457720 401080160 452843139 620873906 27702596 253761610 893661970 521043029 806913443 19221573 342544364 619778165 24452120 590809173 739093988 14102794 607315343 88694435 250028855 470919605 603097811 332455814 234871946 136999611 513586083 481418358 739984362 239519242 789448092 894989593 346948045 440688191 428761421 554430009 574348816 978205587 853700896 742492872 358343417 803475184 915442292 880564451 232174131 88778469 821965446 49202380 159412183 667450538 289366405 824360433 108365149 126090525 736383866 471617505 382081198 192861127 869881191 902788442 551499033 558114260 717162022 890121535 93023823 713982751 513012613 194524058 802401645 409175844 422253364 685718176 459300348 649499663 635402698 932297644 856530152 44888489 883040717 813562944 684631429 233759340 89442976 610445576 944300177 891437177 774814107 95524566 691678002 132420756 983748337 671666088 113686516 238055728 994948294 990092704 720726477 730092386 834286629 955712521 62364953 795730923 454822396 401685076 412656287 594556974 187272232 815782688 402463370 207051070 962285159 664153390 963566451 321269968 801241445 540055146 288818516 847959622 305916334 300592360 918938259 127161255 872504512 448072673 158753023 662851231 561605628 585797307 885299402 976198537 23853997 834244094 375689107 982668384 860116478 286291042 602511713 619917777 697730573 733513150 58195868 399173670 778986713 978179607 102989856 498059864 657074252 228522135 361004068 199189768 374500411 551853714 689296213 240482683 587351385 955220613 757170870 468670112 186676299 973295888 422393285 480153616 531873432 208685056 459273565 894049547 50125236 79716170 861924031 278200181 851399158 993325062 1794205 420528352 943418785 390672760 451315210 360455043 366946269 827182095 609543556 441211707 654356413 480780377 413829106 291391121 718116150 952483858 94650271 348734389 177098799 417231137 310999361 664378749 10524524 532500623 138934514 95828583 555640737 989337996 842140477 710433181 166892136 220869752 441207821 764283372 697250624 104670679 337090996 839788750 838831253 979908432 587205621 893658464 912526516 111245496 469314799 77038443 459575514 81488139 925524021 609788507 888041001 94626666 619545016 160597577 444968614 573507109 739658969 817636087 773446212 625864618 673517401 391634631 636505566 232549271 918178921 636758989 34784311 503898030 113893277 180435133 878210801 211688668 855982577 130054649 730886562 548891186 760890570 247574148 506948295 321449454 412096761 20792082 971285689 427662961 396524465 674897145 145729734 527681862 57993613 826057527 168759327 285030434 852385172 836338037 544888540 936452574 87958580 636795134 924845824 170374016 135041090 995283407 639878005 468181811 499705853 759210370 940291849 725610311 504095748 269250146 3840375 823213882 293606508 128030302 156311137 886770864 194478501 81746956 532854860 297779314 680883599 868532651 923892144 306732405 863690860 614417954 359129570 107649488 588163055 815058435 153624100 278059470 792463912 735177346 34015391 815831252 458566805 931766400 208685056 137115766 568497439 807866755 845677423 25945971 147689741 800420540 66635676 993795243 374590488 959447552 716104122 936753192 662475105 714452689 451343734 413078049 668960868 349190485 563378029 848048110 424374806 621882715 995791388 861749013 958721995 714263385 991216881 407437886 73632830 156852078 387168054 161406528 616458900 542134374 220597036 120267028 271907165 170708652 552556272 206428894 788559757 696200025 119442830 827843817 949633407 620148010 612193780 190151336 566052348 140291464 662522366 921497270 978816815 559523203 515609452 438789079 516392364 130200785 397010150 534211573 339140468 976449233 176647937 623380260 919208171 867693965 678785331 245396642 799365595 776735406 716601053 429970383 232940668 331066002 22067784 797500725 208488556 819214644 318686120 755672969 748531121 473173310 27974678 902994600 398966196 367105790 720417938 58936978 300532812 856300908 86631172 741974646 809762490 249355046 617805632 313369509 765853854 969913716 506437629 333117593 665834761 301675333 87486941 171118070 921908076 123442222 282315370 344558986 801611434 818795890 491412756 758398279 656828932 131614456 516271669 686745668 83458601 283016783 830727182 785373642 649156140 44759466 381531592 793722433 560327310 91006188 370181750 794888255 677468720 978913439 414268431 2418554 773570916 479081709 44474484 430554586 261283546 74333358 336954993 13484139 593471157 589184613 154190516 219621469 935636343 206632245 949095643 521780236 431678219 232864751 703954017 706286074 803073994 359874571 191719858 233281495 393810288 242682023 281570594 288044402 177969186 960133514 770766822 345332166 84963183 701457958 131143458 637707771 301099849 902879374 918184670 754328662 348839694 239156871 821511437 700392270 976092294 730594419 821366404 720968828 769853661 619427427 373874698 974801319 708542887 937117453 52712260 909453238 643159520 893837011 828191172 462223297 876531442 602054331 952943622 272581631 862910375 733383027 141984870 693078226 529828146 399809618 922144307 935000523 245675574 157372508 950145178 301801113 572452789 725295923 419398583 819268633 431147548 899590697 973917067 929022797 866337344 499746098 409868541 910573667 514854497 850346481 591009503 496356777 540969761 145275052 46004459 576929438 149193868 332133203 331622595 789408486 887638301 835123835 933991663 122448203 977054893 985956962 670377441 484507840 474556290 984926198 480791792 159223137 300038475 846738369 579999585 254593903 504410136 125956346 404058459 246550614 104977775 926572674 145138927 311798188 707709741 500499425 86530326 820556843 246213795 101512770 476417204 950554293 308454277 958720386 278410128 433579349 72135411 292822303 765169499 859031617 775132271 495934779 831107246 780735184 213872359 756789674 549026828 383132298 826754993 796649188 153872094 155212310 432124299 5156615 27568244 575351883 885946774 668133078 972145928 667772705 916963942 870229192 671496893 757137597 916096236 547895279 183708311 747599467 226158471 746206475 490887564 473471898 391738616 439031684 696070005 566375148 716352370 980836456 835058705 205564190 505753990 313212273 55018506 122994721 579115317 297416700 135156211 109004802 188707552 563695632 844518211 162257411 924894809 677391198 260693850 27010432 563323345 642066492 321959047 215711499 546097896 725504171 550437109 384765265 123570593 629253966 445812160 851868723 410888554 399653496 666456043 30367153 403483163 292741921 581055323 852639988 992255215 373901796 952681957 674810198 14238601 721841164 568758336 499963213 525574907 69543560 626662673 602398079 441053876 36933357 405139930 263459253 826434968 284923516 108924434 916280288 924290281 548092187 937201170 670821155 11448661 387489370 472185370 866638011 550327790 278631539 41054549 783440149 910481206 94290241 280451791 132447426 360743953 169084747 685266566 317521282 312952520 868019395 938822234 788116278 545992726 128449153 713221910 463177961 346465303 297011968 640261481 489396685 638261071 642851691 560581868 284751935 236753322 538748560 520687905 991583937 688544129 493546982 562326642 757324031 661607565 309217932 73372465 116539082 344742132 936790605 420941971 752577826 166271558 804625040 674113981 91399976 857810553 70104948 300445368 533325094 286779108 345785014 991916404 681030033 653316434 440119484 279605962 918337538 694195439 397686166 381891966 845500481 221635921 421570557 408782135 481861426 855253873 727799884 428880262 44467695 706836152 406341519 980564710 53662895 972816370 617717362 735845303 76211158 170409559 254151245 665001280 120552688 384975488 37183520 619608247 964832689 668007799 284429715 187455537 138815730 318780835 787075056 970122162 758043578 164968927 251414327 711483939 893851184 879159396 902994177 182880340 150418602 691934171 631094677 117814271 421493411 374757454 562246373 912070340 976538044 596940340 720166281 883004718 170826948 793221482 65159101 476088239 208909995 783677494 260698217 120656799 623128974 430004293 568026654 146817084 863408558 97272746 915943955 586938804 334889594 209603047 455849252 721706520 546536323 681549019 780079837 746338911 108473219 794395097 763716702 706110315 180688735 662277264 666403748 930488069 23037218 814419492 553144843 21663455 457072385 70749206 884686275 101711760 985670739 262055766 49111196 248819102 566279839 202520886 298283281 690793070 382263438 218367094 30741820 446393170 116262132 555499579 753416169 250451589 857730509 108702481 117884291 65181735 532166461 96358381 828235044 925828417 836467851 567846700 356362123 575495876 616696623 332075924 294795295 761879691 634032579 237954900 75790830 43917909 137322760 687850240 320427185 563307725 755158253 785655956 463271879 383677571 402533760 986447480 683249974 48884978 663967747 704695415 836834479 369697657 774799315 867646660 208530055 191418466 174925695 986532098 825407166 135981024 979655609 708394291 371835891 597914378 550323293 110780099 837554834 349518562 370165613 588332425 58967925 222218067 617994261 463785666 962684226 320659499 656004008 27894805 518158149 791008293 34755232 64484490 255614059 164021219 185002405 256642460 356683338 608798444 47009404 74955815 179973157 659744435 360296220 213601646 370867166 202925968 254482592 499012639 840748296 68638150 284458059 54113104 204609498 41791103 424257160 512218494 539198515 847844553 490031593 380369294 108882584 274295455 698041386 293087695 998159674 152679394 26296112 688387315 180335346 97304923 338719237 391806746 680376893 986574268 576317917 747263175 191963714 681899166 605801233 305276395 63395280 916140419 35024933 893973718 525581922 213130449 139380933 99529033 808266005 951183581 488708293 870968168 397731245 909902046 935748894 78283968 532842396 993494009 829629687 158802249 742030586 118945841 722058905 891591259 500837255 83153789 737380981 591612352 51959208 562867890 27444265 93788322 759321452 356203667 593836408 524707994 510037389 712724683 35489613 590610593 617082473 366652648 454796988 176923167 626054917 457251686 389813758 861700064 328797203 33473189 970529145 193721115 553306854 390258157 990003892 575209578 332155524 670633075 525027688 205024983 34351760 444755020 885855340 889037514 601814106 349643643 269297351 903660829 448637914 144466155 465938080 27039240 648774830 501904746 323270221 516026933 374792478 133774515 75206983 290069937 563023128 670788710 218780981 525626092 709116214 135898384 224538332 342727626 446913460 609954078 91426103 425558669 492054909 615973356 7853661 411643104 457618715 938555576 879623312 576633565 305022411 778727345 947489596 144032766 949497958 649257186 753036281 261744170 400158843 636929351 359817595 203439789 495745842 752017345 534613163 185235773 853189223 207553050 580852624 204649206 597739926 806932995 79856224 138784608 835152104 842970643 168492149 558233445 952714798 336537806 209752402 502856284 270837213 861684636 315683237 43621634 641075218 681046993 370090046 791531644 575661465 274143136 402602776 646235993 198606047 33534257 269803610 756124812 633030395 151634827 665375564 532702835 565764266 466805149 843140963 718435795 626287963 530563393 647318329 367056601 4065812 92105275 666202000 40515610 35105425 325669681 177025622 806680471 870211121 438587573 296861598 902766510 707587323 946556483 555586722 398090291 60802204 557666104 851156678 837213528 522802544 736133089 41574036 821884604 908252530 532002412 665089729 654187618 447988557 507469301 78096166 159209402 875913548 218077051 533023176 534618263 590541929 819207915 495512021 980204599 259922240 480863760 706016408 340491838 855184158 336202665 634192022 654408124 575405807 586527317 44876394 336551460 651885641 508828573 535682534 151240277 136159341 846319859 676430584 124860819 456319808 728373934 504623295 630777482 622037079 546022165 477801596 930730067 960302562 397168970 282814107 648495975 317904324 421036131 823134126 745152684 588113541 11495510 984488307 803340404 455639634 906757896 548777418 133877102 495206404 713121089 455067074 306884541 3496985 820764081 617986701 742806497 459090360 149841393 399158915 696703432 102883251 356090754 948317225 10900938 395050879 930744529 426160428 179874725 770471483 335598634 76468575 938982266 37271982 704786634 917442492 852054747 663439689 802523602 125878119 746190265 772325152 697388363 541128873 241545073 451678457 849004322 897313785 249738701 531000114 171171384 310300913 408070924 485065187 530502472 665607504 641640323 553187260 716258303 417688072 747094387 839255842 702867947 290658857 612528423 129381144 867082630 815331311 20825455 53290577 201472818 688017339 748065150 957545505 892303930 139466523 98165751 3440521 72636879 271423425 710348758 729979440 361454087 339680904 872633746 500739428 213503716 982350453 107483642 473744670 26736464 672841647 625711436 204245245 49249822 448399503 674304561 259644230 685280007 554828429 866805937 62137324 667937707 706958155 637292868 829538692 305436304 293484951 219334088 233856588 148574767 702463075 896601216 512267567 49283034 230032843 219860252 857613497 635243735 687464464 348691886 677051938 920787786 51504289 923608502 761963595 950105930 871213839 823724313 947564726 366634958 803562002 33887011 982319258 597980088 291979413 787889544 12466632 722737870 381862556 510421865 853610435 491542215 379089503 954678345 280045744 131150388 383620919 342588180 435058273 161596319 181609640 24570658 10212680 363020396 112244572 609116462 88952200 663969775 804267560 963129953 916655594 288553053 294345990 562363714 372196570 352410589 488274968 442268364 522593649 223345010 684603055 700297048 224310893 412365842 796319799 25497518 75800884 819940759 67799886 220140541 388604121 737209278 302875834 702968021 865260305 242917170 935946338 331803190 658217275 265080966 493475420 690273926 702943583 150504242 921667555 958480784 779200813 643754135 982756440 436176781 243132154 977914109 709853257 323637783 46763207 261940374 55302760 153902388 570150202 353910398 84867729 956012625 993227428 656928181 44016839 202878788 746238972 327433760 231199795 378293067 613360609 907586966 934233643 919455243 712702870 993032396 394970411 816523406 589765650 606891622 676950483 741639245 7449318 765546990 729828847 389584419 588847957 197731027 69699444 649745238 485957445 135045484 547359612 622627479 136823875 518327297 665574220 462480628 646139530 557384628 725890383 255059694 476432886 396494237 175710228 335724397 751393555 292430767 195324251 917601465 552307210 256553422 520218374 18937738 905206710 42374341 316740129 588224511 804946069 998126915 550018010 35354777 505704401 698363618 799185045 72065352 816694325 731923746 724648143 912751712 574816570 800858223 423220276 344408480 560200704 832696601 990011545 473399597 553838159 829121110 248909048 880979090 648243092 640188748 743115892 443090374 498121702 197271554 840441178 357259816 671384329 800591979 18961948 307202425 247265118 15199 838095959 441281769 140724985 854535068 166932938 57183756 85667469 829028561 63825253 626200034 576583805 794949259 638990390 892761037 668998607 367376618 734828671 72713882 583959344 702511971 909645982 262744451 80918011 300754985 393332769 136693024 695724845 12772553 143452856 632972920 669946478 235954528 358566210 910384632 735269647 880460268 667024577 843274360 893040386 831574361 430885214 722809904 79048170 733612660 568400752 578254282 942838289 749279995 985778800 37953363 172198241 329030796 471193088 338331964 712079986 671347123 676988657 848572775 664401284 594155742 281786415 504776727 739613059 811241320 435469272 72284918 324214007 973739667 818985008 631217185 770702107 690738823 372049573 53780238 101169357 233079637 159642818 452947368 543804308 340296183 67789645 609644345 604992160 532941646 230966558 782303093 581482443 595234084 630584907 609947515 422255760 244687656 265771775 774870737 436712726 487436791 153879705 696999013 898861873 908191759 567027868 797715849 406354772 696818907 926803890 319196411 969927073 896037803 342577328 739344867 152228571 95399608 292803987 89544909 941730676 665589286 204333689 683176107 242102406 299683581 743541935 2615262 925686476 896427050 737892266 778744620 639547310 943965069 465707525 943405759 457555006 102171875 407245954 975808814 702369329 72622295 116073740 472344182 890928870 963509752 874827706 493158652 808953444 839123394 794520002 557891214 805984860 794394516 804865163 29306721 229820708 264762299 994603167 295558928 697710269 375493731 792739505 32191397 443834827 342487208 697757338 83497608 453069982 868464012 456433251 185353107 919512624 618428665 329913651 257313278 635175199 823426748 837102684 792052596 544924336 567853969 702319199 134862591 22430164 584588827 605252057 293120021 590720037 347384286 397685912 777073555 768405727 9439315 224683153 52782269 324378086 301340618 248694490 942208577 903139536 775989901 744190653 212667191 468199379 478693313 657956512 288333846 394530505 356170870 482232090 373080011 46933566 701162151 927991780 748515487 472451681 775670839 373608161 291615047 444534281 482005482 947872540 905786337 878691251 20722807 198543819 837904114 595332231 337283444 298061639 394481768 688993623 452246117 633686546 795241622 81458071 843360686 796509147 388197183 704709734 446161318 939597427 99826305 890085265 222555010 240248533 937981420 281837694 863070824 62457891 363543927 900923724 894163037 553031501 860929663 344565689 684852051 348407008 545529030 583923753 731480101 260998237 142860156 455885484 495783825 462337762 948042295 646234108 86356804 809268063 559138291 824406647 766700748 315452132 77076500 582591267 823240359 909853615 831396200 466389680 56087856 395809312 618893607 482219125 2127284 404134340 876242923 857733490 394247013 178048593 993340089 567060814 52586074 910335133 816539137 839330135 675773588 360585133 528160407 977453446 828766462 713840559 69084855 467247995 400015467 265684722 271951623 786185593 680127631 13094644 47626645 629984627 947503886 100388697 966321877 461812736 780184181 184061673 128895652 960868191 385227567 207950490 548608842 776346229 217665687 468563079 36393075 498185172 516647406 757007090 922979379 628237490 23986017 743791431 52525575 859460079 334665983 66900248 977151446 844175632 758373311 60965156 164718316 919947081 663440517 379121738 572634368 472796781 90553625 999938711 93590319 697607165 370723117 609822271 307633915 716401695 50540888 691650716 825564498 499670179 808312865 332662577 313213327 943251968 202895083 253963947 78239849 913789014 13284617 790281179 692413191 441160813 592394421 548781246 533018613 884779696 691754000 154418551 569646122 79563325 566078500 459471184 231415301 468641740 450142178 649203135 545427016 728801994 782900515 751017819 335840547 252144197 247147431 759413483 791340329 391691761 888621592 782456408 1450582 186863921 971578634 770683832 96348434 49743369 798409203 476910147 532741930 349082157 172597299 322621790 133719252 628689390 261830167 188102549 903756202 651585873 89769935 230492569 95221684 528545017 286936690 784658244 426060896 332091193 479794948 103496863 125084545 917990660 761260399 755872977 537579092 442094332 645502848 161325871 547962494 339849833 902765044 990765107 914649873 562968120 756053869 4204159 494236029 154049026 138895216 937685986 611919521 247958279 94127984 914423885 118733761 730596650 501138888 302770395 308041100 703446014 64734392 970900174 486872343 834614715 964184426 733294741 776635105 186692157 929809646 124484801 231448011 397370892 166015807 589997324 351964709 195363161 43330108 270659419 651272866 211748091 986228398 951578811 360273251 190627182 335974730 7840346 533871851 456888798 623766439 487595672 827619623 7984919 991531844 66701815 154049645 165859474 206385806 578835491 511175818 107152237 195216852 313882860 775196018 103356784 141889614 190606672 89924326 264388618 824328483 184704627 713685702 566203219 182837333 872357020 455679092 431871240 656249819 791163972 198075827 48758676 194854538 48278274 398904240 73861891 406187814 765574810 121733632 436976652 311033687 427214842 820357538 774093073 208821423 445324851 496005626 700345112 241043878 501952382 883309527 690468047 428461726 455755843 38899819 373651855 649761507 495886858 2300500 83005527 116844449 541894280 563210906 728173772 61615860 781025943 144613800 952940096 870066908 931449658 842194002 780862634 605251142 476374685 334423259 237405609 139216897 390993170 370033633 643999106 978496450 971372057 852094325 86005799 702790963 441853774 259458573 667273774 84699860 281024387 877891458 558794710 367850781 49512871 350311966 998634504 131721573 864161237 952066958 774003536 404932332 551282771 405663717 895003883 651554780 640628363 287668897 852836273 336201801 69772814 226307562 448720687 489178918 638422428 816100930 978881168 802144091 442388500 904293933 961929647 201425583 912654725 752261760 559185417 161541840 839939614 183389379 584797125 565886555 908800831 953061347 427262644 159815632 772865126 993171765 399449932 436674201 637625411 673610612 276038060 468451847 870271396 984983497 338331292 284849232 680596107 199739070 752757389 897893786 213757204 782888266 318054034 824595695 600509072 411253708 643985773 919691067 489479795 524495621 237416580 473910872 362360656 618138918 27701481 168615436 176727028 243248322 183623249 450679548 527908933 353209302 378644506 972728762 410363989 616985802 43483215 149584322 329939810 958720873 60720794 417305203 979440337 257969641 658958168 550394388 853086505 454632935 784331396 807360730 699537182 550665063 38733000 805653469 100968078 949029334 860792945 447233566 286389628 628555023 323213433 980354950 223108880 671689289 313736059 248792039 82842785 417602346 210093762 46435833 504011430 122936515 713137468 714037343 154767303 659799684 933251713 461403296 566475723 913526095 266089934 920282160 101967017 153483366 398446861 136564583 863093113 791948408 764505548 638469254 221096319 641482904 379672643 23519927 714850089 229350729 591582286 581937928 494387462 924908392 909320825 333497207 996996308 25667912 84379889 815197666 572125815 889368479 129646732 65642772 108926199 423767173 672480715 208901055 740841867 129338501 952052692 210971512 889275019 8065927 35854712 991663557 391958652 38227938 613583407 654705421 654360840 868402519 183384852 906757536 580061191 738330118 333432816 580181178 38361708 783199615 159464503 763118460 349445473 450968503 424316409 383230959 569338159 847235083 997474554 165314051 512041032 959069760 503474590 194915985 838121545 560507778 322391032 756309082 958868212 958111594 535438525 600825098 971245365 4470514 309583949 409101360 951902752 582985088 437451693 62572102 242613743 245634530 390894990 392537516 777644295 496468303 211649353 153897902 949400302 912504927 897773531 76926332 780583775 626429978 704366826 591228718 857189168 621559023 558877642 772717255 225031015 806679984 122021487 594800941 610986029 943042719 771672183 29515062 924818901 709660252 656111147 761697943 732898268 779003639 354548091 950772469 12255717 48918756 723163901 484340439 645288635 607227393 168074478 684149420 993175376 300980373 496305722 512567762 684876739 841660489 160389998 144025993 432529491 891769143 382249410 921108473 935570028 590916825 42112530 427067697 954667428 108895508 90245098 436766766 166073013 411013945 876764280 348231635 247423616 924197113 508379024 136189411 780509458 559345010 579970741 504586772 334704287 322596909 51299853 54760188 244962945 85710355 486550373 838030112 90579515 831148667 405734712 381312488 500155513 733481504 943840162 762072741 734677519 51666987 250859375 533947789 6051575 546880809 882153225 995846854 346039124 206785034 194433929 143238487 472465010 528000306 908873646 659437618 978924484 486350178 124490976 770797871 777738728 501990601 4501551 399240208 896734621 877050365 641192272 937253758 455823567 913982711 932100005 527361548 222229394 153727520 891807026 741088562 63494946 384436038 516784554 985056336 58037474 840913053 834404194 968631216 970364255 87250880 74525785 167556486 309899079 407838390 741605174 594949862 322727546 39435503 55640139 811035350 966614264 721826876 310764685 227355452 923091441 193172957 264467099 94782956 395737266 843987317 272379323 65202077 955049914 268096531 589827808 457932531 859642796 556455212 749149087 791590258 200186452 302871964 455358262 773982353 607736226 666474667 394647441 944969382 252083382 615086851 707053625 296325618 398382289 664586683 400106347 702102944 475117658 638713169 510755073 295192258 653217771 620774056 403059079 586366798 603876668 927115790 315916583 74600745 888129073 498350139 356221118 317803802 941755861 570952521 59130055 491032019 281195866 501319612 468143212 128574187 382409501 3151238 78062203 570456548 48107937 966736120 342956139 177739565 564554897 31482322 443751259 883610383 865646526 200526393 586509586 737058503 890806824 826539961 154803458 385492342 944983791 925312070 428691262 371666217 394793567 121741120 558887306 958637000 814635243 974569581 823810123 33462839 368338479 699956470 982547854 832903983 823996908 818544245 442375180 131414621 133284625 238374882 708793383 500039507 178679470 42526889 153846499 85289095 741793023 827575185 105382127 177021020 68805224 998032851 166305186 820256284 205361781 247219208 374111743 707038968 680041174 747842365 879998890 235546889 442562155 645190102 994286580 247362127 686810675 383148207 713213138 566415796 9143899 468493827 486433764 385906698 465798967 698552950 215622005 353616139 550996033 877193752 804777324 164410455 568592157 626748764 885462121 264106615 772480661 98407968 583163047 472824796 544297885 405333673 833614094 747093985 333068881 577374373 470104108 577599940 659674356 365103145 803789626 737583539 859448048 524205744 670610198 682642363 117097434 649146402 27195209 941959382 888295021 979150797 562931967 228029417 727421323 990969700 917414419 530915513 963035967 499863557 896860673 925027062 450579391 439210804 309288691 855599937 180030051 702652384 764951222 493705234 498883759 443364702 509635524 124997335 133350225 437273197 879885368 289716448 495436056 188972079 520683230 317511785 892248578 734734641 551188003 985364369 824574003 656406123 368774431 967414113 300904180 689744440 413032591 380061384 175360440 952708446 642794971 813804964 833863967 710725645 455129621 229029300 15249892 459899604 673198833 940357027 676713978 680745910 867939281 252707838 354326896 26865945 691419832 508317251 77021059 669621955 737457499 978265551 800936854 995282160 742203404 331093231 150052403 721228602 185169615 27383248 491149326 487628712 160204871 916561809 423547141 566269862 44773060 299509038 834396949 403438858 470402368 430281365 497616239 586947345 813206617 411345298 84096357 490880864 366127957 480243938 814834543 50013445 703901986 523317541 318517812 941398900 615577948 564438498 154060669 53725066 320762175 6289041 23055167 106488974 670408883 390922116 541973653 232298798 425294662 295291647 997392064 696617084 137392946 763515949 465572911 786549497 460896339 348272668 220145521 716144007 943091506 283761350 145020484 147111540 561902590 750229520 788597901 123011703 661581199 495624894 219151698 186612651 479426661 629447557 499470283 688214164 414664098 263009276 936896079 251584804 935581213 902555559 31692646 371645359 618075463 593666794 540446905 366237166 732316225 605048861 916297240 732410892 900005586 248919156 904533125 330766739 771864684 753817363 10018591 596805239 116874021 401869313 274287665 897625622 539201211 420537137 611650095 432400442 649491349 850089853 384748212 781559307 270669763 878016931 922677636 225783070 22389244 224806224 723845516 490664564 624645792 293150226 377741277 49937775 461845686 912203878 967267505 209200351 46137582 408222891 936124010 130513910 463036060 441652264 163821722 206204754 816274116 136819731 603045615 644638717 694752009 684685955 872104517 384841310 810414780 665823094 661824929 787015500 261791702 956947932 362456363 837630214 652442099 759199872 332256057 487600688 360002397 634520865 225717060 377975513 849132032 402291547 785491186 856443764 695666806 77365177 806497039 964708831 702040832 519342252 337991304 949091934 639174785 856903567 149815679 864067745 29495688 914679202 571068469 841314490 228249427 391470863 93419541 840981544 827865784 584947173 570720432 769930963 240715589 842600223 918895300 921583619 910375462 783544223 337316660 684873072 495845173 237284653 680158221 340284983 151305199 843067770 314040702 357354463 495999098 692398370 192866020 722809681 205136040 355063971 119448516 616461796 230538992 3777894 767724231 496691289 911154544 323912383 642506435 214528976 614354160 110383847 285268398 833690330 815007710 102008827 412160946 578522218 35825492 478784777 609848852 324739806 110228494 448043777 555923021 76989180 469197686 939823035 816886517 749118193 318516890 884315387 278482126 39949647 791524144 110956902 922250693 653076504 840078491 172641168 572847598 718076847 911911645 652603123 178999941 335840224 417420201 445597935 188423401 722820324 494285142 828849613 111817641 818394709 453759970 789089725 861974903 62754872 189573108 409629146 126849071 419201021 161398239 526961446 907659730 13182329 995852948 184117131 347328398 880139749 572473526 893243606 860730549 184317163 676532621 710790086 244766147 830397847 659822598 672543991 441727322 554228571 721315259 960223220 502190406 699765528 563329000 186885680 266943354 485605909 471498871 624919555 982949138 657825018 838630132 137204652 430390097 338877151 307435931 776886359 196027040 98438209 402992198 486774036 303829911 221742596 588994943 460820446 293528556 566940280 297418614 588369558 290773894 988633682 511421697 189815812 620915567 538516396 27166880 999402200 386946264 411336462 187152251 577741998 539678242 613781605 982340700 159182599 819707339 445382660 605606595 55893067 213064574 145926059 328406982 307689675 787291923 38879614 238007605 787901889 635242881 598210827 386473081 927038029 680748525 958265415 630379434 583438458 191720610 694378126 353566346 830368825 424895506 152088486 634278272 598974562 142860250 371200189 736815257 121231800 144323006 924215144 725088909 529193442 713318054 980807845 703011258 84918388 119832489 163066326 328574765 103738855 217522944 912929227 639473549 838573209 544378127 292402107 349443126 77726166 483680095 572722238 553711657 962800846 382902694 564169309 481837832 475595677 847635646 31412356 182679590 645658177 173506476 473409930 668127099 169700770 190671003 7021482 763590819 706705047 221423067 227282316 550822374 691254484 348213992 123272506 643837236 490270716 716491114 643265323 519515940 322775705 811877415 411942716 456923129 85099802 149042709 149162419 665328786 282292957 584857934 648436282 249476486 941762846 353403413 617939693 138427915 490413064 188070358 956517184 235735802 861739951 809645607 747053345 826638819 131890951 266896212 890258904 945937902 114126070 339095937 517355804 66196215 723615554 791032696 867755016 958737019 247350175 790212573 302656038 753662625 17252517 220810759 538024544 373057850 946392786 203695480 59231243 202519740 679892885 622837982 474175460 377331527 954785341 625655053 337547540 131187104 243278594 419724283 797123108 840433723 698424326 130004944 590325259 205538859 185202258 723460054 813515557 329237551 866705112 687096705 464442936 174097840 231923057 131544427 534610290 345783743 367737311 640719447 587503464 581448208 85435081 111094833 321547800 937696260 736640706 423920397 50288613 898326435 991916867 807220773 565592223 124681881 893575597 800850650 459027064 336229696 509728840 633662399 732601103 321318806 321819465 429010815 686936170 310643780 269677508 615418872 379920885 713592214 925294784 265673006 633128838 554381960 880354338 751339596 291386969 618049973 10661308 167173799 671592468 462185062 92193355 814394550 221834695 626856843 785045097 766788384 226635490 448153785 116632997 257386416 607331913 567620401 550295407 978105942 216522552 826635480 865451041 575006768 549657701 89603395 902263288 948943490 234436320 229220003 867727394 566364596 29673769 521170648 231710126 612998749 687491620 832596076 50732182 891416629 540807199 801584014 520790717 772733216 413477324 564453138 967462633 424792621 214596943 789092732 101382605 553049225 331338535 263581169 312100097 968800404 132628293 506887486 277940742 157477583 472468474 467285727 214845256 860818663 203206408 973726703 123185431 972184237 774091409 697366069 804576940 757226268 370984484 178492197 20928295 223123292 613566390 806307025 993310354 189328307 983763621 322712826 35922656 975222422 234160306 666235915 371577064 597668768 816207120 974315534 669092717 807582871 939227986 82518973 189790742 941520994 880548469 255218550 348275319 165700631 400630748 486033985 325347591 309773297 422494297 406189261 156827177 428217424 564216092 418899056 404756259 292238021 920514248 770241068 856419627 591566591 726260831 938315175 642246743 811748824 17639501 559967281 801002665 614273112 459870569 896950206 823588106 293029544 696605681 458587632 183337548 669835549 621449862 73891599 227297321 227199789 257097021 70828808 480976446 125778048 114110594 856398450 655897371 790992864 846469690 634390929 128586539 540327488 494415014 618198855 568589770 308065725 787274614 635445285 331348027 383373975 162936509 500588387 549139109 821612091 348052985 180881373 219280152 185360443 427766543 714962207 991530126 275210068 189912396 12107860 85506028 4879467 981380711 285157209 415640310 42320263 632787837 38113702 201420643 403652829 353603086 587470696 197496263 200175049 560817423 219605098 208545954 160798156 872043985 4396329 501508965 138381206 395160339 703549372 627888474 623371765 459190774 665567987 654510782 930227943 189020940 760119606 773131697 788286606 862380362 499985313 211156282 913655350 129137930 152547569 226764880 734547284 881703703 433544333 969823431 932387457 784163734 202668421 258520675 964842623 114630435 443452817 757072844 902681404 188373433 63047694 312435090 712080075 178644413 308340999 841250098 227612261 83589370 401234473 433308170 947295599 809823146 227277771 208141414 883662450 897742697 903364586 191807093 499474470 905331259 777376050 18422094 310247011 891948429 342265328 470746617 964702509 695640370 458512668 586487384 328507821 409817199 220859218 221321282 823870264 221124832 635085278 815678574 202819658 199249816 517171118 155934589 712697224 550666763 873471062 267349750 112981176 103188759 711143705 557814862 464606674 463254015 639990749 325457887 376479214 825701232 884675119 316542948 473977938 667102851 806735435 248507788 184992617 218022323 153411595 681568745 4206531 446882274 691362297 31463664 60194589 452633445 268136005 176353924 110191965 646103785 14064581 661588847 828283784 395324560 756638969 783153248 916824792 192815328 587312902 491993330 180259750 761110467 541554881 253262505 688996469 848479633 737734043 628036584 743015149 604421637 905493172 811877124 154531046 34999109 328713175 623462200 104650585 735465183 182151278 327708578 102133610 677778630 803426966 33723980 579802980 78356059 161344012 669445929 703167418 778080 817407286 46826767 900337250 885613829 491119651 754263232 11044880 218358493 432888204 617749993 725712061 202439141 115224529 603943960 714368292 173816197 89435638 80280006 470268801 942819975 609983148 468307799 201715762 248110113 277923147 954892817 696804553 305281266 52690128 937932583 460424950 333141503 824716519 655378608 25251730 677320117 6295769 913400496 575583654 105189095 207549091 375320080 637688664 877195221 180178911 859179425 3004670 613666594 288418519 382898461 851909137 995353820 124605307 82839072 634916407 967325563 209812065 999114042 925054521 156607705 534615496 135438554 453631245 875224380 318595736 518021209 457710283 200232018 855690595 402695927 946267574 497635886 345355096 307026143 592012093 343563347 513880929 148283937 520766193 9613983 19661053 177677753 913234317 145957987 683553628 859478658 575632372 192573778 942181467 425018956 151651892 745296014 253206899 756364999 66867324 169169817 507610830 277353609 47277611 856498015 38425149 599599637 169942723 856261942 398965300 774206165 941034221 725749215 178344658 795277336 243383678 171687544 945533667 207557146 970119283 174946710 809356496 31667962 506806766 685346859 485979574 638549957 202164025 214136979 225676369 654240102 132271561 436658067 895443462 280964029 81600566 798239578 529779179 142393479 713801033 743569020 731801521 696041582 954528998 717080312 382819000 232078853 620771622 649867058 384637708 542297794 336297797 155865848 104715352 804593672 725810848 192699519 531806452 555004962 687201737 521007972 299323615 441219904 879110511 55706027 738145986 854468217 142014317 640639170 73263339 939074256 721334728 306069121 513270353 816704561 157054381 657217058 575480211 39775848 661398122 322967883 522294777 859939891 197804161 339143947 978567792 427604014 35183759 810322643 336950420 672758761 539232354 867403652 336351136 778784462 412532207 482796130 8752511 576322364 716155469 946070045 135372220 531724658 245077187 3740613 837502096 798661272 939812282 783207898 363405788 991667139 3366345 833882946 605973031 868965096 39960228 569325640 164280733 830684138 608990775 396831140 997501718 482621842 857029510 333062003 375465749 138215061 485780424 509755448 524921535 90757 829538136 44750819 452397281 605840104 727615672 591656135 237092087 948086310 536146837 855696545 933879323 858310291 396799425 490004375 587817495 458086245 99701303 397680951 594569306 316045756 391876632 778056566 236860157 835022756 914041780 772687281 506931645 991874318 966897534 336514989 113617153 889207508 969703695 429384342 769159385 255283639 821254184 750909958 676197372 421757788 4305849 611821813 671865547 788327771 753833683 114556107 247773770 488423975 103212465 861302355 959741226 575429157 87166135 107108036 7461061 577437852 213725039 503915708 362896919 452828352 18878860 226891073 897532612 201341099 747922927 416144059 808824867 129749083 428834706 219988997 342676007 976572600 131523751 489953625 755159148 512356503 984716671 290803548 548682560 804365744 278950294 284177439 593778830 291314596 944894606 62639634 617045743 130681597 6505267 832249623 431750817 16010283 550425209 582582640 131046541 139387015 631426168 998467277 903184191 291775829 466160502 883080001 237143536 32723642 497236192 573111371 409996162 597324491 565432390 13316045 508118905 994729088 774704741 95449880 799374596 244602553 601052705 736468446 702176253 719283523 964284289 848364352 40743392 789902280 513588925 339517632 558061783 908648682 146838316 340222798 669007022 532918053 789225559 785723453 401403872 839305698 918895844 482405962 894292619 306612340 62262697 109033117 642977653 493111575 110812320 692869568 608370956 996278245 493828077 612808875 425921133 415083500 599761115 134149560 990029904 442556446 854082781 689024431 313351714 97442387 62525580 787397820 710623473 601661004 959650480 569921398 804866673 148515506 333192498 433162712 987352068 396062743 643060260 421221963 913615281 121795570 147101381 890152087 154110246 462396841 663686258 6661362 47329982 97361281 900886460 590142207 172539508 639372203 222004052 706499772 634999537 53451586 270568727 101830555 275190916 539791178 390945028 980309870 99648037 871776166 612770379 56948087 90595952 576127022 828993597 379399511 164535473 59543446 226343253 529144347 231804372 718377600 491074100 791762235 583411570 509369465 397358250 310273938 520443595 506749166 758224555 642313830 914600386 354710074 990198091 202649703 907073515 917225118 922024405 611690662 713083256 383035716 426359983 514932131 737472079 322937660 266142318 154938433 961851634 885058688 170436302 58851534 991459221 935852784 423310769 168584705 605792009 906926425 986995749 600336375 594898387 297935462 917819225 349520688 277145877 386026422 800397226 720581539 750283170 743251145 776690077 120855453 388581618 375848967 247415005 115945180 193741345 905401281 139479355 508499850 123463417 976822065 324441010 775813937 988762855 41118582 955425128 173255622 923781122 802525343 902818982 462864038 253228045 218544278 724648416 66169243 994864491 609897018 51558580 120216010 384853550 458224202 324815073 277503697 219125005 725597295 902707541 914333605 408464997 963949626 401846049 136671665 885244222 56109094 293329024 765884864 728266826 286220434 216341465 466644744 992053470 37817546 767493812 5464103 885841403 473228797 707491013 52121632 525373252 223383620 929100520 771058530 519145485 174419874 873118750 75763395 348678218 607780095 670455958 939926653 404296092 926609709 859209376 790535991 291399752 685354980 425322427 252174080 831766082 868240071 647218052 71352394 419870748 26390621 793620172 374928631 574820891 829989147 871090818 521107271 654383390 58124885 715379910 544013545 95581116 850611024 746039257 23105010 565496104 929080885 542371620 387952098 506864709 990907669 189641788 10397340 833098390 252250857 348572639 336755564 284119372 746527376 659935467 821261323 893382207 343883734 604968303 425886611 393216748 304983661 584087965 367919499 206014332 608115436 412230351 519685341 593084865 699853268 125597323 194622691 313295917 116046483 27438459 25859670 328016609 607103603 606462579 716792927 254920356 829085106 834439020 231119241 811624424 434944113 27112074 668257994 383235523 164459959 756454170 606714495 339464945 121838199 842638991 120670573 984541916 79460491 15812483 845183937 873382548 796102577 802656441 679841809 504484816 276792980 85234716 113876569 111802863 651127752 410800067 832516353 35594487 625031875 474873061 875249107 185077910 508446438 77187302 683442438 96116008 229086333 678892626 404017208 750273192 291903414 962178012 288049005 684782528 286487471 504028512 643383315 332811964 50847075 917370594 506220029 501206168 839941823 992089994 63115371 619189743 168137618 623719598 964006145 196572683 446590107 294412488 258453196 651490265 724053621 54311036 511818050 841138416 381422251 896474005 503924032 633053842 894138543 286366213 530607629 343322788 174830808 515412715 968256082 787785911 489225066 791784836 540322089 659206912 906993298 921581120 206386442 835912035 884104276 365829043 6531807 97315937 898587576 439615895 400305397 875281964 829929366 606887885 344262652 625547675 147122365 692232032 772277272 48683822 528839131 447699337 309632458 99160589 705493128 726410396 426695937 279802117 539080778 376822051 666505233 499916175 497733509 651908290 914572985 34039494 661933710 483381587 782167837 58861689 925960349 889585615 359938762 630320658 905383633 725350743 403231670 556818344 829533494 964544056 616885564 875978492 253732799 654341349 277463846 255957622 116720448 38862586 601157278 77510693 474901118 686868538 639892281 149758653 191361827 226844046 397569527 90853025 590937276 155064847 255115320 598414037 85284807 833865712 776795854 821570570 516754595 500065178 353146093 680602008 238740631 322865305 559772464 541252222 67833048 372847772 85146272 11667043 931580287 276972163 931799978 902952599 247717003 27727692 156603169 617674511 294156006 71049510 11689280 31891818 472191843 898930275 891278003 819702258 25066937 146743422 210421633 285583510 332795785 490256666 637239843 903914986 47586143 836662532 67622004 836131890 610426280 705377582 954743994 740706386 36955074 824905140 151179429 913426138 978129132 299538137 192995909 442653440 396481873 473279495 321812250 48218022 630499582 361176787 963962123 540004435 427662065 702769655 990975843 164974130 227218439 751275093 636663254 28017952 610206733 67883515 443714436 234926744 462931120 939861789 457752051 923655364 790536335 847414034 854854669 197972849 677755431 434722656 120199976 209250585 768960225 151815346 165658627 640561623 788725265 89871325 771859907 821211254 338933743 631140057 401132275 466664290 803700379 233648075 968166536 988278201 288813857 970521084 209142500 23091249 937376366 999517922 793950920 919947321 622588000 891287833 85821540 239837402 20654773 362256226 500737099 967049681 611538456 845236649 326959739 504917624 969247000 225203713 924548441 425574618 713045811 671266725 131588785 176036007 861179333 831433721 304553146 193447987 721459994 404563337 204742419 534141821 330058594 962892549 161877438 877366063 772039097 570267723 115116073 622948759 675797274 784265054 303357995 766379948 845182327 769400169 312295679 758031372 98933401 293408193 571636301 146701314 798473534 337668316 678099743 407235706 325914630 999419746 439154411 213868815 928898682 765310239 61801102 349534970 638604812 861063680 769206609 533976105 946373911 25791784 28372958 321423397 629258710 741392341 770191178 836419880 99737978 529673333 611188242 424093461 249244430 466751896 138379038 175810668 584266897 875752191 845187769 35846498 308840415 942181510 169547673 524789964 673616322 675955006 615523803 54103338 145242351 840957528 840471554 269212066 340373243 530570286 513341440 980030727 864378730 369196358 21444134 722011851 346842788 684592459 613643828 77202958 893520635 967591948 293616207 692163227 736832425 715027594 480939010 879318493 86716364 82425317 49606980 12578286 665220977 917624937 483307893 175611534 315856006 240948873 878729810 234533921 694906855 30670817 227410704 312150200 755370578 271596594 662229826 312022797 406306678 200716395 360764903 510056827 15416543 358490010 116540511 969883401 545752838 856928769 454932347 290477163 598785105 698388479 4748401 696948466 768843781 202415902 149485532 873027491 772235093 263659285 883278530 964324899 613035609 258575037 527886225 879793086 897222418 510480664 817534238 384098931 557934701 866541653 202857892 927183833 576185145 395498692 334882253 758392890 549919533 997528546 319844771 616351624 99197932 292766546 164433819 419167320 522951679 862961119 435143571 132149995 249257433 551113850 110877136 647252005 533563600 55343427 445400062 341816473 160656938 677538938 898711095 455282553 972593163 94156683 108965875 30611882 994012808 48915976 119002394 769172656 743674520 304338607 969693432 153546682 434639132 210799713 483441475 553120931 36212192 875862824 59208983 336388324 380354709 929841981 144606715 417476779 205921232 823209460 655546589 33874883 289711127 622661845 299799311 7079588 809412816 576290954 474719566 266441580 700794702 847090150 683715269 736509158 283396042 980101860 603939837 185842558 103804517 678700456 849755113 64420431 354675752 49930110 631925995 72525331 292832774 15272919 43182534 835123762 739919831 29738831 114529958 117218241 317672283 127759531 492742692 983250544 667943226 887011796 573462586 889425314 951081994 936338142 120658254 242019168 322739010 68831492 92270895 729571671 735983172 460903853 103849487 909932509 440868182 970932061 264143244 520389873 603332271 184907468 961471407 377561404 414497634 666448853 788553185 907358993 545484405 554706043 662217208 256237409 337668045 459347945 222509874 548190925 349618494 524166512 389091639 478922396 680056707 879785360 890501391 942119870 752521016 629135081 964585010 297842636 408418285 671316294 959693181 637671939 553994508 485212317 679743542 241332298 707273461 286550022 258452233 685107251 526530533 27753158 24134413 77640176 906371332 994066761 554847419 601105255 800105833 770483742 640561404 74440987 413318921 624798983 366191135 496401723 353996741 626656 520936148 577704095 222752359 801258426 207841597 142542278 287207330 652106182 562840028 581262298 510345485 303897184 531312800 302748583 415940651 503590410 918735836 251182758 562992482 39282801 5965137 150727156 892034824 620685670 767733027 814020955 389004885 719630311 191777501 830580808 870148710 66854164 26218613 70234837 974885705 500225338 212635466 687304383 11897071 81118925 460326176 683292268 854333484 866812263 955753765 186998767 243697097 462353099 339091692 973053948 864773480 728847334 645365110 961656053 930791073 666741704 170133030 664689118 853121510 373978289 713607113 989849961 639484318 470030080 761606548 507249901 63597843 999178308 317533735 468338022 888409969 375434796 45598339 54731393 839754451 210375062 781372185 583317897 316394813 368434053 574965947 647260278 768184725 391195684 561409450 652878567 722501292 19444166 512978056 197663012 303482433 51608551 283578212 809874204 740033518 712806441 159084722 799080806 697294913 530412887 32910417 173454914 754612648 96131174 571519309 294590105 483694462 39727472 773302522 920728821 129370375 30992058 499068360 185121425 829794919 788180396 375710315 74771532 26254769 669050847 411576008 895243692 731113952 89610758 896645165 405745123 874096085 485912842 934325838 348865733 286180182 770981110 851437130 681333200 460890137 442776570 305327525 766855475 211880115 741658998 114562378 95295157 576542630 513105643 913558677 320179406 635211871 523848448 427020349 845236645 727926828 830864529 321822569 699067895 249400135 520387985 833997477 965559354 673866704 527602215 42711273 38114693 826624722 211685790 466618512 236056723 837605692 480012138 954887779 698895055 350749932 788111910 120027787 804813637 325946782 436816531 166798239 766988721 158733310 234185375 743889818 82541934 801881757 892797532 194476260 467631237 938361075 998200069 390942538 12189348 694636130 48930302 347916034 419257383 221035317 270003155 737030566 698207494 386824602 410209589 131887423 954148333 75667628 218014209 135766328 982035240 326935916 418953273 795440487 198262706 674655684 284215561 352073993 843814955 616463748 730825154 474108864 89486804 332205415 194249956 659902624 733456802 639075850 155939886 870503194 283343147 283173116 501183504 894580236 601025963 202459564 480365528 446635707 362852110 429663347 600593285 126482900 859997408 86299025 175217239 785344109 611884377 395322929 397937850 994131205 919374425 463658850 668600644 115244157 554803814 985210657 942260142 427003685 604879795 832807242 73343964 197073840 602191633 156550316 929319641 989337151 50452228 32008692 283998167 139306325 321775281 710951103 897148211 384707807 75632873 127260810 78635889 764434227 716880161 462888386 878195768 66816014 715314811 365916854 490409824 30537621 620224189 666701985 152078307 547132247 681569621 187476640 978135779 297707844 965312602 441491139 758003883 778106049 169376142 374444789 467971504 543799180 888722774 172870163 684685708 224921817 253621188 742829788 311850501 398295606 284480396 907938045 193198593 172858534 314185487 515435009 403798678 495892365 642425171 449702503 795585537 307829175 568665864 194843790 502805668 134296665 992724870 234476479 373558793 848684049 59168716 424461611 184135140 802886629 87922049 422565613 407556881 695756864 1543667 175512837 617489043 457391608 240632088 90481755 686910099 907727183 276234900 810732482 400215912 849923298 292064940 784169717 371959946 337041605 314330960 432477072 796383134 638539627 581731092 781874723 374494064 358689966 995309628 970293017 756984562 542957784 307913130 688888781 391097919 134303127 942964210 962723203 308861338 703175930 296344648 439543392 987825777 469534852 946236303 857517178 597579859 229572631 485873995 375650504 743841790 775984387 350946475 936893994 301386837 313364218 49542 701280874 494284130 369816860 827335518 395198778 156389211 858524909 866370137 611829556 302374808 95568219 581804101 705191641 529813406 432541627 544896923 601578383 496965145 337347785 299033723 252201128 483429337 238560682 770988456 739998307 248883932 575869166 725870486 868037339 503578438 746630025 271519579 615046426 71903840 25965528 802678706 747353109 302501791 776085150 765604360 821066147 784771997 210170383 806978410 99950466 817080604 724909241 587488657 643468896 378783755 902179995 55335384 364621518 633179259 251847709 739409483 550220354 779050917 792508169 985394325 724522016 818521841 192348054 599733008 332454576 362695911 98379619 141346747 542147621 518285372 219313265 79641914 413860759 519834826 811298863 616952803 573177348 678941844 487119477 21993639 470301531 985900742 22672509 454957097 173214059 108152500 446835693 169202607 783254762 313397976 771226066 772150822 46387839 720389079 649331106 236107560 752610223 550639481 464503354 275851765 930608621 238462900 4731105 850432112 914435984 490069411 812608064 801236524 560213213 188586119 500451183 930474849 274509051 514022607 137568492 666076653 34796284 871336715 266611099 751381076 833608920 243516662 374299081 103186121 241369202 949981303 398111277 839366178 264760979 150483094 130346720 616922337 762022377 808844934 154588268 832538152 233351184 910004901 237536446 178671307 218859148 242192245 494752809 683374141 698463682 523424929 972022890 615716768 430249988 353234938 489423272 969895613 12962444 978616446 812153711 895065345 856494205 185267536 519781812 365586049 254059483 716627133 412869590 54642430 81964700 345022261 102526875 920265955 675080600 841819219 84262955 678713915 130622865 721141725 567249185 462291388 972969518 195861181 807971190 350797769 635775747 741980165 584360594 918008680 574314631 230919154 653547330 779426632 715890973 24347367 375675069 678962369 10478605 436289135 479978907 591608528 616154758 373799996 837756133 564517151 106497703 695247659 876114183 746656506 311376493 932980286 594435799 651096156 656852674 545395106 193451666 727915236 258580089 127070123 820880094 328914647 858761544 780408782 686005703 183995426 281877715 129319863 123191747 959489379 365353891 330679338 502786733 326436564 907508265 439718431 390002383 616008543 207587258 891410349 668113360 385745297 786960798 580823837 662936013 738646176 917046268 354735061 920400445 43752817 785500389 579486568 772452103 753977735 740872016 70875287 314980728 683846161 891297824 41427521 276819271 805129961 769004832 656246384 687013262 605438347 829230079 177640795 994771927 924119585 816786263 724584539 994515210 445796471 548728744 484492531 659139200 962070790 339595869 227285454 463726325 925817329 592022215 685294531 746664333 419508217 976422175 202735305 86525144 711515025 728520069 460492548 304414153 199305167 7730436 775353281 754857150 298702194 134945420 530296946 625615484 21330917 423055352 236027315 195929392 132619824 672657158 833452613 872127346 317056016 957572708 801879063 132949819 232211682 598470816 834869558 850449650 707499183 166290738 541126375 604082279 73067813 731274112 130588805 577197514 163834520 961743310 948274844 706151100 87336719 38069841 518372324 752338240 710908714 952298529 275818037 780820678 275546429 234839101 153209745 272663843 622356539 734241426 756626727 756537232 304233670 239864558 169574983 748027830 734004775 986701838 138994028 482314403 484368712 483197585 832929596 166994891 4823495 973590015 984840579 749461513 73414364 243421131 479139889 861213860 379554418 947897934 886162529 997004362 908267547 317003723 220488024 155283985 49487369 158932327 71851392 905842293 52043295 23577652 398546289 258828378 904304865 210359856 232481502 284980751 117274241 620115257 259489201 835395656 995729877 253259286 714970354 504322851 946360156 898378108 138160598 354787110 588101695 327007490 351185081 616149566 37693260 27449900 280907801 488699071 968202744 930279264 55913382 729183334 671553896 556433138 364541748 173559130 127294303 915603992 435945914 885818664 387186507 922656247 334615649 321511365 763956550 457484948 390807406 362603660 870405902 211414501 205528409 451139910 713778445 291727551 103889848 4831006 782825295 272469990 781282900 785957802 915491980 454450434 747075094 436107239 598432036 104490917 163225618 129639738 58223644 722676294 369015427 418472048 289251881 410996555 589983177 890943681 344819355 26802169 347399026 199335108 285215349 884738435 168285490 703754629 588218207 935655424 806078949 939158382 363536037 447671159 788255883 508190037 130409025 165635273 397593427 741602167 553713619 318529230 338117259 53356152 240785822 369527100 857630642 179105385 636030871 399199671 376863853 492762555 257490512 11884228 973675907 654511180 928905741 283597015 788138474 581092963 571763120 604289352 970890684 586337196 310856653 862598493 133673277 470475839 834604952 386138937 69278679 348236180 210367987 865247983 619047710 451384725 635167330 865855352 743983567 121964941 911328793 361888182 229916874 831244083 896729323 233742197 685556765 546556321 272909398 157238882 402467834 425763423 612703879 162928921 926113213 707387993 964350281 207885337 839246057 378143972 737031442 156350668 914854950 974279360 306078727 601979525 506973260 11727632 365132523 524168570 827236692 284762721 620570156 192554449 639268707 229387688 252099812 157376141 336231875 49571653 372038612 589185700 760694247 705375225 378822238 875598319 397558888 140038133 593796502 921749549 821733389 963280843 532619057 483815431 213710529 122390907 943156876 818914833 83847317 308314986 957751733 830287299 301673158 374615907 654998099 345617534 16287414 561723295 357828290 552418442 596320499 229432246 788978435 679030813 918235178 779786162 278354361 573530698 879430718 491959551 505812791 688157207 841260335 609632625 87293551 784225128 915355172 497605701 288243718 443053077 157242489 491431202 581891392 614223058 110493856 481753876 639036173 653655107 393360197 639711122 732735749 558704624 377092140 311411574 688372836 241426251 871913802 385165320 440902935 573255341 709102527 832768503 444824232 21464662 964254921 58847827 109610833 690298737 122625237 949865373 432919793 158685454 178676342 289678008 626592271 582919977 560824167 897779188 466557145 297391006 539410828 262040581 799969319 624427324 631852529 655582982 536259193 47689904 681986502 767004542 298209014 806805399 988256106 358024541 11221613 76118893 611181918 176084725 982947413 453609632 605902158 67974147 275402191 203404671 519013644 513619117 199881887 999726917 409038230 885726850 218865719 86332177 783194127 151688052 306733740 413813487 614358719 943991011 777176513 734787788 630321691 56614546 706656729 819370884 166255551 290338227 280476932 800145882 141222254 506510804 167775229 441929077 606892051 433666552 28327711 620256231 228898496 756131712 454980979 776947623 246807475 692019518 329178534 84080920 235492685 205398628 944092948 14638471 154422552 366048143 163585721 758618143 760292555 996196294 45677117 7960315 102876990 283047799 763034351 834341919 657760121 720335731 413791428 982132336 433297312 66707450 761800032 470725828 960443404 45794226 83977992 365308113 643664439 405130409 691639211 353264184 531958211 770281296 736575454 73086853 405956988 697252234 180806116 992344359 447146581 690138520 292051108 990842488 510090347 513246505 823355563 258709176 255299581 600464464 311936305 706911762 250545786 366535820 212784406 346325656 449263476 848849349 530443745 867595072 186250663 825945923 326241984 269309167 298442229 365733567 932223373 106707818 291285611 823233363 208616898 727880806 455530298 144194696 857991054 414167163 745428926 603091272 978460858 728755752 34059644 954835178 928638910 667043035 158830366 159349804 635440828 714136546 337636727 549635123 682288762 957362039 967681153 639739787 766244713 835106234 821534819 427341608 592267931 45441463 167848548 617513834 455675092 985902685 370040825 756458262 653393274 384671620 634597822 65655896 797567898 122515184 265550455 906571205 244243185 170391370 373815308 748204381 270981335 389230371 455580818 676718977 328399192 31731699 228777287 913859585 693853730 715499293 525058441 7716627 91314061 524373225 754879975 717726800 971373975 846944137 235772691 143975362 516866792 854185493 192540904 413021396 950235599 527103374 420106090 416454495 799304003 802912225 172008388 441577112 799100900 236050651 512345931 620437549 797267193 792339254 988136564 299826983 970023792 189197718 758985707 505331960 756104931 607641984 171015541 963184773 789368972 971403371 824950534 645770511 718177369 40286891 38996413 194189122 588370903 215350402 90214104 91596852 794363193 426438428 954862793 103022180 88007267 482941320 868897306 77176503 706200539 846476736 141632654 603326841 225841105 537867172 287096326 542216033 796860184 427995136 797705101 559188105 388665398 591990660 980115030 520360825 505880652 984651209 278344893 73045020 81948718 225304655 147941187 848618699 724195153 811591039 891650452 19273534 434969301 485904812 890758022 281529760 649042048 97004048 472424466 273743227 964625858 455421387 796609628 971187397 564326579 682625766 689496241 15924443 609960721 30720851 339910015 846796673 912265026 592880619 73058404 614988260 389855578 411292526 999649574 991680414 867447309 443646856 64017071 985141312 125314488 49156041 767805966 669612393 85197159 295291559 771544451 54601643 53899207 996921481 434930543 346494889 853792302 321816755 55733086 111819771 395130271 302384218 591890178 532030887 689961916 900279189 707317562 27132700 848949209 307845734 703371524 656628017 710890472 498350008 250448016 215581215 966438286 491379288 658895918 288076431 48441617 391967237 817781594 715351691 747032670 907414619 597680059 259777673 560152589 116193254 941087252 304880745 802098269 44616982 458630497 213197421 898742838 874573639 268027321 462567490 883552296 49980852 331092318 48692739 971754344 74682510 57885629 438639909 133350104 346221537 941922922 58521490 853954557 198313129 298199583 298656408 384323079 282510277 399163840 551270378 412190414 554474750 829886296 993406628 866953168 168686603 160529178 765424209 650210101 840469372 737672800 62170073 842713803 975029723 868866224 86706832 899348234 771773579 778497716 509827897 152799253 656620256 466010944 139196150 159952045 365223699 997127759 273403476 514058053 817653061 277520896 324301384 368207088 348350078 571903909 118363952 137337973 967306162 592949420 782883282 374019380 432114363 199879604 948217434 403304000 206043477 838534526 490172766 396812625 813216303 150393334 79600860 332730306 396898773 164327217 467806518 602417566 628511682 677515367 982951998 236865171 525051226 435953404 228800549 379541751 853886694 690214780 214103178 25084108 809721490 206000282 46552436 395638966 38743423 425800754 485232205 704636681 890871975 287332423 63389932 324865206 400693239 234592261 855155852 981743203 718005056 276144827 341363415 306852176 246133562 10487531 648400598 614213235 257447561 58010929 874699776 577093984 786400946 277746015 879953203 779793238 578250539 935531874 685578163 249886780 454643273 784090715 566167596 730475938 677113935 159209867 885303222 252650945 772015719 556567387 860524236 160010358 317154722 196765792 560975958 243719753 521893369 664920150 813821599 632822118 262016333 668367137 213082202 603689643 168537191 550391243 953567659 949925010 711945719 840669574 15938833 579264069 438388635 736914094 331520637 377381009 700799183 475470790 19645505 381548781 122708478 81742973 225459738 611300987 524288891 812288161 332273203 470836993 74849404 139354416 951514132 882524141 424848935 770219852 483165109 341449049 987898497 18060096 278105713 708317440 534679419 714234754 851550732 536983375 291391984 267551660 314811833 833700430 81539747 95071102 836453641 205643452 123203387 977097704 244573944 219549938 852824392 559524347 868464879 768103933 213274951 198372339 76033159 172985990 366583703 271457840 853771402 634904552 133962624 197460547 409160708 71915298 457587253 83029979 400170793 176708059 284584911 439673812 63169637 499061088 121207374 455953715 802664079 825396653 382156959 658078239 196350437 834202718 324107662 450118897 301926153 88114619 252266712 757850913 892670989 721051569 163234335 886726737 846655328 116897498 956296678 960004942 462394086 778061174 88120487 104808205 688094432 586220139 600606132 651989927 851656446 84077127 307678802 995809119 553231698 209216577 463200425 119048609 860547420 456536891 449318602 638173697 386674433 964591290 157065649 430678839 72768909 755413486 854897722 62264875 579071669 891644593 171346997 528128229 366096792 985704573 531905357 761364889 835997625 34025851 88320542 549460387 366230535 346957180 995881259 181733510 452767190 246806775 558252505 771095789 570420710 421732875 693742460 619097003 969762649 411337085 794388047 799213242 738444476 365305791 196708463 306553919 549852424 801713638 589359849 290498951 52611223 107391157 352052395 323466241 600239152 945129872 346599824 206530634 894414846 966916998 390449498 943039785 604278425 409637969 3825840 521194626 188393469 689749325 668668966 913833071 424395919 327657603 753490226 214055462 696334875 545366946 856010042 316112143 110046936 80963840 543941251 349995440 201411172 973876897 421786430 675608771 362154180 477907239 637622409 650253341 670496100 489007330 496131424 518033861 782596633 114946251 344204207 560924386 547256354 425408897 686042438 817594573 611843362 921858122 224823519 635354110 380524072 844262423 432669467 677046553 217985192 780302463 727431556 888800231 727884675 46943934 991322506 240101982 537689080 788200639 999892870 251743129 376842937 476811792 720505788 341192923 592860888 826396392 748332883 75619470 968457428 996699945 398702939 747216711 423008661 915707732 456222673 621725888 422531941 319169439 258233490 748599516 871641335 662871773 308928619 995661481 196801644 709656974 723377674 21655381 295560266 258504411 593582860 99555648 126354043 768811408 776186095 966144236 893575511 319551273 462860317 873417732 160682136 709743298 477666025 875410522 530346598 255372323 518856329 91992813 532840015 25618616 685603361 316499163 552160324 387559071 421974456 111440498 792577446 284246929 209276227 102082087 31041083 971169784 192602518 532734867 917349165 19172325 151870841 553941112 576042515 728308237 650257038 92285892 510072296 394015950 840173162 522418824 462128663 267676977 202719623 472883970 459857766 209087460 627868740 207145877 197954319 374057538 442246637 885611976 413053358 969541446 461841329 714124627 629753417 345528986 450375592 810665742 423210316 386151306 754225113 106691071 95872909 864595472 968386854 771828303 747371848 56864717 277882468 156920402 361272101 42313986 674130765 771422085 790995245 438116261 227921792 219360647 747645400 519071305 923586952 823656232 46812933 358404910 315783125 226677081 113523958 963926333 139739074 450302005 298416987 103009539 810084495 664145407 22573637 603458489 1572965 760382500 649449270 231621180 425484116 208914485 600451088 815288854 240443480 513517296 932717602 844103286 127930962 367670068 852952353 349699379 237556489 251126035 629853738 977153993 857325616 719054520 123208899 128389218 541347936 774276484 108005334 324311759 238089243 871190267 543594685 401939331 970949321 892712899 924589106 159672481 316588475 902806195 212200795 422543599 148248875 435527111 770025158 454490842 477605178 696562975 383356777 8113532 788749552 663677959 283085727 671330197 306075459 5379061 5628973 733973642 73439238 287292801 373281091 856508269 61256959 659816817 521622898 365363185 591542484 162566575 56494268 818001783 286064152 726502988 372361092 714416134 36551237 112200839 967969689 103835472 745400505 683443648 647584045 297375658 274409408 518182535 405224416 285820692 774261131 597826442 776987573 469596724 128578866 294763687 122226715 877704539 765679032 77821920 97157862 283849599 896214789 966644323 817788759 53057342 242390251 105719166 910633741 107792355 806385186 968814003 651335451 985139803 525826895 210782110 388787952 175597117 970270197 774675217 603890545 191336134 948531593 554155514 986522076 449135586 194831461 909188473 134397155 176837407 698030280 194062027 459257243 622396592 62620124 358496865 244800126 399185018 991222964 585636557 925693556 361541890 223734600 560537544 44805576 171945590 389818745 681631542 37045042 900284847 988047376 177985060 59637966 72098091 519583166 489156548 553392419 270667282 671418910 510010482 291256859 350674739 140729518 943104176 477351437 915892229 225096668 372061739 720795828 439680937 580050423 211748021 942919737 896348642 119649332 471867721 883282983 900305444 584475066 109270281 213133429 474299012 343133842 69045828 342574204 925647042 782617771 401092458 318795783 190187844 490333917 308915737 781911615 686265882 250294765 281764368 478901436 686008829 921683328 16124478 819098233 655350088 816691501 192998839 960660700 403215110 381253993 547793587 551613107 530180068 51248788 944396183 660452659 119811389 974094330 124791789 778513657 128927755 310103757 413786987 503803146 621043705 832582435 687948009 962927058 576087124 222882048 704146282 865263147 590067989 909025101 208878367 660819021 189599194 239149274 613129813 80408286 232933613 873466720 343997576 986310639 5153848 376084099 135529822 982011377 883043927 485536456 721126816 647312067 15981447 87941797 854350405 469694635 55478960 489474929 587950946 612262229 472794720 681869930 189071681 987874006 728686544 665741759 417785158 663345326 882889696 801928574 533122826 628377790 901811221 280264864 415262536 794194009 918386079 608422921 473840865 998362924 479128661 229982591 964506590 407427164 877753781 11369140 85645944 257136490 765024232 88350274 875921929 242568007 241105601 864486573 753395727 301599555 449966254 49439577 50276667 559424031 417769942 133325208 663380060 369591550 584807679 125819815 837087602 303855217 540285591 650646436 674639516 256522089 277672883 113118363 730082600 283230277 58306326 530606971 50433160 846960073 923001381 884133405 201646423 994144293 184852977 978380866 609432664 45100525 350741041 110729367 800154488 557838621 946275392 147315625 643913419 727987741 268434476 544347380 985501063 654168246 771757472 927338454 93104405 229119777 775830260 221297308 489314301 921607930 343601705 655358838 636529395 967811655 702927332 75437436 367177168 885860978 69254773 829328304 840900764 382128980 590248147 696898556 418230913 609527339 693227934 66750001 838266065 688967321 154401821 404022022 157204999 37678507 276431679 464077600 324293316 871521497 125598875 90194439 293886170 658699006 198420335 842704680 422797878 858262368 583013284 925733603 351287287 769605295 444442826 516452212 516046172 951115261 640978201 789586440 199433941 109105607 493257837 534798254 105107698 133981938 754390862 305785440 319262065 67509198 891289582 917677056 640473138 380790542 66046752 30699349 642483778 274137809 295850854 589408530 399260373 743958426 14302184 279523536 41700420 962029401 353182068 10840593 467254550 657888864 82939777 907498810 13770483 652390001 664350510 472098979 870554031 628601772 651313733 115200896 879870532 589597089 337664049 336176887 679734232 183960133 829661962 546425610 859713205 22457075 903949971 860658099 417498958 228829557 242799918 943831491 306858303 929637619 549845745 300883969 503590984 684419844 112262797 621827093 883809627 777084584 436414563 234632591 7328644 257547074 75566459 944424169 517616899 51724192 556550789 604287107 992661560 906104567 976049366 184148391 619089075 753094626 163948399 362685321 180128802 844541802 210821624 893727293 510005091 217007611 699540414 650317768 128034169 422244968 878083256 781219092 303081613 578712305 472002697 980351727 731113205 645964857 405966709 332119317 231536172 5991504 24606061 418513188 664671700 99176361 858976516 606638507 461771963 233482786 787560063 51959060 636973009 129282048 478538947 734271678 370959665 24311024 547992159 63247334 982337825 560774921 711861385 288407738 216713994 883342278 357257250 401925959 209461889 611578638 245563057 946144393 882928705 54847533 160873316 261043550 388466475 41371352 857198102 772712340 350569804 590516782 647611971 456007384 420752089 558924724 361547793 516174788 537439531 856249429 579826000 384296669 424446917 540127080 890282106 791599495 927639891 132881322 871346607 638117654 635008167 405885504 123530161 513070018 283697086 287284665 235728112 53413294 947439291 882056456 503739017 55255011 969642218 229603979 61388086 134408530 650311613 4868358 537866337 187465683 321190861 728673448 268905239 880237862 312009186 129951239 567212304 353536507 208901605 48319772 918489517 497932507 496616422 529337426 558927601 660683076 616420646 452938610 93041296 492255382 700319494 275090612 977041118 827435803 607226896 149602740 282730463 329225475 654634745 114431607 772424755 428464486 325664667 27513963 485326382 462769480 889553402 654191459 507362503 242301075 889284417 254700703 166518429 724821270 91892930 628750274 14766836 927958411 344948474 667644892 922669248 111791762 411379340 962169441 868382616 159502775 144694594 192371245 617564342 174712425 298839826 11823751 844637705 235119361 673552661 54051354 107622168 410851266 723518605 286375934 296642081 920064981 244018153 172436654 447983359 996659272 289743289 94339345 912681021 518958872 305748921 489009525 860874757 219794983 337950668 855375499 274122546 518590010 951325950 694581876 272725060 589108743 226712197 34379188 533216353 572871458 356065462 55916088 939237975 309059344 499054106 465411158 266853277 675113018 822657624 934852556 391802709 141746417 91085128 807385279 182951749 479738476 385293793 660242106 792943323 50457553 868712262 813329843 293760049 393209637 381960646 878862600 123795202 884135001 138500051 726988929 591942586 390258251 286624517 402343751 649459813 225175478 403390754 263174382 515014076 829625414 409517846 840198267 111802909 31220113 420644338 536312138 61920400 653199880 442701810 309243438 84384196 20928016 862491004 69655642 410501904 143689461 710938137 886437996 662460277 78015461 869527417 446667626 317503126 472848632 823984252 363891139 780268998 105922098 764747300 658715207 268243709 650099322 419513501 35095348 347850710 621211301 802146870 345703220 2991263 328440425 718649968 458342480 671869758 401812329 385077997 432132865 931194962 996679210 162441843 657901857 205424664 220550949 532422652 626345204 813586806 745169324 53107614 316930092 519451389 303126788 525192609 655450842 794631649 788340052 760065389 550459006 456004356 695514288 335122071 161085180 351413230 72979984 404303833 184220067 207514573 646012503 659052566 160391204 245151353 636153160 892641627 603994528 220819311 751330459 643933144 690970525 177892054 177979622 680077036 107272965 225084034 543441580 389033496 704223534 295680231 51177302 69046280 904491735 520407077 141838898 861500305 317761829 627071744 532737406 215035050 260200610 667446765 259298139 70845819 955069511 164664830 305482956 938697547 508351089 568131062 812753609 725420943 300214754 548078395 787698985 803488485 260691661 939209437 571111852 734981130 183246784 829224081 907733757 632152303 305536703 971649463 169935789 544401317 916490281 579209815 284459317 546273638 304125392 4681249 697991413 799102873 625513449 495372649 681976119 33970887 858741262 84045363 706770989 662886305 686690888 677751075 984760560 986219014 556538368 922598025 849222786 726262263 851288849 931625307 824975050 453917344 438840499 378975802 429067677 192625493 503982223 226973294 15635887 896595087 150396847 531394789 629403045 124245235 887902600 774786871 97327880 304856141 687440122 392109217 870143817 655151244 485579083 362351883 661642430 209702611 61408037 798408199 811716526 722341982 24232864 838053833 651461439 795145114 767047990 397371442 469268610 460390172 493970128 548368329 697504113 105800353 318426296 549823677 499905004 464773126 994671526 522969060 850576575 876884061 675284407 919727553 830740632 875494613 273803629 345643383 92879124 564871113 391222457 536178134 604689840 317619647 460301292 268601432 360837848 932386913 218436296 733613083 633756894 431255937 90842481 817280228 864379640 807241756 645887858 413964327 285885002 886898006 851436739 881645559 211296988 532389751 89684673 694888466 332540064 187514100 820886829 474464997 522649201 476677482 543935289 897097338 120265482 594370715 967769720 876632972 291867675 185892208 775732715 610988150 942310192 377671425 132825841 382809156 466085577 935263106 514032218 242698659 391431487 691615583 967879518 715139050 959739361 732706332 809115800 657507865 169297887 689269616 27028236 687444948 394399058 944920119 611732777 576779376 545082938 651961201 798785477 714325985 846733698 990623050 106221849 134247366 406681595 256295961 389534159 778218086 577550684 797586261 364336114 327408051 600245578 253950626 263136248 768003136 143876173 90825933 622992830 563721297 884421332 818122439 485495176 156818632 259004987 338499757 915350278 40397880 124809665 668757187 406824525 402623960 991394193 41696369 259017431 895029382 439757243 26465613 270470797 847956427 93344568 534549520 612279480 899325653 260761837 50221472 995592976 178144634 925939871 892262407 183858867 395757371 302137342 823463288 297185060 119246911 452738984 795024719 584605525 506678357 854224413 401213196 690766997 114407923 717662404 667009889 145426338 928873275 491546865 235006746 161741734 799368434 614132442 719051318 23289645 636566409 539671717 158634712 681867559 992071189 589866839 524297805 798666742 559690582 496727009 575077891 636915808 867891383 617340958 537837723 303737999 171124033 621667793 676935378 252797723 406686897 618877856 182679706 777953278 78396512 770765342 66229251 661227424 36255835 742308036 656120393 998307278 128093263 987870962 352827085 903974588 90204306 461025012 750698522 600000008 421844263 934716665 742414057 187161528 81901745 637419546 914644752 451750713 981787009 707205979 52550803 312869470 763577999 874755747 4456606 688287334 989471352 559361472 435334279 89139960 522122886 759340403 64199875 107624222 94198697 414043737 545220603 557919824 450842485 439440376 870714357 578713961 849444137 593855432 444166312 521461168 868467374 481098780 52304689 527175120 951985045 896955194 27485390 995842272 167287312 626988107 315587567 698114398 938695173 92880475 528925987 172424238 976489975 1859944 465095721 748238238 410279444 207476051 721783523 663877730 405086519 521509605 711146075 863610521 616241116 314414284 338052037 661671110 393028910 946386599 18087803 498408150 665825272 754061810 811174404 765353250 611851189 952930073 4388104 284651365 484891523 827678316 168666715 72947141 4042534 886693156 142771448 357116364 604828691 95035493 912942596 790755186 373245532 945136695 846834633 844457495 410469829 819634825 889569465 859388795 781511856 531060279 684460657 60658381 640010032 551032318 658582706 952315298 713281021 782046607 546349677 344546042 68509554 9747570 261410479 203566136 71911579 86878505 794506164 218292777 614737955 793596943 217834976 220082179 135712613 936854638 305292994 693022819 805417821 217658747 833562633 643723853 250094516 841272140 809004177 342121521 531999674 500662242 274664287 227950817 414336868 908762665 18801819 948388509 822793301 980208369 893498010 328621067 550218960 881526257 372197592 415809844 124508358 174075085 957214969 787553425 262972111 931039245 332828103 603585532 402951464 109692962 260097586 743427006 567250108 380094569 818745434 924705155 439440919 299388956 121531011 522154847 145442928 929998187 693809172 863251662 604334760 867651173 299409570 505644987 718596680 715673601 398769897 421782892 830146684 838534946 618140107 638091677 605508379 696082835 760522581 607431015 405182886 671597827 276984760 294329423 924079685 166120971 841874001 239554883 258072773 106936111 593953955 737888155 287214495 758461908 663856471 437982736 593360625 992156495 307998533 847205834 477119874 332885974 692872291 148757333 47736773 688527 104519385 199944103 942846154 71240063 312089581 40545564 591064408 585195672 158032663 919365245 825733329 363229877 711106801 805037555 633466951 590110101 203902525 538760213 712200048 897949154 842685671 745804510 553243562 656166448 719971584 935947447 161793793 396602357 235170248 798095722 648610590 792757905 173205150 494416176 843473501 46374481 9018385 926957987 764538555 738145124 412623056 49602761 942429408 707266277 674830011 455335952 597331738 102514643 418282961 760923469 839468130 857219608 833227582 541022141 202718041 620807047 73809495 592456450 626388289 439854807 250657175 411891248 867989772 209236651 134657953 513120953 515726928 347286666 227144766 970978680 531062352 804198375 75557221 351954868 149731569 456380187 573420590 327147549 499051457 910341735 472575966 134378946 712057081 387905781 556650208 279882023 454303351 884709332 324858825 900438831 677985474 328720128 187650129 760518692 988872203 590609499 418931293 240277183 996439336 163522216 112959735 987855643 647228568 824696481 326514516 909504958 861048708 728217048 755245518 279311511 713405627 918606290 288141033 955192825 55461808 175901430 321247823 807031202 645814153 702064537 79444949 167393719 547791367 260241136 19134581 957812679 171761823 688856096 384790355 285142979 160606051 975946543 901389499 114159372 38649364 127476753 777773340 652229990 758149915 51354013 237032983 218157568 140067462 737268885 726932844 61986413 674770700 639078561 371036166 517081515 671216909 40870741 354416890 868449567 988033422 117424425 150344837 524587926 748690754 790194300 788055301 95346247 41700222 115846812 628577799 491497933 336359232 210866871 736943937 755472174 110726706 400878822 949483915 957324505 772392355 451772202 778165739 792575903 690008968 520147056 735608458 951578051 319707011 820021127 951965629 405193189 321543641 137549349 123261693 726306837 922168952 570588657 550668785 481751752 161913340 438513006 92940127 256981467 265600161 19318034 63535678 179115923 389416270 898681911 355910315 42665374 848341140 594534938 432203490 809831952 636801960 962769639 467193943 639988841 727139693 978573486 898594456 252237961 549819237 85171305 880918624 15651778 439145667 520105209 456222871 281020872 130868572 575941161 726726976 984690616 415433395 838562215 410601623 418885399 685667053 981590029 129000435 564751570 706704343 765745119 239012566 646128705 749920235 996854915 700509167 26285596 616578375 373301069 370707982 915235725 851835060 761649778 143174446 930888478 830804638 386229272 231450486 158876614 56314401 828560200 526951982 235949539 292774393 362137329 701366475 733984825 473617804 191149291 448882662 561662198 199235052 409034490 511664197 1646255 973564625 772565959 302894545 90900318 377049494 486985696 892223134 715581295 201585732 627380932 682182632 577602217 486315150 379187152 732270864 772219716 233216198 577603407 427398823 64059103 854895855 497053552 682407769 578708858 819967919 670483791 41754373 99960967 447457108 448222189 512998829 627469786 846896342 615346993 760321660 786787504 746056918 535076589 321648329 460988591 219723928 83254746 746365706 717206243 212314382 765007004 603165158 926106816 173623246 598951098 149096233 502192423 902112793 117894567 130036417 550797659 356739028 164961209 83830733 690423302 593448078 392601396 320478097 183700549 212710529 921281857 609384053 221189264 788920713 526809327 97896207 20199884 916744751 71799352 417224984 870513224 986084002 562246400 133609590 912723130 547932091 43461134 933301300 727703357 41439223 783880213 461604739 120408151 460131965 889065643 574723777 467542007 508445725 367798099 624759405 544670831 892083789 832181367 232926262 710870911 550278191 369739367 548824559 761240394 437057416 245933660 61666449 752157023 536120776 463778171 989753667 158879154 40909577 71386057 979783755 651212707 749660933 324261688 413442593 442901748 663479847 916927650 459536989 216277203 891318906 647073480 890134213 64107735 226116285 570245972 621646914 446254074 451287878 250548182 847838696 16786340 404154660 195310281 900580340 949035683 825953026 401850506 358289095 65426987 337258041 163203177 422055916 810669270 274614726 562296722 392730392 803392431 37062482 908491809 640380709 470221599 348075565 993719316 156115223 961688572 627949644 631672407 190816024 535489159 274993488 341561787 689083263 253946719 209429891 491551224 831181249 10945174 811567821 892875954 878198150 564378784 795643850 713980528 735530905 330450265 60124859 253470627 203636970 32406792 460354176 41779621 700451736 688093528 612963249 23654326 638066149 889816163 615027585 475029505 691621179 407378848 441785550 759441046 477253421 219056888 632731938 484324464 623798905 560176057 508249514 152374896 147373568 48701333 251380798 32670301 240309710 395081130 207090785 728131051 760168982 29997952 690301490 17455023 5039669 894522371 464058248 674349103 567952811 566320774 212258006 282823890 57123622 276679112 793807935 882723051 22987639 966755054 828683397 418882223 484783258 624393865 788058139 326172741 770971317 309373830 17058326 958450353 682296080 528023115 228035896 689891046 262425375 8448919 37611238 311661761 847722365 433538457 835912243 980500478 764846829 335210217 491980497 877946696 883338076 237260670 702600736 271347506 99329756 965611972 115054123 910675764 795028136 93036422 784430748 830401711 179567140 315439352 759652817 700349418 365082075 956939193 828769733 938716957 989899905 821454282 30988062 380659033 396491246 339998366 474819118 872568740 514840619 256751625 580000747 377672679 706342492 816900932 791129332 501830131 950340059 285988344 815361683 622702207 651788062 270114611 171140530 528471089 338859215 960030313 702113261 100762765 120040113 480290933 802754691 28626183 816385725 613876383 884314455 483392503 54192651 695947154 353960444 751494561 203928544 989683302 593573033 10690859 503558824 859562905 453617980 979222440 776142068 496556555 80383549 361067281 406244480 323697166 136631770 673054022 274363699 671713878 213036780 666997013 339679760 194468095 981474291 131480361 493796434 29184656 153975827 966583069 914134611 467574004 274445340 307437171 66254482 311562885 368149384 999174551 249260733 112087802 575453557 461635797 391276712 52228221 963966377 311253352 115831629 287053465 923301269 693193332 204120529 739288899 636465486 845948929 295427709 629745625 490663572 664557054 538859461 953840672 990907345 526602056 717375300 694643014 643206928 84215453 87240382 767770336 734899468 447227303 626736927 596105195 364555809 730608632 242444151 340419021 85757273 104443401 102891012 916965712 771707232 715059771 912758569 883967407 750781842 873655767 103819890 926642561 619336939 382413836 185495678 320697295 322463504 175760123 633154912 836930310 453981526 659022493 421334244 775765499 917847472 271154654 834196041 892226794 381930433 776980369 851724768 500129915 54701003 73989996 856226599 356221624 549341632 120986900 623879101 493793305 618706488 609782544 623052912 923677305 807545714 467865042 932970551 994976284 911658069 182720691 881433894 941679284 993789806 117375731 326152069 243965013 771340792 108998332 557252284 294698104 259447505 442907169 169071202 525451526 682541951 890585625 439128881 772006220 24451379 58178951 174050826 457033472 168823232 458587699 108526845 151732029 664261805 142365133 69620791 417999240 919860250 179494129 636841751 224133840 826041307 580519456 480809761 682025067 987041891 202606272 772705021 636437780 485135317 773780006 473796481 446509043 86746870 140193418 532522665 657418129 217300022 908254734 444114580 324293863 163068589 183209402 401083025 412326480 764102937 565065854 106634258 532329106 697561826 602294839 550911922 830953436 734124310 470379682 27631671 993562305 342560112 304154221 22635911 859779902 588263755 313439780 236547514 454054845 156178606 398521669 10809864 721145858 950612301 756791597 735023063 522737229 277813115 855869993 469842353 263388210 317528377 856277606 571244617 686710716 204593452 367381762 552363896 492161623 596943782 441006844 741626695 975413718 85300127 459686974 889463516 683619704 244325298 845959833 511311757 68362981 281342762 727614146 56432596 517709093 582549751 3574627 800243285 691155887 682373803 283185148 902941915 746382179 946475915 515045895 652119897 18592130 891270011 452620756 653761257 195070143 541619210 119873453 903490768 969652265 654423921 996093111 787672443 176281153 71141263 378437123 656685434 63751659 501261545 472813961 226234504 778213749 919018930 598931759 517182604 28869523 131258558 115149240 479612047 621683811 163525262 942169050 732342722 2339433 320451657 883974446 380004997 806101397 609914559 368929077 637789015 264318011 734199653 942782548 638938084 429575191 533772637 134946530 210248195 459733839 604621931 549358612 435243690 360280434 422102529 587705616 232902399 224632435 301319221 240318427 640712012 705844142 90295493 228676198 53170696 410529516 597685277 947050382 844351690 184904027 888960582 908406288 396093782 562551947 684277245 39749530 165186712 442316668 991023516 698112953 357659556 913731987 365253166 715686633 283356341 37066655 536332897 803855753 916137516 295162579 793617804 967098594 850811798 358247370 53212846 778261033 969505960 71272849 512672112 570718581 429078587 153863310 969464096 566712517 76133712 505956760 133882805 682020102 104565782 755218671 68544206 65443079 205935840 801719604 462167731 802793089 607078698 560787065 405717332 402380055 320128148 982241070 30388038 466242899 218470891 388109622 784276171 15306658 624818722 219370706 169479366 72242016 448423765 425435057 815220684 643026383 632348613 524557287 442220304 962628377 202005216 793563888 366684530 787884874 965110841 613061303 58826877 939334497 588952201 919040642 419044696 727760957 277119158 653618701 448821218 973227943 819156168 708067951 106315673 469837137 383473398 965314864 498909345 810254293 600293016 501128001 242412235 519940528 546977076 937158129 963053711 19329617 345621876 94158848 434694667 467238149 241713707 559598741 69982214 967766022 209879380 138008634 518970610 534350200 709674259 517233638 956948962 551325795 705385139 415023095 53305242 23024567 518589863 496701745 569023869 267652941 472193672 697366464 459507357 723559145 622605854 62513722 604524719 800065839 19798610 124348065 656322324 674793655 346959158 340504914 182020053 329908980 124452872 720776224 76936349 594492749 527160361 244607296 416639428 33657861 738237988 12574797 405878093 910800210 202403502 83827021 444314076 726552653 399106978 303907756 723415489 916080117 589712130 690587461 764122611 604611124 858566651 681924941 235176721 299887836 874648542 141234543 259620964 974493863 227760424 439367350 259493592 708916276 63964795 965141654 571035656 995374862 848785314 752186865 960494899 894046373 584878228 463981576 550451773 191510357 469865575 221614984 703418038 908578138 689217635 172633483 507675352 714469856 119772911 763234952 520517249 456491515 885843105 119980392 105781814 761247136 408084275 153005689 726366760 354018996 788310662 537576559 814987568 435388414 190174636 383179621 719046090 688223279 274585042 277312483 221922592 702614752 687524695 81710548 46056960 991349653 683183802 563730832 5650401 273172148 839560108 632586962 981454307 382535312 628357629 34834882 189937099 71073377 493645478 730929642 86268682 773599563 770600142 384618818 76063163 401750357 156811455 256786215 582261142 845237871 806292204 840096091 525044486 340051828 133633265 410218764 216295963 267270439 255371407 170245077 920366474 964373804 184791732 532462764 64545718 777651995 622017650 640755450 85631907 636157801 957101572 809163146 233099265 637308022 390991823 255805334 741986855 70512017 769654621 755570614 62968083 393065956 212222047 570323184 978557550 78039951 988787124 229587381 996131720 140921486 830903388 165692631 94466137 485098957 28760711 929784979 976965245 681413661 725841027 47366032 460740156 913039671 200941006 734418906 984642950 489101499 878272011 92258278 913439477 539809587 922580997 685806996 908974787 945691920 570094252 660668711 84068827 137083311 948184611 542817354 415246027 544379980 670425767 707048728 977291464 321481491 932712868 116785416 583262903 841200148 636373166 94834181 904114712 951878728 283069058 501976409 995764256 127297172 157250049 417759414 960595108 132894396 508245815 589406016 485828901 446397557 544256598 345295995 896899017 988537430 750773949 684687185 136912477 994304225 884702698 598813462 581829466 432890238 443157642 480135821 900210401 569347971 352883572 732760793 936006584 500168485 199189665 706497668 649277004 115405444 138119728 764201094 455346616 829467308 376124274 423729981 540404411 814296719 272378328 313391468 28970168 418539522 104290303 125569858 91287746 488999628 361845926 190286677 532035726 808637330 770892735 79840673 162267518 183321319 124930389 195099785 404448665 380596804 721983144 252721631 939013772 297750282 593093404 603506130 620275887 608760195 216125242 945821703 221797888 358899166 209079734 14245500 447723307 622064951 276780653 423754917 369912442 835751055 424296800 641619025 21905126 960183756 579720635 606831296 157646609 131333827 339672784 759874457 96772668 95202861 473492764 335518695 587878748 201848486 806739779 531719454 607680006 131267519 528683276 80683038 327283066 317304037 820705902 520016429 568497056 264732275 360290950 429054965 69884932 414446758 260399250 809036428 500931809 268739756 856505600 573768816 82896402 173084564 149748325 953335944 414390818 445484377 771214971 899300638 225265472 847491034 622211362 852352744 840974915 52589026 615938920 385956871 651932070 907787298 49016963 423758586 254402711 639237170 131751112 213152178 328180192 670604181 454852288 11334790 220101884 498558642 338026515 462783279 107924744 594870749 996947092 220188628 84616141 732514383 652284226 399929348 372554934 933989156 530886460 800527283 563081697 324334701 734712528 851359292 264696070 938410519 906545775 150528358 928903825 415620859 346788278 985769056 195949712 134178266 210287720 644857023 823962555 532627041 572066158 195561852 943146609 459293 363605984 98509825 981402824 610257289 39250420 173748504 360211006 412146950 909628947 533371384 986797921 137065949 665568705 960208704 588666393 157081921 911049399 485398002 915228687 119165768 322213839 534496381 421555859 494722038 516746251 40366004 151799196 506906677 33614742 302176214 313241291 737082066 805764293 217812874 903567972 94653323 25473298 768338653 624815194 471437308 279136289 637699135 504533827 523699380 835664060 191497106 886263131 554653728 69843929 84631834 278702477 489912221 788757904 59623559 576156263 770825320 914100774 407633896 80988960 866599086 27178246 848550592 112997016 5107327 853413829 926125226 296639574 796873936 720325402 401927116 314625417 90886283 953390059 690141443 867922439 410014576 190310467 152834484 199678291 112998201 353419863 733452642 246612879 889138809 591935359 344606463 387508879 912832433 581079358 523609052 528248007 409121870 311576131 567012538 113389656 33637793 663715166 784311482 206284296 431962592 822022285 964530797 137381448 687598894 295878641 282456774 548186159 119529108 243520213 98470434 856265338 396428038 571323052 777652041 970976403 842648153 759026197 82303590 42412936 614667857 76600273 375393806 272784142 371386775 793141705 795811393 156591243 82615480 241822226 150388065 919826430 723365173 517052393 258332987 936624922 545013865 39435439 722367494 714789433 462282912 228854513 304485216 208912214 933121546 884933983 341305678 566690074 912777665 984808407 673655101 394871762 905390791 210649180 648341247 918380154 742136067 119506457 666021334 619802031 835678281 875065443 699788645 152520887 600034128 150648753 397728440 278295168 105590971 733493929 780472647 625931428 363230224 802280726 87255022 42014821 454604484 534492906 379331571 306338723 664688433 881420100 173979649 914820594 991146898 515366754 131036975 644243849 199477527 754514356 402923512 654560837 604109519 171781835 764135751 140550833 532112561 474794082 28611940 176792312 455418017 462828124 900565765 849445365 67628393 803156422 497442888 641462308 15965622 260613587 702398388 987958958 697156901 236021466 412227891 747433571 866923830 924893541 90691356 281570488 503673938 610282778 802119468 427293391 518737098 456334287 150405512 316696684 697912282 22218879 500352446 643296515 928434848 546092106 625085890 769895591 798668583 263485312 729215731 539260694 178099038 951742610 162038548 107870908 629064736 995196701 837863252 603724711 129264175 156966625 210816329 19203722 303897906 202569930 822599660 368898507 754084031 348787180 795202727 571152493 68313416 443010180 304114758 979790111 31231796 892696820 767158781 471714107 957726666 572941511 484622955 706147772 587074109 274781103 115747987 300744780 921082531 556992649 149596900 236832828 105652991 882395735 65146418 542575488 11614779 64689989 410544828 207075771 50767142 748622246 114411815 888031023 226054527 646288119 565408124 998651855 206054623 352774360 645015606 934761009 317701588 816850455 950772529 223914133 314271440 393959332 939936945 501269473 790744363 684792734 702077026 814990501 789860389 87346249 224021595 701090328 296688104 899867914 344566298 954702106 918559367 844680570 659597186 897569950 268137721 849378899 212160482 687580561 117466656 293975159 453217006 168745481 654419911 920124913 536885702 508144159 148317085 281771254 715837420 745195510 934715451 307949793 523600974 785898848 899913763 972567859 301405251 943538898 813759 486560410 97783943 981323375 810213215 409527785 524006460 526005498 295506492 149757720 165655543 956746468 643424632 450988622 160196262 70136133 439530527 196128471 290777256 693988570 273868573 126312481 864196294 250550543 303161422 336243915 34341163 451541229 603445108 866448281 828945512 167476782 155508024 81207924 593575552 903002165 143415850 849447280 320432598 427596546 805969348 502806472 741815864 503785034 643421543 1896674 516732379 991635555 843698012 339981124 93290075 563669835 584637399 312602534 919786431 96939944 295346154 201080288 495210866 801544652 596751518 471929849 743184716 646043822 672258011 713420057 78817931 554393324 84748142 588296338 9332942 620753358 864190484 93686500 350734123 375053892 459043948 568324782 742610703 634354658 408409090 988585918 728862045 775248365 571283013 380693510 524600150 419466823 788298127 879055010 193395114 486895742 288409630 841940693 441615216 644134097 372560163 217826056 117632290 345896729 361644457 916541905 564267431 573691869 883590568 146390250 895830856 495876432 11727112 533154870 309686977 895685190 87442572 54359234 307144235 870581057 484692200 175698369 835709453 297140580 616831415 923671437 91286611 946763140 240199798 734765225 506997586 946312980 509364625 951376065 295919305 897969973 487430489 156970921 480330458 798708143 646594310 874385498 236277015 662952430 83391930 637523451 43751283 289031181 881286526 442263762 353768777 952429510 913223748 277455191 805895264 286334342 222272743 759153442 494384614 668761948 869239844 490059257 125280115 545289722 454213031 701674695 954782205 128033732 841755902 713796251 879780591 316077505 517684904 951016884 634353427 906782879 744699651 890594423 98624416 255086516 248622422 395589229 193690420 723431937 846571734 900158278 41624276 758422828 428956060 691073506 448946411 526658694 379427750 695757122 378763344 756756485 349463011 587164053 625701697 813369160 976972572 355858729 861691488 164917399 631470354 858165114 920512447 342488034 375366499 367514670 481024974 159450559 557860502 935474703 721379951 123160173 684163872 420551184 84916197 314860754 496102489 911842892 268293596 521229186 604280706 891130120 266004589 499920817 346196677 235704748 862487826 749438524 97469489 918045136 885979568 50855600 467601600 87288362 487257496 752152630 403067734 646743969 440756346 95311531 811047867 810799678 131853689 817208203 646712735 519804468 731362324 404993276 652955548 859914978 114232638 628332240 337280051 475053000 162801225 60406143 577906893 552204176 228112882 403160869 495943866 964429587 383377249 305235083 838768696 961411653 294536480 303976478 772981603 199183181 288147494 749394683 115604806 102512503 282926800 761946587 786739412 59396661 400596450 129224233 111497188 416307747 870161805 748875506 485359675 600982016 273248867 132788207 624702077 609761726 565967457 819948159 423487804 307697006 700156398 212207785 854596084 730726985 907923159 579061786 315791878 165041589 363011406 446892333 807135163 332302394 277386998 807202783 219017536 695434894 295532496 638680793 101139380 952270476 213010251 816324198 147966488 801685558 230542651 42649986 268846672 415171768 435922655 467125963 555985460 25110373 17863643 220111241 870474873 817585848 948989242 76317863 819216830 405202263 882211958 535044033 351429011 815643401 573076074 480048661 920214373 342345155 642055259 277031816 800987020 546894496 636975351 828894636 602730061 895385316 187059027 878609081 911651532 331876603 655833579 421142154 754858531 735687542 116936613 376128938 969977411 402617875 715620559 431168070 245381391 324516531 39402525 518444857 916502355 712339553 185124268 96075005 791516093 618486864 578010629 290801853 515234792 235737310 435083537 884760391 894004566 203434126 597151527 905404945 223573104 944885513 269409285 512599100 310179718 577004579 957789135 908568463 95684051 538055895 252449809 871365496 611313780 285920329 301822146 975320595 886509944 968265411 996989246 213566745 106330317 170025146 584815950 241436914 54659404 377289160 264660506 534820272 327132600 102743986 115312954 274697739 375209401 343022433 545983404 800898145 994879200 443208680 174180053 982096310 451144616 874559876 660523393 382360254 107788912 422565530 899898596 579244238 932454021 616308400 84432799 84314853 694653714 684504446 774465204 274539690 33758774 770816989 836318355 820029806 497178608 984028880 340694543 99505449 966684456 244167299 57725284 449911671 447676083 259182410 104415034 199562912 670869063 854995102 419018656 397211285 188932996 781688868 735067398 967209453 616475383 98048681 461613391 331075300 79237904 518106909 880947898 844359270 499278118 393732506 328795384 930567936 444542591 576161897 223862302 263531497 656659262 598078192 201293226 564491264 234197371 981447877 23505792 257821389 832424491 71241891 843766508 239464319 610613807 388027755 658492326 372369900 612305232 75070250 518654666 694854550 340269890 175643669 209491422 620275365 109857438 710468485 832683980 134714594 663492579 643208444 670610927 388035275 555121277 612216616 194592510 64014458 402866105 901569754 546160675 27436730 126869460 76259857 397805544 622031355 291974382 565433069 248104260 189613904 509626384 769954488 899405463 641840508 912887853 590125289 436060320 1292772 964627738 587590681 430520208 620899225 176437918 828189962 951732732 638147150 209121118 61995946 237452256 419476840 456529391 576531469 307285925 341059309 721107908 993069419 853431059 203660426 997445 523054887 500399715 569139862 194193335 448866255 483753776 204429587 439811149 933252630 756668801 565145766 960602399 14864854 61740227 211445153 613877041 121158930 944967881 830444279 187481705 858339575 819032787 77809483 265072281 271956183 216120452 922503648 817300604 365979949 829932781 785316267 577902770 195474589 843701118 713558079 253291204 880039152 669426969 895443677 9763 882049567 887837441 381835117 614360875 248439614 444876259 907257211 517628953 982247828 583049941 541764417 275642904 898774927 907741267 298387100 269367354 222095293 47246147 333902870 476942458 439959002 345508341 786196959 942173364 269082060 501230360 200331466 625215926 689832094 154235600 569358168 351198768 262422400 85125534 340102835 75652027 954029265 169696624 153224103 431056854 121280787 688603292 33899948 979917551 334267376 220362465 606584291 844005205 794651453 381411425 165997072 777915455 220968434 126930091 212043685 481997006 530801974 796942769 798283961 223766289 108650325 505309396 126523657 818970356 703882431 624181211 574561021 891838290 628494606 760106990 610089638 942864620 898333194 231156388 144265914 895292781 979235484 921455868 711624091 950473314 11089366 910880349 604461130 489710153 915001847 789669775 760255869 13977985 847156573 875326409 460428937 359653201 366165910 943466409 165285993 467873007 904053335 567989301 130816714 932008048 952133750 368275418 100167928 337128921 544422140 891791724 958422253 626663953 248772627 109744936 58662980 990405097 187801612 949102519 691608393 901753626 50798178 349410080 357047272 323209031 431651517 447427550 32023739 353828600 550830562 952500172 826913277 192388254 962819272 260859183 610746520 319238548 513649033 175296437 620573981 726586651 932967530 120088944 952913601 605865307 300189396 701283299 749652066 907100772 270525019 723124462 241293707 342400584 265679803 338904546 804293991 851370107 683133398 522700402 770955215 517815942 343746232 991246268 34637891 847071367 68060820 271641927 660764906 186002241 38920902 954535933 379317141 732793140 710104272 78714165 47730870 765870026 529156446 185204138 341568626 471704663 693652292 246010503 351014284 670735632 961848444 73342547 885536886 523264025 363684651 253561348 307078726 719724665 294268568 215574012 999933372 686103332 887929916 600282365 265160255 655518705 948156079 396980020 156219613 870694050 234849459 320423735 506904398 826900451 930279990 263752451 718188276 952685119 464251209 40407803 466555859 113239348 89210666 396307696 94170009 295394339 688265531 807943958 902281376 53044052 289655301 940943115 54503656 496444152 747104319 351676115 894825749 19276840 43815872 159073240 290808184 756340712 370764431 283424247 163922187 829035552 724912087 551682150 11833448 122726558 92791528 196861647 814527707 920746528 241865281 711934014 68168014 525387077 481520770 372634150 251040092 82083220 418478970 779598694 632902725 366109826 21187866 459853637 881048559 235131497 266947196 149790829 312592873 502625157 556902118 168446454 960459369 60708100 641273024 664630362 490208590 157167605 65254051 441168514 767733028 347054674 913371714 374138553 468017686 584986620 196006278 37875637 958630653 960881596 966945146 138391955 124724823 275592773 970064208 93364439 912815946 297632557 398048612 991554929 608384168 418401273 85737014 731466162 451081704 129681679 621827447 258051932 830974504 831925441 386654966 231855250 915840304 272856651 761056174 928772834 193299569 141170891 541438663 848906816 902381567 380400714 548652678 344812045 579713432 357544636 802684771 638896135 122281384 484837112 400323316 313332065 714808893 862486976 398283523 983921583 804492810 450469054 212747895 177971183 808513396 272190853 210161253 824519554 752215424 179561096 11910407 11449659 248569052 772425775 201310398 420318796 679757024 96262079 526040347 31214932 778097295 739481194 332678605 717681495 971935113 448465994 149783984 52768449 264025378 313686880 451516875 654934635 596560720 649172119 162837059 486978701 487162802 9647294 461955437 124049872 593962643 617881998 46585030 29886019 740904925 579881641 173816306 50857047 100390953 495112344 220600251 125287914 554872759 312059342 391715605 507767618 558216045 22299042 233760281 120188942 724581338 563444566 70731018 719458914 431625785 127990036 303509846 125351867 339134308 512132847 150663825 676663294 819527398 922224091 346133875 143070329 545720303 146488506 306474208 712580830 964669520 792748891 117065957 214077519 943329680 970684267 403775925 311193678 980163026 9832834 55805096 219251661 590263013 627084324 448627015 752047131 105541443 148597435 334497335 520073718 408508680 538220180 542104654 100009609 767649020 888380396 545086857 41246812 384764306 556092643 597887497 149714532 381921245 571246211 811528986 70161666 896461468 266294716 860890673 735554810 443843899 105380457 534786020 522997366 929920706 606851145 48441596 825900561 207668463 39926789 46729569 72996802 476469023 490021937 158066983 198726131 604949335 636773445 218526090 836479087 420517704 511392674 463005677 197419370 293815114 988244625 75808987 69017221 870682461 345358660 766631172 332595139 719610404 508772564 973570123 643359888 374473203 462447169 971368109 684641989 833799103 22111607 456614741 439362458 296711206 916626501 441577370 64042171 346627699 252763492 245808117 384367407 516189074 816421239 603733259 58388590 311069978 371316231 545247909 36653909 448709198 330411138 30509238 708356394 756008720 268572998 354075227 5603992 379297525 973487763 572249302 942976695 816362544 479658894 980720276 28902402 782652578 727085390 965674025 477656929 232643792 789707722 886850378 461160734 947602157 602954979 645091810 563492337 404671438 927697248 674626297 773661172 142310898 451969528 752685505 662214577 678767233 807288894 986921623 717583 320574539 291004856 823985660 17106024 810025157 309049548 548076446 33073528 999708431 612508623 478612817 100834918 27697906 426900470 584270347 517514941 896400860 441207397 285114100 357994609 924575715 759882530 64093783 643407074 445457097 965666338 639457956 837874133 443870963 242610750 998402938 508705397 206020723 579328567 843737244 746616920 551134715 512485298 114394867 23800959 373588975 340392518 552832915 231109706 238632788 614225000 273768119 55675016 209251037 228476029 471851715 442370672 851622363 375287755 675407681 627892895 786811219 908475783 584443877 800027159 276740841 243122117 677639051 329379144 242789354 948417162 20223287 594255623 460952660 321318079 597515536 574547344 874495427 257168178 378878318 459571596 974222458 20098467 414336459 12331780 401414254 98877869 413451209 448014958 974131767 852474330 990932021 314854313 733508622 963394207 368491518 227967736 354546910 241085777 44887366 137692170 358944569 894781237 597163594 547102452 848746064 603902576 438939770 786753330 922030855 800675094 956096359 447772333 63157987 116315171 465574859 456378540 477439765 862767218 272793739 487820522 221158258 258658768 875275699 402845315 92505981 262981103 459007860 891947769 216148824 566551397 158644523 695496506 569517783 23818420 830704218 207891617 622586478 898647368 219590062 830453733 771241022 315133555 556946937 785082923 312738575 224520297 32378677 521651204 572874572 365700430 300200840 592442469 99409939 575465516 285949501 340651433 545512989 160648691 306717379 375235734 4217556 870136958 433560507 393799515 578434888 751947148 3125220 366573707 872381230 819742153 11347756 763291682 198492137 431063490 564875172 404621960 716348284 232720628 500146826 255315339 907510168 18232001 677817150 871526751 185282708 101373294 976223310 709744030 259823216 358677295 829553260 951056466 135498195 508420894 737545076 254525672 885137676 777656891 491662696 48220978 652974867 461110383 124480373 658944112 45405316 781728139 651184876 203504709 973356716 681809480 679914568 649135041 243323509 294697288 41293360 98829399 232167800 441970710 125330029 824529637 83054326 681630242 269224688 324850863 931908821 125504453 679555801 227513957 56898723 444104510 401389926 657686809 914868376 62458811 867119369 396009802 995999893 994075720 702402124 745319905 357058334 100363490 183238898 508948260 900988517 302172521 73771740 563683276 162929472 455022758 540879124 666462198 284759086 824429898 451824336 312032809 662592088 828408560 368941673 797277263 283784845 369832729 852185185 288720574 418100801 623225388 63729252 507149623 251408023 862562940 155929672 262092761 154120019 873021763 566887687 575426614 436850151 351560094 798610882 556701248 967217256 151235484 207720136 881420120 570058393 464422698 775175816 19553088 683608287 730359588 998817443 591536425 612695367 532968523 974363860 712858787 992580746 879278151 214374927 699501743 4519178 301820070 639974752 667411121 590647242 273671144 199130887 184442742 389188477 804946540 144132452 600294964 954265972 876431224 383676934 26242441 71649463 601515072 403163805 793016441 638767847 284079838 258606598 298628976 532451668 8620882 124230979 425205061 482094073 205186181 862560384 760174135 555773552 670217545 366443024 246851814 554280196 344988502 964238193 408031077 345057186 975412814 703650880 504998951 528465636 605541051 716370253 5410055 85040903 668113167 568518027 308754508 892785394 685255327 537476373 315207079 845084468 776455856 19531308 579981607 316172041 901567851 116359740 660569165 430193481 341704417 860357340 102260474 38779264 252200459 227299010 431219331 476552413 857787848 583755990 680442518 93586229 644186597 746892064 656232020 67473416 571897873 248624084 80751425 720061824 457110759 956054093 805238858 23739753 597024996 556986895 645557447 211852346 998833016 443158980 989433201 500089365 691612143 157819459 241080175 836882366 450061445 688463234 318187854 928225705 445436761 641572775 690342916 799108841 380939637 430668284 248791534 15541822 112163275 590937079 864253394 657385232 813826101 839222321 855413215 984549998 988046449 664211309 242358437 106523663 182667562 994080150 26167842 832730963 6255860 910230210 621728961 484446784 39626053 61212715 275509320 802582151 301346175 173375794 945191155 612269182 419170283 29223013 366718553 393587749 776445114 603855476 380840068 422465570 363490568 787886399 975219934 870555846 822335443 579764933 76293440 79607046 917462788 456849973 698424037 533768068 858602609 902825695 631905648 632732037 513111244 383094590 849461747 28974073 938177213 53320182 175904735 126766198 991543752 141410007 69372947 480308287 144808802 525782477 871777235 928872758 773130723 794156534 982107086 577430769 273072011 505886360 276220699 895536032 264233349 940032539 370990133 745532198 730436832 672629522 745877503 423695370 661439387 904875322 560169672 176142461 994348431 650126966 976770377 622755154 780331914 984154067 365564313 489068299 615062591 126135424 904428609 482969295 40510787 780420314 163798319 756435820 323127834 636375908 280059572 766657117 581930796 417957836 414408851 58416316 674577098 462929891 920558317 191886932 340188718 62623909 216408911 254833299 547811451 848322355 248970672 436252046 71587765 33818072 979845487 22962954 159871443 592039181 15099470 358656873 419483050 565668969 468961659 959317693 218928127 138939308 339188364 441842619 546318969 502249929 885411455 60834501 770110121 202208204 763164855 690002143 784189193 704628727 842321410 518288571 340335611 612097191 13774232 440355247 485078727 268667754 179945490 855592635 750358684 749769716 886349944 844565895 764090776 433808672 833445687 731641694 539587003 715766257 195448099 4655164 170974701 197404814 553801850 909382591 772557054 410414419 49037280 479240236 675971754 675390900 681570662 193447287 112371856 248792919 797935487 762337842 90184509 908767495 333955077 435214494 234962205 64151991 868096323 729311140 639813005 941205891 539654369 257246162 431736268 274337453 417721592 530806880 95523335 974817441 963717380 820671021 180130379 646087922 287310571 175944892 370873235 942237788 452781561 924710725 147024575 361738176 343218147 927106455 405190555 799150381 323794375 736932661 700658645 437887700 524938538 377920070 429671432 293966350 631386874 53560475 718711990 296970852 674897035 362666663 287839559 705216124 831414428 579995275 613652749 373468973 339038289 144461585 242996289 707760750 734522425 562383012 943565570 982954597 63210309 432701022 201649246 248242782 575728599 68461311 792011074 319407051 409433265 537662954 725647754 235933511 756467713 853168179 104369908 274519959 955842652 880311183 351596590 103591074 923647427 422145885 802360775 28792960 693653655 108654502 51906868 547591786 882094758 779393046 603512284 707987908 54459430 444524297 36368393 962692376 384344756 836723833 674378215 615788317 948071508 744980753 916271250 506420649 167621239 821894943 884257034 22580418 401291503 695579034 668658492 33417618 168018681 943231778 814968053 88359278 818620475 437711101 548916465 884704979 110016450 875685404 772614606 456824927 612301574 641089044 873777945 556180447 708971233 158683687 501817920 368568648 243790488 749601339 975163808 726084020 678693595 848311774 36722551 887117417 572905148 632229705 976876785 478254543 912183996 629551704 663755034 814251128 851984828 829961624 61925363 203395621 429899790 628151093 628918103 49803443 910609509 827794437 647157264 52208945 791115483 67247750 240478419 835369679 752843259 53134822 619248437 898956781 433205677 911566062 414682810 800349963 527405131 770254617 601973707 369624533 800106383 627825026 377738425 421820444 793245086 792728564 874521274 345837792 334919689 354453470 591542005 758533953 230186176 331669333 953304430 133477770 331710244 299841051 414899738 168720945 406997754 681765012 928588241 83188943 230589294 203066066 720127828 405925158 132951062 336545162 74502732 325403684 205105646 337327902 834831946 468681947 608981599 661783700 388706761 576320390 973913136 61207195 670606120 160207499 355864221 467180168 53954995 537105264 695473212 395856224 35071641 295840748 842064409 915877061 4151282 485141211 887687327 173737480 11322819 6348604 53781153 728115488 834174707 309883198 555341406 168073644 426188373 506691381 420714108 958567926 363292574 686772376 847897864 30574059 367928436 110633228 165875830 909885985 27831135 820750177 158681251 934457559 8872140 467566722 876820950 253781240 987439130 843576465 700557244 814488849 629112971 916229581 949985899 313279577 365337665 351957924 574943068 803336623 177570644 474839464 760274553 28821658 959133370 201704084 885643021 776522314 443042645 227644749 271198927 712129688 512625390 19041755 425954009 105360642 550606137 909178482 323674802 139215276 797817546 298695283 688479561 922501227 945484327 370547545 477211632 456999346 409897143 892764115 202440040 629107618 314277834 841748662 820929237 762555649 727123869 692840443 606605505 731725889 535497804 773759429 611839524 347968116 619941095 320210783 926229853 960812127 245755994 246698559 378984237 424624487 112981120 36649725 786401220 315416217 467612442 327126623 249325495 748077486 866574544 27525199 709262082 402783240 402717239 244713694 778141711 870817706 581131972 115729738 380269731 162885190 942926301 819897590 877144827 315785267 494394308 512524399 178919086 649493870 64517811 871166565 320128967 41424544 685055421 862992562 837659567 914743832 17576933 96504159 638048828 446621390 829983507 681120146 459388589 618118497 254867738 906696352 863838375 95294743 156896437 712186118 686725429 991068383 470527105 609522533 371445709 656552531 728997899 160473480 231472463 430506673 70713536 223347557 967246588 631987677 333112063 133739541 576430471 170045803 147059461 233896154 723571710 252081553 400397307 228981281 348423396 170016299 209669877 742670975 367484189 166279620 267327978 579219884 825236725 883001483 930735804 249029516 146934049 594718551 654903350 920427309 165352383 554448549 54500614 556908478 332101459 479340444 707612870 658430879 181148108 974524688 895829754 507715919 908291968 689225333 767127050 35413626 901006891 680316136 67615301 876035318 638045681 742025782 138777319 688971709 187757664 433273289 92123919 453599726 806927729 17305530 597116614 378170845 531476090 367776715 280448003 934803444 939115846 948117598 671902103 233178580 396771075 966577543 55813193 752375614 652296513 67207674 512707519 2190110 183220990 962513433 752963469 397268104 576472485 755691240 356854825 879758774 825908735 996190490 568046070 220751628 428752704 564915715 992170560 794825748 798947334 393956004 740306484 91866245 241917274 527851685 250419693 702508852 246983079 106734928 181748588 337248552 610757567 254522021 657998747 247576206 727044578 368636477 97700681 149700022 957347511 496285791 253328947 785630749 874235465 546520828 587795446 430351716 618292493 918908079 457059102 292962905 409672930 288077745 331351068 350742511 766625804 261876458 827311688 392993342 178434617 949975791 235195110 390372238 758391164 728449265 428889629 985424711 274052436 993643473 321762301 586700028 592643496 394919190 701315459 525804396 917114818 362492402 704143757 650720631 250875739 783950907 365176804 692014376 695286666 58713454 969333308 435393202 498275290 847856053 593312556 624320885 741930297 90111708 2242871 785042668 266531062 181302623 17863620 223514058 20445141 940071769 391863336 818655966 760939767 974080915 933329561 576980007 202018538 445458043 363539257 901675459 279679140 556025130 382557968 977921792 284591747 112911966 27146003 316498771 482367819 521055617 348115223 874455891 476348201 854217630 989691614 163447239 77703857 688255599 413967125 203338905 998884325 886073171 746979913 610866141 392267044 56891473 154480629 100025034 548152385 584608534 214744442 177099978 961995631 283888636 429780771 744433252 58761289 354536194 486052126 934584396 924746455 844221135 925277831 158155357 200850052 658412466 563476060 97103003 972847914 282573474 511175818 206902321 925507584 526919742 608978145 537199218 269253297 95434190 492191769 253369306 497342020 685371459 230692053 256188685 679687733 376243504 763839130 195446739 948645212 882459609 806390496 466652705 849501955 997902881 553515005 374121747 877712336 48203161 884008497 765814250 876528353 877294712 480095911 279154964 260301996 84912286 88922223 382913316 39011867 497498258 929081730 940917205 482994552 643092099 612195267 731598600 527319419 155260232 830705659 624583626 90928192 520056672 808557275 987818830 39177293 932198900 304467448 664206320 994914700 596885457 153058011 650805812 691834455 976917105 547605481 162204098 255963751 739722990 66549618 595676785 674609636 727726870 651586738 823831352 223231067 453286485 724796617 466980159 198886848 151554240 447506880 678741708 235572083 860199962 352679304 878648408 166891829 28867274 321438460 618082170 679368244 505696477 961283805 474002935 479065099 259541771 834973395 508271291 65586097 979522996 77546095 135842007 839781004 935084511 464323112 38318727 537022314 335719480 870810727 715507247 288514434 848742428 205856876 807542619 9540466 475063432 779404145 566358460 341543483 70187810 57168263 304609838 768854604 882154810 745109685 958329271 808258172 61375689 901279202 175765116 272999686 291647339 540708830 152524503 587504786 550198120 49218151 457811520 329381163 783167665 974001433 958234714 796358981 639769565 973719680 805282802 738206401 433562408 10801933 373234171 661161440 801658239 694490137 35431564 536277074 550208363 191496930 170139630 37292077 964900905 629733785 251206539 972109036 169934482 288495687 61947634 625302135 136108085 907429867 852719333 986269721 645446202 585720674 461045313 870384517 920040061 987206265 903655189 116129756 849806971 980879582 997507475 360093348 111738458 833334063 435500822 620007113 7999983 149186025 497663778 607175580 636202922 919955061 802681442 864304608 370337711 911680036 741153705 164443835 955483331 38819125 70382322 149796530 678615382 866059202 665552483 60094661 841899648 14674137 850295107 578348361 559322878 645217128 211143430 351194886 204682299 651060556 159362120 889728043 678206788 689681475 24452560 257771850 512555983 476647158 426310533 548681829 966466364 471894522 208333689 726093786 298602389 607246020 593725674 295118207 69198980 951849145 74772285 890488705 714343 736847391 423617784 173000067 909751606 64681257 209938644 632451974 109006751 508123889 879452839 175824125 416576490 159198836 528022648 223672247 328214806 770348960 467006833 810485493 492492733 193973830 998532836 278839386 803534632 266328861 253907791 881325302 534161478 497623238 972751186 994051645 570178735 842864332 609893051 22104842 194824608 609993888 143488892 329613990 692430083 839323 512751793 925228988 621561447 242662141 380859803 710242659 643218944 137649904 123866792 410885141 793835953 540362121 209743978 783625402 952827391 15772858 177951901 313421215 713458970 562136683 341251363 755238262 814551003 7244641 779432711 403294819 977758397 29495373 494526335 552045285 577393898 196144845 409151203 781958891 72467250 371489372 901889465 958717132 210403596 269495656 375341481 14443074 295711126 993834049 241364107 214679926 124327065 838665759 711389525 790709236 820787072 280993828 650793773 985083313 696404070 358613082 963081310 830657033 923243788 343951024 836958045 37343424 287668692 114634754 428362177 571686152 880305874 689061137 646457169 784621684 552405691 972753796 159055607 810183680 995405806 188254447 860488644 854051091 347301234 734663113 225186806 967159929 237089272 883950197 175358451 461131623 147501270 226821179 588212032 37934717 109677837 490423883 988019603 335915709 115674179 433513665 670019528 331501716 355183044 641387932 327532771 989668570 109641612 430448585 351205645 178739146 691665209 326423061 928317592 699735565 111900433 1445434 109803269 802810794 208619269 24638429 693936626 373977372 669634987 199480193 826632749 277515839 444175169 41111964 624721063 314892117 395614385 271241607 506285435 477370383 227398792 777772671 817367791 691072127 455449600 158258866 233814637 643031077 435235830 828466225 128686985 150967012 879133680 853938163 621282045 483568652 623331106 99481816 525945773 768665425 602489694 240871598 396859298 444339665 133580839 614899490 226892563 603911437 962857891 312603856 74845528 171656182 623288736 113407033 24397814 215811043 926435478 840511682 886321048 325420940 580506788 336603587 613134610 829422620 776738453 717819248 914472543 860418588 38553811 128190957 461739936 30394501 114345078 196822082 196444706 55198126 198897729 537180000 212149595 898076771 115536278 447512867 742666208 589993678 739804553 532906313 469771385 477258629 677946831 503938682 471726350 587742340 952517575 459943244 299165111 260611635 549347704 520014132 670087595 910959194 924686484 931971992 108674127 184325940 532316529 506561213 792715822 212974173 86117386 991972565 189587963 765605337 906992908 862052090 545651091 881760532 587146437 747978284 903042804 489505764 500313130 581740633 905694544 370959755 22116317 604517194 346609655 246739879 598147872 457658816 508752738 250026824 506091242 883243097 542329401 223393252 90811597 465349788 162669125 975807578 732305417 729946624 977257335 298471917 505396359 324452056 834392815 244141896 473198546 454811499 525875180 875658629 629947945 371767004 768785627 413084957 211898210 107940928 486017105 859634937 485716493 752887186 827171333 247442788 284073552 34753713 480507869 566891795 632672013 624800868 537420516 18834469 274961081 181374305 531031118 240633116 483176579 434915135 495683701 623167978 310220596 110636925 850867165 831390947 501437000 516671111 989730864 217934272 410901212 533741231 82822978 91121323 388758200 41854762 601150993 771846445 925976909 189875487 765751740 887844673 977690796 819286675 420499086 706879551 977397405 424477561 135923967 309058543 202864512 495500969 424423590 279184252 824785256 548496103 484177225 952928894 280242442 243943896 249959376 336309744 549904584 871405841 937296210 406641465 24170920 706522889 183492102 937540903 909905497 849727011 629716564 394735851 234777137 134218663 701657028 615490342 299964465 259216583 3574794 393370332 302347777 996172698 885835779 286044285 295623406 798104615 724028078 360271577 484010736 746653008 456878138 740921905 298119079 851799531 98310906 545373992 527797594 405275054 326047337 177051085 753356280 875524670 725573672 905022613 927339544 792636451 465168133 591578972 915807736 463960011 563867632 584300650 510976644 386153620 460705032 767854954 125425222 928691133 23643793 66908785 47084664 61612910 988730352 580901119 636360184 979395002 25156799 375466229 153308750 784640411 808016820 60272034 797759656 134095857 612303798 977125564 598911713 273230979 535678670 876441442 659461748 948839175 212157747 34681110 967000968 110744082 574524987 847398598 806756337 559211560 600917354 671000520 230134307 701408434 387795824 255108826 154836028 785311488 98812188 973437726 392313605 970746189 857797226 115742502 287368428 752289720 705759103 156897764 337437965 746816842 34334116 555376565 614023712 495673593 510514252 487456608 220457872 10889368 773235734 903966482 924125294 361650669 258073537 55594335 184225391 92373406 763142970 955766340 7147251 290699327 772591253 398072361 218875391 910139717 640571660 679032025 424045893 520243734 663540739 38199432 9110298 695686394 184952322 701793494 610517889 557612065 725838274 697370569 552733981 561841317 682637596 739926731 971043902 131044742 464666643 671864755 872500703 126161071 367224783 704376766 545837723 620754929 468494249 680330897 922186682 840152581 682284054 445541688 954748972 286499722 468615616 147503404 504255883 627592719 311229037 174518601 833588497 830352127 940727315 278665937 230737577 241712823 544451020 380290675 40558049 850366326 846743773 715673414 511618800 387727463 636767150 352733639 288444853 203532442 614262997 258592985 302883000 752352267 645552140 758195400 108824616 32545431 981125432 467874895 402327774 458882314 432028514 45438854 383241559 673616404 972420031 285551350 773121209 869555537 215781542 509528202 783013334 387870780 917904034 533438104 256326692 78690630 909182809 450136797 481635011 59484347 118502556 708247421 272509304 620659670 312563052 69862406 363236790 656020409 62054634 500433520 786638739 54634093 8191841 334431253 647328972 420275169 530975042 422653114 976382923 745843438 904362541 498317710 997169821 34423898 520260066 238884391 519156218 112759242 853324108 464321409 198921283 89764051 470114177 225135872 301118077 936216040 74437817 101155698 169867608 426084211 878005590 279738895 786722347 103197877 318794475 245973872 994957814 717369570 800452898 852664988 741784670 748303892 28202204 713831939 157701302 319227471 234035485 757050999 384749301 419918454 87368203 208482357 943075508 280175456 823552508 366306274 46861891 864085187 150348397 424596879 552925578 557514304 621713662 566032812 797106983 788000866 468276863 307228186 109810514 437219227 327734749 68150046 678450422 484451650 911662392 784483941 224455844 337151641 80623313 391952387 360707984 763460552 938294805 151694199 834224283 425767140 898188436 384600738 183530827 799208675 139259660 190373593 884448464 344612519 317266016 747920329 759354627 589783545 101352093 132207252 321690465 296843403 392821746 379503294 754315280 785434869 675231676 870161718 403163874 267099577 610721665 81466702 600887374 570840642 790411238 908313030 62517874 142862302 710740422 367423938 940654103 653888200 279097622 939462606 562164649 475867939 12172286 139165924 787887683 868915189 550841796 520694108 11257504 29390896 785836513 295347709 527434796 161710 919553772 8314613 952573429 424841777 47583659 473592536 36185006 44168288 174442503 674925988 797828284 301079246 818425363 642746304 38604066 591484660 976515852 972661495 353842325 538764852 152317012 176960893 464078180 817372887 342588537 252536051 331437972 306060045 999578667 142164315 904500683 29104622 916812103 953034275 854779993 894972542 654438351 372369185 549632050 149844135 804519663 860458387 348957176 559018551 449404921 427353884 402541811 565185000 197731178 381857483 617771025 262143071 403128806 869349909 21883112 44069665 852773174 336306135 461529787 512526239 436792655 73786709 436302189 626226740 805126986 122238782 454542991 193879842 179352173 913549481 975515224 777253267 541627680 97107470 426159785 723980949 365997051 732407895 135797766 781453859 448406708 808923599 984873633 503373854 463836979 577407787 611807568 652475727 243980926 12705417 308411538 724201576 481868239 490073711 284462481 785612035 919758202 204432073 477303575 507586719 201561607 100010989 194014881 721489316 675853086 305503129 399768904 368994921 845379222 512138222 300981978 679879203 193726313 78085249 830472386 290650101 149850296 817617216 756787481 187810276 262336722 135779211 712445852 333806569 276067366 49416487 445484726 132882645 146283091 47761218 149981811 108574574 486843675 639666033 91163018 249987934 72713575 956926129 841116764 282025524 752795212 120173671 458311154 315283561 107637768 63270241 295050998 848438881 458298107 596590803 884625605 155741537 411567279 744278362 145675867 714205855 423461083 614968318 29025118 299778606 272887383 58555178 908345120 554460694 253395496 417608116 384121240 995759935 314700410 200846296 544050277 712100468 943486879 146698813 83967948 487312758 205491473 221059310 486660543 909131746 697723510 994415717 146625236 597789764 102075031 251843192 100610378 244882187 883648104 826072949 622644235 157681553 792772614 206099200 77613985 171098901 26761137 216530229 730881864 313142212 65753815 954184078 773279197 549158829 983075083 305937907 858030825 314466762 510261508 18731948 403152793 92210428 45030316 426185844 408293316 920676621 685182218 431442790 767332076 38036910 776220496 817310728 839440183 110854006 627348446 962906437 1058932 263307499 737892405 408791669 294336282 663324016 626770686 399750227 66858312 290891868 31859472 12989445 334117830 401965028 16478307 316586521 52358405 613912109 535358237 727564674 977595929 213180477 511826567 473891491 101708225 335078150 977008660 179791418 380301159 161257061 659279971 142560888 188798488 687460885 54418483 134216178 772410255 538944197 877076848 677492389 154923303 492839168 544111152 540670199 76686056 395576391 737276332 407008947 944941187 534727667 408147270 887873041 386553423 872753748 715520910 881909933 53269577 949185433 680300338 966748811 54868763 961317593 102854160 735435035 927876880 373754134 292812331 105750575 92912423 767389756 629864621 549866246 280692215 133244445 523273963 437568839 780792013 930451309 347752287 984602108 635804821 481117392 947269805 432125596 978790630 363456977 942323873 508440581 502640898 383399903 365987114 119125883 283982030 557284178 279273833 338592683 811001309 767127152 396834463 425399210 764244065 209096798 124435765 824609270 61961786 314436142 310748097 493857652 849582578 915591642 800859132 776427125 794831288 982500165 508295117 534945190 232864865 615392565 314906685 701993260 730779247 36080220 580816509 408791945 517768455 675203157 417290477 542277289 754559736 439020190 49769482 898476771 208383933 638733221 342475142 989985780 749731441 718061494 770563377 700191747 884069594 940950031 881273348 423529112 469889646 522581454 797038376 635808175 576999743 967645951 828660963 664647840 174409996 274690959 635291051 192852788 239418944 410934874 768035608 6988951 539408617 490021412 15620851 83638874 541864379 643569808 899195938 538144641 639583001 635192117 508429243 312936814 489579014 752931978 593218041 209707247 588728118 897430766 167072573 328787767 264071167 640021934 360067349 826357988 488212319 883505144 816961330 521673982 994301692 186517480 983537777 895161843 599932458 661178750 367951829 262459539 349834972 465499045 490393481 699780380 762345650 253739306 17244129 912484408 776688628 530715083 642914901 921952240 587746450 74890023 90197133 99541692 847691040 28811716 41715024 794126457 996869090 868032539 296433044 378571624 823116221 203961726 745286004 202538300 512379198 6007602 731664178 432222214 727360928 247981407 831792186 976598854 873359807 686434327 165505566 9325280 368634660 253297234 514870685 641593891 77806848 675280626 380759959 536517313 574825255 364423619 807265302 766360024 959097113 240484977 558805840 458223345 930030847 826743193 619976865 191971572 463345316 561611194 943880073 75427131 321959559 50133568 598392503 256804990 854819006 167865464 92422393 593770472 719367704 193961632 675931214 644789762 442880256 477986006 518157531 594609091 781424270 746827815 322379753 880059784 100150147 85414270 391908072 939054102 256542018 95974586 588661880 447289244 201516255 631711130 265594714 311363245 235080719 792063174 262627196 718469959 53609008 675405522 67226351 328946637 252626764 198721334 612403948 549511185 281038345 623760723 771740891 979320389 877988312 317806449 494419779 696591366 803546524 785369027 97815259 669587293 221027081 423434594 684348795 82924977 434736234 147118417 569228073 557161693 846497466 68886900 723946253 854640667 344112278 943367074 873915516 292436753 941204804 320602257 663210482 191043788 294311864 842027746 731536404 860537541 253792132 772741154 825490601 441308627 817416171 208274878 588651431 481676095 349843154 662410768 577501222 611000245 249053641 728843612 493037934 497373260 334072584 747489992 656454633 434833790 256939116 105018217 199010343 779410997 953729662 146289459 266117093 887352504 934011247 540483082 73062665 22595523 250399762 793185465 173425305 965666670 213019370 128910830 441101260 237036609 498360607 467216198 686970111 379026985 448551290 839459903 479815857 577203064 77807993 359315778 148773004 421691377 731082806 617246884 19309675 212086196 34746748 23357339 761648450 53372499 218695353 196311881 610821175 742858174 9537028 879226806 691750804 846140248 471033118 888732375 670749647 248045793 333206124 20244353 574461056 577694601 926190079 373770360 637839212 370103013 360718474 846868324 954034047 123507186 741319794 231301591 138502601 296569876 282280125 364940362 600154249 127724058 867761686 341239069 170679838 630247227 374303704 691680666 884132890 501217808 862185730 547987701 645001259 557483424 301124413 841602371 434517805 580043865 738179027 922875529 20926499 792608526 93455552 557599661 605198649 49392128 712602016 588730753 42229442 449951699 87723710 857649598 183999547 935719059 573790212 417037832 623162691 662603444 947041294 136624358 951394986 425887254 52062490 164714187 461179744 278876924 722244111 38048525 639619971 946241303 339251581 533546735 562579282 690964088 462728856 670725275 797606973 560469662 127256130 982128160 309051348 235545455 492173826 505033851 146933973 167733816 316766471 688277643 647379488 336752300 891129128 234261017 867051461 559914475 501941220 585878228 957088753 513492345 618234213 350621531 891516419 183981637 36974967 762298411 11362174 15908769 938578578 478547118 285261580 788305995 917400276 179143222 813199235 134655851 547548936 837621500 23325405 711202187 871998875 26417443 402451771 513945506 899361189 574354865 736376809 354510351 975069155 18945430 478088285 113682325 47816637 364414129 53758766 74723935 242976836 395597503 175694116 320698119 621185326 635525226 891589670 214690182 563549146 604454981 524520524 227079748 2534482 715022278 759850700 988283151 965560898 226593872 884389644 52294681 624840706 36239407 518225816 215924481 934485904 280400271 849379107 739695053 162993560 465824141 725150596 532622824 732322404 851623720 342483652 624353066 388847854 940931660 196618253 39293647 346325461 826019527 483157167 964998269 283763295 685712212 184659241 609315646 912988538 719411863 764449306 631124620 669557954 674519059 465443155 547124032 531668339 417292605 394363587 790840996 343602548 254172783 231061892 481535328 531990103 244266984 20589278 579182221 394536017 294461140 347666234 890230438 106414911 213386817 519039277 184864914 91382188 500812330 37582956 140752542 952466374 586121329 126836450 62832510 524766308 68175838 268799382 378169168 503909897 220330275 203403708 732549274 966108117 536345048 47135152 102929223 989216413 611931007 656815604 416258478 773677012 729282179 775758389 940432269 766525084 495363379 26492996 628238600 350993597 121047751 570080030 926434220 416220069 922719843 798469605 138329455 640900458 134855697 15032548 18027438 82512335 588115903 223597203 311070254 705975607 188524616 811688071 452567581 294207922 771535469 861741700 441666319 981927418 610781654 856574328 230118914 87440492 29351960 293869687 605983837 488647697 413408170 674860984 987189993 632548758 115451629 884838819 807232222 618349650 482100521 761937854 397513435 141449544 205932944 660090306 57388513 737616410 794108478 847948422 771681889 743418396 268921648 306824463 960890156 910012229 188135250 408716678 153187460 534656814 47477623 676168770 988183311 642219047 966187346 428592831 991854802 486194712 552598155 130782363 796121165 163784093 832657318 544610978 838594900 452359922 538193689 241823180 131023923 56962818 211980858 616648241 400130195 384890456 502214730 846560277 727747210 284761649 361011061 52161249 827884438 672572261 886763466 697483307 417334175 788430207 635900482 697867951 486482924 871146415 782485441 887499085 246111800 404445130 391660557 372653584 827598749 726530899 725371096 155537712 176770466 380689004 655506620 968898565 757070643 413200105 591776316 469815314 265903526 532665662 423059647 376912901 83638711 420098957 325634964 733104300 771590796 222701210 365336312 403510281 236266165 102152407 403018509 349808184 660725027 924924763 495225049 17383563 335287861 9709282 981374286 360611952 97082032 649893081 741398598 329423492 78150338 480048202 994085251 708535692 929716992 21242607 739126701 612992370 373466470 327362599 502559061 150242889 504490586 904318967 224892918 916548941 23593899 626959376 811748591 595464161 888134028 377929421 298202762 734542477 740697498 661708326 864394490 662885897 878685149 806688454 87230294 826805295 163857344 133506814 230984865 601128193 905178905 611944386 877720258 428190634 679463716 658357171 144094604 232381312 248902022 700952599 283969464 652136701 960732496 555317726 484384744 124915393 202827252 703053985 788539300 625490075 558264912 403530140 608003164 280780415 445417897 200244408 322026605 888909186 674743468 47270277 944642581 790521072 530191983 60305977 557583486 507677487 883478383 859564211 113517243 958131411 568941203 20371320 434156227 486611862 547320357 604428479 833314937 735812956 480662234 639904087 819706019 338823476 465332434 935109061 72310775 566297164 284772498 23840043 524108298 584011010 302779398 799438940 766615136 226335192 447029637 502573264 621380961 381881981 386054347 543191458 907342686 426029246 211094010 384572063 796333971 740393882 363873956 478205745 480092446 894950452 43419838 182204273 862959624 471622870 308562341 344297759 302248518 334916087 570094363 239424162 639622830 83667245 36451409 182223368 821150208 137302589 480647897 152326154 482715115 446292501 916407731 423097095 225039866 123912133 707276866 64509959 786110635 625171337 689091414 468935605 239599195 232833477 97192994 223475052 439563863 641084932 787651908 763774509 781225932 753526777 218278339 685056922 599814360 495248512 910000649 129583878 856348536 6697627 642288875 158895208 198341274 109911671 498171563 10592606 855418636 844231780 397000681 881409583 192195719 25840099 181308085 530139853 496198831 646259344 433223045 852360139 363567624 994222396 497012275 938810221 729090313 580835032 691393287 508951188 83342600 585131903 948832687 528265686 726377289 339898229 568488508 853868137 585571825 434229796 33075759 229792551 487702292 241754400 199137645 983088028 759468971 900376871 148999491 627837687 85120662 232190743 213976421 635552524 143900578 701613310 776414960 246039390 385023101 828110608 332776299 467946515 631427519 599184041 261657538 686284027 823356396 739233096 553031501 778212490 564738668 81609627 5482181 751553763 365593747 410223735 253258577 913738954 827163285 390502356 491671935 570275506 619523734 379172311 71995971 575358896 257277346 317357515 742394874 770708610 935485095 525376291 821856620 801741971 148958588 168835194 693325510 892674799 438716905 208137877 247168667 700711246 287760529 205544287 224845543 902286096 998931974 589804263 54150675 582175292 504880582 868728940 387343336 763228800 332716847 474020690 9569440 20836919 639784072 490971683 71732181 525517659 466613255 644252561 838974863 49889430 810531521 50221945 306831670 293919799 864587704 140762079 910604967 342586679 238358747 866346986 371467545 275402289 668015091 423169778 200721458 140580976 179107261 393699185 56577281 438634211 684507866 30630409 554820348 476503839 930543829 717210245 619777278 636321893 494150940 875309785 867894861 416544923 812841995 719611938 586035094 917102419 638549474 222972320 482618352 339583679 681199050 94365632 469597657 389731524 156345044 213717270 311483440 571927015 497310458 614753631 899193160 38102614 933176350 26649721 852408790 883487977 513186568 170590065 944497652 213285408 195129962 179124092 744018474 309063971 140017116 893513460 630227558 156468415 670009568 382795358 562800379 953655916 824484832 584957794 361771942 842702154 114245421 580557783 924088463 511483678 766886910 806928055 937725759 812452701 12070264 35299107 200448942 887391766 389500323 203039592 157124410 745691406 915825263 654007801 614791080 280637100 663697077 273843315 405054499 753167102 647987511 841164439 351394883 374586555 865946015 150682446 492563203 408059459 130256253 668528562 748575176 440121499 969385290 625778168 795354466 945789044 112741737 28464777 599476999 891372327 788860195 628540137 383821647 961932208 65674153 186481361 159191362 179908025 721584914 37910298 865668431 574385809 87924067 732750024 702341193 724248108 926474112 496728071 832149102 348716589 216494144 131908902 698570850 969228504 958497626 383736231 966406198 756133409 798652529 580819751 240279645 381244057 454957577 651041396 885693104 936883844 185039513 150297730 357104508 593165513 557065591 212681580 39831145 443347956 298387940 6963060 220619150 115976510 656806922 302202887 851981929 124607881 519070717 734296758 165627101 123502169 803893939 84220990 598465081 346172636 411453199 352342912 853679152 229843694 534514391 760125580 993781731 639472139 527592385 488067985 788377813 844218458 655509088 647134186 9474546 496331691 6656316 918005533 406557840 191526007 381158845 827744211 496558449 325600473 934232881 892133088 918754227 563489181 479732177 436784705 589918694 116313902 873151939 41155606 946190082 512651431 303316490 827628972 636129123 379584708 559228829 196039798 594113483 467601135 766024275 654994192 937450601 425745973 567668204 705953343 423568338 537168975 373405971 625907177 828590087 990370458 678075992 406245925 229013864 981969185 179254070 41853484 412118983 366343569 311426829 407773541 802116437 142655553 684026405 723133528 233611185 699425070 570578611 568754617 935392478 896024324 867747786 206121315 253062222 963678736 729422963 348016474 382270420 61869898 869936273 238265032 184541869 107273550 823118329 574221061 927834236 153537897 401310049 717410948 129838675 755142789 514106733 907368943 998493605 74063420 403370406 491928846 367702860 116898252 616113532 765166548 121498771 585892638 949351240 60653921 733040163 246715326 489995087 218533617 789425426 304931302 827315380 114905844 834865632 194430838 878290062 430540285 64297839 281901810 917267154 831707079 119765518 265097357 823843685 984269875 915779698 27544346 761235725 609527375 194833078 687352605 344801916 479315277 412431205 463396281 797586255 331295110 996835940 90378688 44927232 178882434 878490128 401977001 444618240 162676971 491477539 600529296 724410011 461824401 412686017 181128769 777080843 430759026 352168312 211696678 760412530 853078193 33764414 885860189 614900954 759836824 886078576 759015840 361332788 679401629 836478421 360677720 337487450 614445145 756304791 33373331 742773771 581262223 191104332 464013322 301034224 147049770 579901427 565500957 814235293 295313472 408164593 229714897 494348682 472531209 49937 726462933 568582681 994126315 874301322 867450240 200585617 889605231 319916793 129328478 617466146 888596041 169587299 851787896 187708653 974603349 281759799 430031033 113834219 65143188 629246791 103220880 447045128 825511476 734695891 690029466 179353366 853414024 965865086 954100768 723657167 549508619 222144342 87124498 818442195 656197214 233951954 242636294 526507947 316205646 612297934 375716413 239674824 401344207 387174289 828670874 643112837 506654203 449810117 197193906 684991521 702641686 323271296 790927543 964146119 722105995 751023169 376168588 310544519 4789996 694968299 422929847 526088539 799289846 708804812 460867428 532040997 358006413 727815837 735278448 334252461 623300280 599402612 768341334 752676003 797384368 930929628 128012097 619972771 197639628 733959616 236272380 148263470 763956112 885907319 703974658 615832235 931213483 801678269 599347566 151736173 655645163 370097590 528953101 725993133 864269132 476164080 425541193 828016780 162851060 113440098 582768188 443626005 148564527 208932969 471445412 688927285 495815787 130502599 454910952 97715401 100067913 788152748 767937562 745374608 944082566 300497068 274609646 234362678 861965077 768597190 345977029 462733387 472229378 954370143 395337894 266874438 440365708 733484355 1233216 344711818 483478041 342356392 105502954 720937827 346656045 401137450 852456354 518697212 461035648 12925904 712368149 425098869 513373167 997181703 977462922 398031051 457863030 563973282 383652863 65348584 320420425 559302112 456869646 613103007 214367669 349188201 875718403 948100773 169541177 66294597 90134217 754018720 370908788 656806890 225146362 896298519 690016823 509975867 466862549 220397437 805009265 840905334 503729728 450420263 939078463 654066766 415694028 710778458 604463842 435278293 452123054 83102016 155453640 647517577 344131272 863563753 294047619 709864014 460060833 469253707 476851918 503810677 912152933 39004748 852002445 279417518 967825389 442409139 481071563 726764315 902252729 794562608 642950076 223855677 842113776 559219808 310457016 667469828 937851232 840954562 326716230 379953350 785034629 324060607 421383953 111217727 25613942 237052757 531064298 654565522 607782401 768824759 594633935 391423313 143169938 802549518 120639201 889863278 560274755 29109173 22389867 718850886 421398225 977900445 269574113 327465376 613690530 355259297 96551134 189191339 733597896 583774846 662002982 366759414 785915 894850533 491166631 912920195 572446870 531695454 801098604 208152503 351117733 209269099 378467000 239085151 747780051 958047335 691514348 404032431 451553403 303636893 869076116 263003715 403139736 110984767 48805984 571654437 275058646 394840166 664388142 522541244 783475075 980188179 253397249 261495780 257464725 442165807 572736772 96514262 29897641 890764173 752198282 133751865 367915530 502624226 499178255 383803417 830997671 468311253 681699893 403377387 642397717 656713965 29057737 305165455 758285972 932758681 753952187 672320324 39014671 336691 873517865 239467200 61926415 741499900 438685527 676960531 911194831 804105507 99710892 19353017 738373679 829525681 782468547 685561499 697709490 907614115 884004942 716284674 90172556 504467674 87068215 431710889 505980562 700306977 636703622 485387431 818842436 776952614 197084783 480001157 352008904 605536901 393926735 659546417 513139438 320632510 823883942 664130044 370652718 619871035 748174369 827479465 174717607 296658251 975586196 89281369 411362078 295085865 634099961 995739546 696821253 905575159 812569202 864748386 165466227 584482748 49445710 14702350 65446692 235807340 677668606 829701988 505930628 146172639 874559518 875848335 112477857 633222356 992321904 112002855 739463727 536661241 327826654 778096936 919495568 511457756 679587968 137023735 237644491 154968822 357240717 67045985 156482958 196813739 396995946 757674907 806175284 615875134 215885987 811081284 285957305 967514857 733687272 589553248 579856322 777049279 180780312 734370140 692579746 739903171 793735221 110054161 977117522 434643167 408904297 896789684 601959276 987030755 71483142 595441650 636033338 792491400 165787789 712148949 243003308 62041459 355685789 44299731 424041049 604666408 110180865 176236233 411342974 301814554 919882668 292491260 20821508 2253477 500516797 659829272 187671675 758435081 439314290 617439799 922190870 442814826 261527866 476849872 105330363 172310240 568223144 283007181 899633389 733155171 768034423 348704376 239216861 169176786 114393993 525328520 5219678 941321209 668994537 652291869 676396791 183001476 906568906 974034102 925106375 62670611 164743307 697476420 977298851 894563362 27905965 85773084 685584641 151925535 895703001 347521019 592215549 367682134 687787748 977696263 428931683 129834243 348673483 543716042 186667423 332105801 680719791 704767038 417026505 655244845 879082715 309610942 674658464 59945636 440753605 862088974 758825613 856197255 281182213 284661084 538579358 235768468 319599969 757427264 688809611 840333942 878037697 795440820 200409520 175081408 62139707 20936735 786518552 989118187 896368394 759493962 630984818 988376661 480338577 712803185 786728981 822016843 711233368 559164207 650796031 346732283 105414425 858002308 977864150 904030081 745819305 434237156 64432364 259354845 215503630 290437666 273243960 449819638 802897010 760582011 107474009 153296291 959660845 649183637 28081298 978200982 198699187 248117882 389237210 40532344 656639147 677918370 731133122 378915276 338630625 894723052 971618702 351845126 176953670 264643739 221797152 162424448 137814775 969533530 523772429 979026811 808838966 123968835 154509703 508942364 590601073 616989905 828525681 339479674 815738679 18208488 529054288 357762954 405954887 168297177 566442581 862249520 277857409 722072147 568445013 645742135 922826995 864010361 421471184 151884619 797552847 606993614 622289135 557829638 359229809 312757313 378266497 303234286 663759963 524445218 131146234 79614825 103184952 791726388 586326652 303355593 666598877 61344412 645224911 113684805 576850245 997466338 291907681 242450690 675877522 53528322 184218953 359380743 459431184 969674069 984783172 688569924 562379827 141193889 616187326 769408661 508849301 321949458 995354052 649053627 230087928 672620353 872849679 350849628 229588811 182856488 943822586 929052940 718168478 435096877 578547601 787150150 605069103 841451806 46388862 628551784 153809244 208186158 325446686 182570684 123888822 841395454 746461292 731948149 800397297 114439824 943271442 613543080 235359970 90551124 72430429 201117276 689200529 647330076 174779207 93926262 917508390 370452265 93780074 250278857 482547449 669075228 938333716 395477004 461595009 755301894 858472752 571905252 925886818 307212635 716902742 390777304 480808552 807250423 769067462 639633499 592723593 314082080 581976679 617244866 469580506 432420740 121282246 197656916 349453475 3080248 339630878 157609271 707814478 493733816 206901582 390933370 285381742 680449773 978854362 846129691 442716350 442818078 651050738 742089464 762668835 55239685 583304560 590961884 166618278 565374142 231206866 367330936 784081019 398933710 726055230 732273508 585720060 93591075 42013829 508232994 922335921 484439827 469333276 782609949 819743040 979705174 176717347 790147235 21508223 392075545 747452259 574014447 911913318 86866404 348208714 889983779 933949724 318570926 137446638 926083143 788241900 145186772 333945104 769808205 569115721 26256411 879080217 707590413 497246667 524722097 577356565 898689608 247504441 684969003 766668218 117892778 162544765 644466309 895397738 52518338 563798953 769719332 103111471 325505546 209212922 650006488 201500595 953323491 610825683 725363924 601029711 386814615 318319807 958997433 262339587 932881238 474607217 853455239 432204916 695022138 395142595 54581421 207169783 990597956 92091 638095361 779651964 813535070 850941570 820751295 337295271 176162136 137979503 539599502 124891581 698099435 911595254 555059834 138197422 800741819 69815747 900048891 133873681 834051663 502479770 92842218 227424038 949841686 308539251 847946639 278073300 150159215 34805094 92763542 641914026 265001622 693253049 257896212 612777695 907934904 647929812 806040969 777517395 690383844 342496077 93945558 571576205 492399890 241904863 213809741 675370170 186694440 46725997 807439262 714041527 611353066 934870273 540082666 310248189 527940366 847961039 884812982 920386998 30079275 104287538 1558766 327287473 332509375 901789290 232473577 408505447 169386297 100297455 103692896 684436210 812313575 802619079 561363838 609794335 853757184 880914992 479498700 818909531 202927789 458402640 934698050 737439934 907872751 904735600 900183867 856688133 302297020 450295302 17506684 75765402 852139498 411784106 669573943 618012043 156960830 936352033 419547386 979733135 166168927 669890646 790600904 36790020 167600606 278913884 548478213 800338677 32193334 985487214 565392762 228005903 637443783 907226608 494743138 867817128 749853401 783485805 992252249 954484417 753033121 702035608 87555171 362084096 402068530 343361869 344437484 952857527 294505876 386419084 913674443 423841243 305624493 890219142 225630013 107739144 456529999 103198602 493831657 880513933 963345457 990359828 415938520 513958738 354552825 653263817 942076546 965975796 383759146 749529458 215163590 624082350 180531514 437107204 255587302 825019755 154622595 969992345 904808593 237535668 539386176 30748788 231846362 452665031 104316576 287727617 880681024 582784641 103301556 718168532 38625450 559422822 312814195 466639270 595201380 715305899 631862974 209138012 603092769 260345378 128838499 716189186 961030657 863629135 278781196 29725899 87381127 622488661 849122647 125344273 114310819 879906310 101524420 80014933 268004009 26740184 839017148 817686342 277196372 851530986 352412816 940397241 599653836 39104772 722356860 953714594 430838941 215806356 493018525 69934381 451343039 886330549 909112832 197239710 672832394 888903202 565891474 119297901 797454536 181177411 572347699 703847473 693471140 492558633 271619485 499114928 650704820 315260810 444190333 497139415 778060788 506431431 409343844 49844406 50692555 599826658 626164938 207613323 70358023 969172371 374301459 70963636 348866521 336168744 135178117 872959682 781538787 360305831 723340626 103348841 715052326 63863221 742012053 768611709 441986066 410385311 850907468 452918536 908519807 341488223 765851236 589510962 212570532 946087316 995207341 337280078 984784169 442683269 937248737 642164187 664251932 428215328 984039836 147791737 423439602 728031230 429000302 57654770 42137993 20805471 577260743 335753790 87545380 983464743 841083388 607243893 483617395 620347369 394141010 32539864 824688262 861368535 686233330 55558870 450188256 441952470 558848748 919294466 987686502 594575210 663644731 677656343 423495523 108228034 774277055 289963766 537090699 738248632 322835264 4499886 989280510 594204360 570241138 266840430 816665152 240983324 491638253 210668437 575239998 779491970 540821552 721287077 954453326 629889392 329445543 782282823 995386159 892262921 751043237 715988561 666949121 808048913 615001182 124762556 613424726 297984759 857419766 884943022 44176162 166885589 806280313 233244275 635169985 222125414 209030866 80923258 410758651 68278804 246419681 921891681 353862904 285422576 167800419 418295274 481047636 839506095 926704643 902210561 429733385 909829551 795376720 389500856 808757371 861276923 246856390 238850127 990283641 882558527 226622660 761325858 690161463 292082131 83320983 325572290 74950483 374329269 318196331 789092319 861728211 819864207 946228573 330912855 495933987 784835248 998909036 146722859 739054105 65036556 349830020 659554949 548472051 254506056 674119797 18311869 514575443 633867174 899919351 785104201 4212040 701495319 836355242 880468688 879178570 166268211 89256474 162430237 34854197 573136951 277828538 974314017 457468490 502463244 389738976 714380534 72814906 582638914 590628556 618229988 635338012 774390030 417554861 503203924 182543978 850453586 719029135 407559642 38303241 387529621 623259754 615608622 318020168 85082883 138223142 433042489 824978909 479099252 600572295 238793728 645407459 564069227 717392190 76139451 379520992 802619055 181407977 513525698 20735170 991710759 279482884 179170971 948236765 372878130 869212410 161985518 922975984 732340816 946077215 581349779 583382047 193824069 632621736 201774206 517883127 462922113 145584568 767768539 754338671 482769179 518656857 381587950 402656480 171936722 972466043 165044016 84357396 406518798 380202744 738554166 467028279 251497950 727516816 925843402 239897820 522023931 41948657 544850899 235480324 727858369 496510628 804747877 340908819 92197177 555729707 720901051 602876883 897183248 906994144 149322808 882042492 88154787 341537808 855347049 629836717 331661291 568596716 736617215 889870951 994206099 78150287 371264471 537848602 206498024 651543284 550377204 816818332 955802083 942937356 470226049 343620904 656090659 52920226 36925648 275578725 470415855 758047348 581694303 347984735 661938484 900431648 426749391 192172939 87489677 427397681 649868012 948080070 281241655 860033558 815514537 460326488 717561626 79190570 296997411 97485548 347490244 176701872 556287128 510515609 360143727 136587982 545106555 143343579 960941305 438193046 951028056 372907412 859853286 139741442 688570350 90106903 309113195 149132788 632583971 92519703 740139866 684455988 402100987 519051184 315064117 640999284 341707183 989698920 832026917 148113999 17903254 134851886 897956084 697373504 825963833 188837461 47584029 506111415 241209918 968650650 428024257 463623425 228538490 957868580 687711136 712725338 825580008 591510654 475002163 513038561 229151407 189843874 938925448 597376161 950150676 785014760 887377255 316232586 263270797 6310422 832664624 719540599 495400374 600439389 636277493 509136937 62522706 985861967 535155567 774076998 357979725 590484201 958794491 446524515 788253878 529038226 212123550 643769334 974941646 998796567 575319308 566629989 857432309 28640171 341528987 975274485 741434551 562616046 684402507 960600791 431229383 730012901 543524543 75442215 792027136 146520315 481713736 520827623 960167270 354940678 623076064 21731578 667584293 787468359 266350887 318661690 392186510 978703454 664243807 174444891 877820957 114288730 596650875 441148157 97980023 928778674 958045712 228524205 954643300 461486403 478298974 111477722 455235291 472784974 81367375 115611870 625577460 662491526 57164657 26312187 325463540 945772542 301366774 327048278 126636361 854274099 131934916 704559878 563002495 198935817 632577633 233968642 723765591 273660623 276885754 838883628 594588594 367541305 875339111 617208141 174246557 598084453 296915496 317987603 305839435 657264344 993232483 953051163 119406613 684576384 193807080 745272292 747259775 429376179 185265967 798664922 713111349 39806765 388169303 127578445 750619403 478556689 165905959 458562677 672321021 970151153 626421261 97792883 955915048 312569276 800289312 456507475 6871777 865445847 801412642 861080323 80680338 127853824 420231800 317788767 718430430 551229547 94955828 387645734 328983683 276635047 946391818 91303170 966792047 307742645 416916059 612763014 799528115 559327225 938585133 464761131 729246858 490831169 982951217 536287311 351590234 674427584 146012349 76831294 486449839 187869974 86000592 196096040 967730742 738100040 606906386 30525481 466988242 484113859 752096467 12322879 56950657 50574682 145283590 340290899 685481584 942535244 532304721 267721785 915320306 204983102 650830582 558121129 243144580 749927486 18939624 856499778 222808775 532873154 457616826 759845265 103671942 36816292 281857456 951238404 862630836 314111534 684193709 334150136 106836593 72230152 284715586 820545965 193123579 153894475 342877350 357294152 537750717 123170163 448464314 588116449 502911823 57354340 675497731 26730347 607829863 406570093 576488371 841012172 788061677 747312963 883149724 175831242 488645864 328865282 19104323 920022552 218343055 290139184 457182155 522265680 565007417 203151037 580504581 637235185 374060908 475845371 756190569 253302886 857679572 647550374 672827415 820392703 890823493 723919335 119715539 249707511 729721527 207597640 677823502 3155820 263207756 760956353 943141086 561075306 840142421 561675439 641746439 518902755 254545217 10644436 150689002 356832685 269947564 757145952 983765146 15037324 94942043 546814440 914543311 466544168 398310199 414985577 553520868 503492628 592407637 432967241 649411300 162779334 562395119 844982354 136879228 884836770 277715304 735817663 72077828 415549680 319928652 469697577 597345663 252163298 778046543 547874196 755048844 167363729 360979019 269054835 443319939 731602175 785652547 393423253 567414612 364379667 584655460 411787066 942029988 272663967 827396865 174491656 741089208 133572190 169931666 259471629 939798398 469727470 515962045 823286203 524403087 10800350 341309006 342126320 894208296 37878681 499747383 725531125 382714419 939841916 574172050 352165746 264182845 596270278 35374503 347199104 444330366 960569507 518436059 284135322 62845400 112849440 754779077 934124455 289096654 798977850 134941727 177438450 140939665 86976978 882192335 679955508 739133433 466681008 293070810 127843721 950211972 993378950 378712443 472943474 953582427 994686701 702202631 878607841 645334091 508045157 561105157 67492137 547446218 528332888 542626076 932923145 293618941 431856152 913893157 241082276 204203430 311346656 311264793 223490696 277403958 305883341 651298585 920187820 735489478 59170539 267329649 484010604 788783890 620504618 286818455 339253903 451291012 667732325 998744869 5214014 358200618 899530074 9244123 549329424 502608058 167868854 772859817 707571204 525329045 361946633 246421406 95701633 41068995 242130635 980708859 229250639 258129136 851654238 364418332 878089892 724546935 87998987 755123347 160295457 258629204 159918340 631225359 790349769 510904113 694732643 9229933 614236168 537490266 858165030 176283823 57728441 565386443 178057531 614662910 979782929 955374368 195759214 370553780 147371195 140329121 692509308 446081609 324875968 679887674 386487557 409982045 104379291 19486601 863003282 573440190 246648612 80853448 931240853 551719009 439516067 510402784 84259175 56578910 386522308 29172576 838636361 199373819 335621277 457517695 993995109 623584160 537430187 402550044 325148107 668370405 378932946 482359489 835169141 39074177 988404322 123434136 837522754 9688407 75020558 104625278 832962815 171835764 519254516 217546735 191706204 983373838 107256987 723315987 343425010 589593722 203955181 759197111 713585731 627268162 696949057 435315796 160680116 872683532 248686419 32976652 739481244 213205166 997178698 39357603 414793778 802783266 216840114 20273544 987776406 658846858 648927616 944568020 72398803 856822071 488235797 967995207 658292187 791518100 210729777 818152007 39246210 629526082 423586819 855177952 865959056 530436613 725991970 667846350 618236332 963294402 6683019 167369583 423634788 767537298 147377310 521539785 139213110 649338031 794532144 389887629 294612097 561582202 428911987 295485710 729209742 40357504 771956994 799782994 198556814 315877238 392412647 409044220 54491802 969612597 78232457 61539164 301205687 412343745 109254082 610849897 696687305 481115202 782619599 483310787 595081380 706455057 851972947 578592689 380850946 261455270 246114652 85555232 758186627 843106213 636363106 873562028 800681134 545576406 775601727 161467793 640204537 106636851 151785272 79727028 828470714 890116560 361487613 172735914 918258483 350573559 6068384 628049831 781118607 968695055 429715107 372401547 524000475 299970475 256920039 184893915 888448532 901491080 894889657 971770056 522661402 503441544 791883728 876266282 94853046 732649401 126966602 317582721 492048795 185937480 881936811 630795505 874091359 38175897 378205409 179927117 932382342 485992744 89589567 795342087 857223032 429727141 919199876 205798981 288885894 805189086 508891350 460136904 817237228 814326996 513269187 910626051 64335816 890015654 234131773 709721613 782358820 526114978 52539554 539476643 774666483 675483707 863110074 552910639 379624971 804194827 899761073 940417983 806616878 695683028 25852955 869790987 274991625 303659653 449778167 559701361 276081707 795939117 722327719 116929014 710909450 802325514 974104826 378539344 670229005 141903232 156294185 61635792 499385209 348820249 434241740 118059896 950468480 948697734 208931307 277958897 32163900 950407335 383889392 317420165 212107183 471968891 498816948 166121518 223730880 677415471 27408244 178385806 518411843 718346263 697865173 270253289 202179057 520649645 120163042 901862958 739805030 531639956 215307026 548216310 610300722 32648089 246996034 959572097 545246149 916315053 267894455 528740530 511818357 85797613 381373982 124700 842942084 532972442 995820687 895729398 308972062 621866789 485273986 134303519 851815250 260514075 477193953 675071261 314439453 824147513 692965367 796238369 901690968 339731298 441799803 46536193 69256404 219762850 852577670 525137978 928498752 710345772 401772195 1282808 606861108 169021278 743553725 589235208 114388019 754980790 14620967 119375840 664737445 364390882 959010975 958048931 513410523 784581817 901817420 975976213 902888975 128949294 316742843 949898149 114444641 106975339 795975905 790678379 994350812 3090102 509485339 534989097 632481138 169740424 536843308 795868736 264369401 49603192 150754375 881333190 299189044 52361037 597565437 1844591 930239182 871491311 660531531 119029401 361395799 68193648 769896086 403063118 455745350 301971982 834329006 652508474 385257728 308901421 287552199 836656312 567507403 639986262 276927356 81863623 314525659 52795710 31794646 975833355 296542276 290545855 750061376 933322966 863937038 957101789 688372625 410923548 304018721 835459266 153180675 365429633 50997579 260213698 562825278 14669384 915310406 691129435 371567439 81998180 250662837 867527978 243316395 26890858 689979936 829967360 692511532 373504664 397551609 994375887 498308639 642754008 322888601 772791985 101616680 564942777 265834305 791301864 309579363 741795438 329613337 65075169 532613962 875269085 933796148 106688560 623167429 212137608 218862221 355261840 353517598 388585633 552476160 335282659 585847564 183996157 561655386 191269940 987767980 774644764 849505359 306127801 930174853 313252137 245110128 104754890 629609854 205063916 721104710 286762988 764439796 209620706 329634871 903423691 225610656 557202475 254762644 407893305 961682858 140449928 320677272 114546736 658353308 276236654 92348515 607717590 832600684 918250227 605919484 955557749 496478842 842965204 954649944 987041919 604330633 22535034 678920784 109289361 335366084 484580084 109322916 376651884 876750276 510009338 341179389 26535423 749723015 78947563 892803564 647446874 962819182 965882060 882665706 869919418 893890889 273473102 455022426 298461827 172782413 399264971 770561669 756019260 678281494 86657341 294849948 691486111 718566826 64835918 970662582 590835073 620126073 941113934 412213209 195032295 905312594 542757426 570994152 162813439 438899577 889687708 435168185 455383321 954633361 445343698 855314692 435338160 503285923 335031747 803588459 90072938 847262251 302387461 201356148 513106704 188348160 934104536 167147925 78416793 92498284 614587686 977700131 653681435 598344475 462163323 699319139 958905308 29018144 972902927 10312827 41418055 898510330 800157634 657670781 710597358 773575825 523719707 19467877 383874448 228343085 885489225 793120526 549180940 725891975 363998754 93737546 269948016 632516280 949710631 429481922 533266157 475657293 146288511 275181591 849050336 919231786 780699899 365844930 467297739 393865900 155419660 998476338 501557850 617378187 632369881 122755255 872248160 262997231 232822821 196367243 661832411 756058468 16880737 515675341 87475432 246338017 614463649 746321286 921079512 112423616 603511721 395492009 934131229 149935307 67726044 616746000 893150543 450954282 68058442 678133626 954063668 618247542 154540207 480155026 751523769 93191851 599630434 938115305 959575278 319413293 1299059 492071670 206768142 604045258 516374666 24063263 678320769 671713723 354658051 820519336 615816909 154482582 968485338 650111685 274245030 755308391 708689338 650765712 534087912 472190105 989343983 622531337 136856217 588680958 638323824 198955288 645798882 506914774 559137504 941681041 798949396 80362184 841016195 992879402 448017327 534754529 610411337 196394630 926197074 510892435 710380488 857465649 36871371 394833340 307280449 835920536 389001738 23946403 103936154 331964694 69849647 756118773 906456677 609646317 588448376 576118212 928105431 532525892 306843476 274213779 839451855 924531502 881058646 290356549 857039317 3721381 416120376 202904866 934250777 930238342 222619615 944845800 195801455 935646880 254724435 575482798 12660569 807385761 267778504 295289085 413058559 558095139 647255453 201281470 683101742 822769575 567558994 702066763 775571806 576823447 21378194 13328991 53791408 504344642 374750515 390212124 926312427 381720037 15279148 277129492 826882170 516649629 178330789 515429692 321214585 757561462 17407204 342849521 472631717 728751456 520638307 509590260 751651940 859066423 656424886 765827449 138211530 224632761 59674020 914192142 709571466 423184782 910370843 714788535 667179268 36773197 559089705 451846100 553547329 744456554 10152458 928624950 77287918 786126921 177234469 845183504 923277156 198896435 652189699 221927168 911469474 695585111 290362198 684717325 322857550 225541328 912236794 580742303 711137465 723834272 537344500 260519568 612233431 220616878 717752941 759254814 761536587 160169679 816111803 956069099 364898138 865907128 37990484 494531077 23533559 880654604 607630561 92907234 835138739 443388245 265869099 574497631 363300817 5623556 170156069 847317952 707685944 409087857 807437288 701212599 723152505 791732703 192040125 39767890 879882695 72929908 509645323 849243155 480200964 468966214 520260964 671031263 140706743 950987597 598442889 774660099 716009743 499075943 488451926 856342579 136228581 373218654 488565468 764326797 464929460 529034983 734856268 382202772 487078055 986996889 515187458 669083450 86944907 889195251 212079232 490754514 765950168 131153251 571528562 494273049 873472432 784788788 753632939 887394099 108219862 333988519 344091175 444479406 847816124 81326551 39149064 444868225 331865718 613497294 241969051 95176711 279674568 488746369 598454352 491956487 732298774 946857159 102120134 668263340 763940208 293486431 427560383 885489807 520799887 382214645 50229029 32965034 185238223 251065626 414445834 326902628 677860920 492797511 468271791 473582984 967092346 204437725 496959347 673727054 392163821 962708772 213775841 124857169 18780816 791541584 395419311 585484440 275059465 329257083 129789876 324290447 604575144 255656353 167063799 917857804 318548324 669940910 899291040 360438604 907626718 546901876 942558982 48832244 784148827 67021487 998621090 346754576 598434250 601963771 84806680 48117786 723420615 756882402 425864754 495671274 295523466 8458969 927713255 909693126 430233087 450496053 489331788 119172447 518183859 515892793 770915497 336668870 504458207 112835599 200388457 698237308 986291809 6676166 288125724 806902882 80236995 611886685 514510720 44022216 425098799 124931757 371190905 254036069 398055041 30679172 199251726 305706576 646548279 634474132 457650296 397191188 825785206 290101876 700412687 862227871 849866769 412707753 550668118 254774593 851370107 367326357 359981306 532609210 444800471 57198992 907359693 497458736 161340395 407252944 718990537 400652079 99770917 690740855 345654034 4603308 900938399 560987022 461944567 891078919 277382421 850751753 474085606 977395458 345409520 378791868 458454141 66649291 202688831 156042861 951313791 700780024 118632890 613501635 111040215 233801606 413060543 548191822 999660439 35789019 448625239 960229258 236677114 168543427 967613998 420081368 440019560 800267893 534062750 767685505 692808808 936901258 792882342 633697970 444428717 104544780 585782765 77536395 202943764 176323431 904039361 649020168 138976161 179443055 337774107 790006550 858558844 955177571 269340315 766442373 644084987 123107556 741361029 645481996 866009497 185190150 455808201 800967247 744563960 316866875 593138433 68777687 421342180 528887644 861404267 206562834 531743568 19717047 452399596 777943902 934018390 545266672 406601751 800211450 685893180 443307045 60781087 548766224 472170348 472431053 117925606 17568177 749037690 733896399 463561204 827911125 687787041 713473655 757437046 132053852 556813122 43197566 368222278 649487380 560517611 815092734 147096801 579646379 847205453 327044734 997654124 177424571 461088196 694571243 175941821 273086404 686553556 593058454 845841477 109942321 380375337 221634116 823572775 952595794 614757525 623450388 922674215 270636898 826906643 124356502 11030454 578216577 70156742 569663169 683066093 368161721 65338618 96679662 823441033 339663864 335907108 217455332 542457329 602204957 949172445 988454608 813079607 391229155 343263462 17865544 407095567 357361657 144125231 349334602 6797784 445310700 244871625 664590395 498984605 480959799 60456943 704867559 484894986 275218490 671360261 377362050 377225591 836017730 798377367 450495661 245220836 192964476 740105300 424826217 467004152 741646085 607715103 406712358 897775874 917912536 581839346 507786426 600820472 962832871 341942272 10925665 569735036 930886906 458765977 444698814 3720149 516362194 259768374 679445731 505372398 171043084 359819135 975215680 211172453 620405810 877680700 619769785 73085811 153798838 165339747 147226253 832834560 530179314 36850443 706148202 524181921 368367396 616973691 583084904 801478791 580991098 891331099 449982212 62327956 414904321 653255555 232418592 735898190 10781108 78960488 968836110 472463847 353845620 23982514 829763200 820846131 268204042 939435885 956375699 744564147 895618088 32516552 236279503 202839437 124758375 757437728 854376733 634644624 501921096 418184698 346316247 790261302 804908597 605173761 686494902 85558172 219918461 996295430 867262434 484594316 600670557 896548357 652512488 17046640 803794930 992274978 312144316 695068516 186732617 318945190 461272508 988490021 181588048 535573257 46991535 63251482 893474531 185538018 732986302 723174996 194075328 286345207 482030723 672868491 280486295 354360368 727874039 268658971 604613360 885264804 252981635 113345803 750316875 373209740 756812273 156316429 409488134 947656523 698421880 315990137 947320685 928612740 586949557 845899850 775696815 802670245 366790828 672889901 484274149 902126542 38646734 660659050 276332561 718534636 618340844 405302270 761480476 551881516 184880967 683507592 410955227 382924765 107357312 932434508 51371520 224685436 278054823 864081981 100619058 660538798 524504881 796967407 947187702 919109437 947367674 616500643 382750402 923589402 636256587 626743871 705119981 179227492 647622093 667686483 281744313 673031263 38301846 732735766 995823435 115388784 153906981 742272873 783648698 826332721 338077533 843986129 474182141 169410905 727542413 2036350 32211699 942509004 229745258 156450888 332183657 989808535 483154960 167002028 238905870 80799469 276175110 324390612 418864765 790471974 906742840 40345487 162995253 907494344 919736573 515234897 196740769 663851392 503292433 188804413 495828753 951263519 131178648 402716440 868282815 91281054 378849568 740308563 69227210 607317029 508848288 233373186 869552960 830514428 528273780 127981800 722054672 878466198 142363745 793901164 777125651 774341522 368820116 342084507 375714313 581719214 836620706 576249903 512981402 168580058 563686026 837499267 270501981 51894567 596282545 484687777 634953670 416660944 161399267 423344696 693286714 417686840 327258198 460593568 788446974 364330475 405482918 104576473 314144585 61327005 508051930 909861255 853948206 94982953 301763678 201809658 341374386 625945488 70322952 108790060 658715837 478608639 187180309 927442106 145402401 604783307 585677867 774071021 557323415 317201770 356094293 336372915 862079678 924561286 412886536 870664098 895821861 570622181 454727975 160782586 797597751 675882364 10110960 416459940 809152849 408464489 505336599 963126319 367571891 553607402 809378731 324732367 832995461 275104110 195424300 917624167 602513115 629509767 9944961 682299261 392475820 877743600 551270899 440504382 618725850 254245262 30138429 480297092 105414447 798897259 607515254 810226895 332111708 417481657 615484710 397682244 532274680 1988565 850399293 812048819 79913096 191505728 831631885 249086099 130617716 722390440 159473747 802806789 475542283 241238750 995687221 68925901 901622408 858052577 455821889 963229020 972271885 208860112 183317868 445874379 72159393 556903160 855493650 951471574 528447801 411575245 900931579 168730342 615764905 958162921 313810002 69516299 285054134 190059280 83947692 390389755 570039305 595315245 998534151 49445652 320804146 31563347 623271880 65262176 422007978 172260284 858162878 69364364 264806613 280670413 549434906 416901363 484056314 205333779 785664638 809695374 434853962 982916157 372281071 186407690 180925151 396712232 230233045 206397876 690910395 774565082 35629579 675680899 386749636 541296506 388022218 308682007 699496398 103435103 122837946 898901943 847994261 698802689 657501160 924881488 782597556 584719620 873530568 842146684 855367865 167155511 437941307 90144634 853099794 203603334 276870783 482273074 386816539 968361493 75754825 147171633 30018837 345828127 24036009 579160239 588741158 753322004 711134748 664690829 142415714 149508743 661126028 826700366 551540677 71396144 332283458 886373159 254873643 852955895 778854388 233605355 977267807 329740261 829195203 139734808 212194834 125688365 108697391 159059419 969645535 305655592 99631400 664869121 799948357 380277343 72289538 728436476 91101870 985849464 534074749 479339507 271679599 287002184 991853499 227771561 254834106 117187530 982627915 843277711 264004279 506685733 943156256 741111224 782454378 445223836 693323674 402113002 587062727 626579627 253034878 718035847 941818025 607220968 617385974 673591200 956395725 932066584 274057629 932887022 282648798 137427751 388914283 295860684 335175535 746176804 667672776 488265542 450326006 139136081 778570881 511013896 801521624 459667467 40531401 207192171 955466589 434110176 395161153 438554221 971161780 71915396 821197803 403908791 899003640 169038290 483775540 994354068 614432042 880878540 359089908 419888641 646788404 854406302 449778025 46261914 778399462 417761692 651382580 853006502 621937402 314999615 852755812 729790230 492405266 142363180 625138545 634115969 227563956 432803887 247543349 772001059 222856534 112766264 983622902 990451175 611623247 118447206 705575520 207413594 959744478 957682938 99974540 243117494 552321073 535672161 893590260 486806232 37452629 299187244 651403134 611881288 487352132 156572953 376891257 239220532 370137568 164326920 374656407 894070135 616141301 619984390 138670072 869683338 442592302 466887240 208672544 788528026 19489322 95162151 603897084 319582581 330709352 39854885 436596706 428401550 262391378 145467374 947159950 610279179 474518329 380659544 259657257 160585645 976975189 603162717 526742330 578231016 319134151 796723743 303614140 88641233 150762139 723292906 477380617 486714150 225665470 367344944 311293161 989759568 724764686 356178574 858125445 834700896 662328907 46152904 955197559 993930763 424568348 598065350 739333560 365892527 706566418 153771422 717311920 655204949 249042346 205440396 417883434 217288876 280952901 928178928 386787166 399699981 441298471 482955607 89876712 106976627 630570628 861401717 72645326 14084233 76981113 934018850 646261629 280247454 403498243 824784486 779623880 792723367 971341834 901087851 925964271 321948485 423338341 467450752 614242454 186552255 15379144 93274917 929984458 938902789 906719703 244798204 862905857 128306090 605808922 93080526 518711065 418387443 292840195 170539154 572298069 805220037 985685224 195118435 660509283 760178350 784085520 855577215 1298008 655465703 528862371 389550934 622517940 922338382 645523628 246566781 572546394 712259691 757467948 539525033 953212822 162658413 73986816 395124931 546514720 404888108 816702963 352856786 943642230 424171303 30640564 880888331 874136312 977270146 584228576 747674571 498013624 811151121 592380918 689702291 62760617 862964296 459030111 530531855 220961928 59715914 142955371 754931218 658571901 731560155 645154134 173131159 192318738 151874921 348126273 413294274 304637760 318526478 668810546 267519711 685675872 197409675 2026270 641016159 448933435 268965186 53576671 706571486 835229178 302163527 779939633 502102560 304245047 87140942 716576705 224379665 909293036 394373305 212193312 437421506 55268479 418336139 338747847 298535792 33097919 699616889 58996758 342257535 965484765 527717333 678231896 49806966 196251258 490984354 446990783 162210572 392066459 232888965 486169187 55596317 37691821 625528015 831090755 869866153 939280003 235273588 211728715 901955807 431186781 367606041 114920269 193257740 572744158 53654782 168939775 266668978 375715607 948148248 594518276 215857523 456466552 847922687 416311014 31573017 658768611 684933098 958312470 678270868 544477082 727997386 289387757 730369797 797791564 253609769 587700651 524724652 511772943 549772351 278312314 496232436 883923292 227128042 226426734 524524659 562862878 271521207 250439549 302962913 632836766 591688909 183878025 284925218 14512786 865346824 601432666 935492677 542566682 904987368 911181475 524564342 141540537 288269714 469757436 788642585 571587930 479684567 76061675 83225001 680580441 933901098 674553043 67090134 867901034 522804400 232647943 232451698 358386363 120512047 110233537 79294840 371917780 895938834 493603875 55707406 211382701 512436087 862094386 824952186 41698209 658391319 483648487 97372980 442620788 567913053 205120533 436873685 177418841 576661844 625116542 267419936 595251168 570072763 522736079 15162883 355977992 272771817 109942421 166145420 198734646 658104042 601153099 384108029 393789752 633249132 321279315 868789171 364053058 720819142 319222005 927410748 597738740 844872952 319460449 573655373 691476048 826618024 841402291 879065021 842851524 5247526 962707179 774857875 272656167 95827818 239478003 284519928 351579571 386868755 550199962 165016131 358478609 124124777 490968476 570837737 952834378 831011414 828865944 687124370 742910681 957642872 37704987 433661192 890251158 601571084 604861587 490454079 605108680 36113144 41781591 982363472 253408031 285231306 980973229 41006209 662969771 482451903 44233404 597599035 429314797 784554160 592932246 852699411 812778184 113852712 876400692 59326144 718962829 344965205 307833718 294131500 909837805 181011471 819594536 420607582 661206022 883740114 932386552 554148490 663783009 667919304 745180034 726993164 389520870 191599042 305043782 858844009 294772718 291407413 472588717 310200391 961930548 337744192 98582536 977497723 86589665 251911595 280809619 576914946 575675773 670852069 204262762 991345920 435886081 202478340 417642908 542959296 721396422 329877963 629833238 310240434 500459158 755602333 46072500 380451700 263721886 217879948 609206583 709244361 481738352 593002318 412325956 541865884 921250061 239128131 282087538 83672321 208426967 786599025 738593590 185642801 662495387 855485832 332315639 237594512 71543185 834404831 624975094 712874666 297628245 992173943 192014955 382873397 819909357 274587380 320794989 960380166 931441860 710768809 124109562 212748327 587796401 20977033 715245314 803689404 604683504 914879030 915939665 725355295 322460203 441524729 854600866 115397833 203151464 698271164 647167382 906456410 673514785 632391453 400024502 402677921 309382450 881949525 588644980 833968784 860454367 105882701 220059690 866139203 173972440 362711958 981281560 149297916 613758512 182579047 706559078 558962472 397889893 201937311 100857638 606033753 929712733 951812290 825264468 720587081 877625698 204006661 462377678 175834846 843183407 81800507 958329950 575787296 293889500 10755557 999474870 73132871 881038833 703329832 973006704 141608875 590606170 298327766 544364555 888921807 792094319 384424807 877167345 720204383 719433449 512005879 753271925 334194732 401630958 733742926 210577868 265087287 21239309 813642206 672050204 723927709 205328956 122041532 424141165 978268844 155234518 804145574 989624239 375573977 551552418 308611846 349593018 818441661 113779661 187053290 750621780 755256346 604710634 499954187 49263906 538532830 454720505 47997635 594141110 130768410 371024477 903325214 985355915 327256333 934319847 845918922 195388417 639000342 197217991 849838624 773359969 919134146 197885599 104496412 164265949 25218244 383552880 598302566 27021709 57119992 37948842 668214864 693454452 480332128 886321700 596763599 550092667 112744488 819315480 748997506 334825840 675151269 344164651 744981425 299160081 923534158 885469293 688962634 790914812 438499528 35787601 157994982 196822716 163879138 965289908 323571909 577164737 479800971 89573855 559337419 890781030 732455903 496455546 544127881 182942955 622321953 932606621 654317366 689090168 78615485 163779269 545873842 889188897 714120518 394223576 828646020 659226844 456074361 967750946 83142876 173189007 704328247 296739416 94872207 331564541 703618701 285452442 774955807 152153565 313024939 140377451 894703280 149789124 22990575 390986679 166003476 399778870 870584285 863901909 109940416 851188893 506071837 337428867 635852759 926120007 296834436 351256802 900567836 729556847 925836049 822672263 70419712 242230327 514150368 262550112 104252570 833209765 147294528 507547085 419562666 172125359 263047335 638881428 380390040 999296810 746096811 506577120 564670832 324138715 280529426 274204490 778374383 773002342 371231431 831825868 620637804 862602850 132462303 746926797 459562997 995323975 319519632 637077016 528487222 203248501 397239875 411187173 645140617 669613618 503747456 149480399 24226794 371784375 623867388 216061917 351533570 65644566 557514128 162670971 659627296 710190420 189685826 662916222 546626109 25105496 321019708 805885991 736682485 999261942 297627601 924032532 197700497 200100838 922074748 435974488 200573440 116640712 635005408 803283305 701872857 442855464 980978122 11873056 748432221 686960244 230548524 542129604 365766000 227946249 298501665 647811587 608793765 167279141 814429933 85084915 793080111 420774641 645655291 28410127 757088497 119314561 333715678 11359034 426812014 220263116 674397267 501547464 448616924 485027253 116536121 44182379 493410316 960391173 531110559 67870271 135970176 735449194 93739959 166080203 844239713 355419778 833509597 739922683 405654649 329365962 914768019 613274915 643042883 458216624 344877188 583506693 481313247 815149952 731033222 2193600 729172753 213891960 146299795 73921510 553314123 156074422 319439050 506307692 704162978 219283527 767144573 906735533 646554839 666631446 225230621 5782383 911834194 725917953 656767043 41582302 951502624 981402824 80416690 267093395 938626042 616604180 969650264 414220424 54046014 869135480 240456 690898725 943819765 414725226 223820988 430635570 357954763 658245710 546211608 763650794 122754331 246714734 648624614 551358440 770997729 175007480 569831644 336384049 588950727 955178758 521732819 51074610 930976538 506281884 876178125 725458114 182754002 570234272 966790392 145446429 448890257 678724583 906113445 911096550 27228058 209644580 942378066 438555438 206605535 433236990 874065569 665283944 210608629 446080509 298976091 126906738 892435741 465532561 253046134 200834450 12545853 725118228 897052940 25220980 784890087 290495687 587175010 476044079 179434831 334820306 43439840 109039679 535067988 666501706 955066908 30275719 828746371 952827684 322931922 321807702 840117253 422124869 970071010 868377700 955848624 503779954 721300312 342696652 439782155 750408288 533152619 179257362 965688886 753131942 344726896 993192231 155503365 3267783 957172976 487500123 68146157 169770 159753876 68200302 130835724 87004197 972704559 790848135 973248812 995920875 165975741 944333102 423799484 287526049 684254558 351017567 688029392 447873870 424678499 933661300 530808876 414487271 276945723 188450352 340842034 199813441 338816129 478634437 469487094 220358687 750046458 319731653 745072942 518863403 973829267 940084269 602883894 46902773 930879322 972574564 726948891 720337142 918713488 598021430 892657030 531553427 82889111 216356312 21526994 644365584 741064437 862935787 924639998 149313699 462590308 981897839 649216947 548764768 340224187 82327507 395244603 604667724 100011262 25075437 945695120 96032081 324909403 481024762 976105045 469717052 733464354 433691553 225964490 624668362 848100561 444933099 879648485 714962844 620363527 336210769 434050871 835658296 11397010 761200302 575343108 841017364 847281768 910106441 933284146 804319623 167063201 165147087 911256656 57596112 863095166 997372757 45964694 519768860 906383726 979904086 623371490 27392379 525781252 956218810 875714237 51471844 187307515 975821775 869890386 237346362 115232819 13621574 676450174 558064456 960619708 850867264 673913789 913462207 697283783 727016770 295443255 879948084 371932846 350270008 936360122 773119276 937244407 447128441 687513534 161041422 982201676 862034625 479857508 535281711 417993601 232859186 489991536 73725125 868569230 62491489 670648660 175452401 379467675 316687930 501856553 237502654 406563055 115176995 591731369 365883423 177190657 154519258 372115516 159618023 387228520 407093651 830133749 136978140 353471978 446403548 164865162 693081257 698008436 633815225 637300825 222372571 516137239 135309194 37161576 629552619 962222348 474446112 194641258 43178047 225518011 581459118 967036596 89375002 373754541 621287122 113575749 666806708 229708179 737067666 311643333 932626976 315498316 132493403 498632322 9709668 925576408 945707264 164234358 772496232 476984422 397121217 501085247 198571514 84817991 670145600 201351203 719329753 287812087 154530190 249716753 170734753 756912407 536661281 840960163 4268766 852277365 290466001 940891668 821811456 815172867 266376937 438527824 575024227 815316186 975307025 197271269 509233731 293088323 710435681 430024199 68421838 522013349 560751958 354376089 583338514 608368018 226934999 979790110 322263821 652172234 792817965 343245258 43412122 233729069 905117713 365307251 435783303 341846726 961747103 383072663 75530372 129982923 125667930 971893343 886801192 689794197 597017653 846556054 921207545 558938791 164807041 380996025 581770074 260610733 527777530 213591267 311621538 984556920 794442696 760745439 991513095 301751048 543332984 59606295 632541867 292667261 489311742 152667558 828851862 408823842 730081467 352131148 821519037 917532783 874033519 617422447 771982583 383478518 576691273 794915612 871476994 353494147 699202015 9088015 806935439 148703487 437112365 454914209 625241894 444155512 888167834 643352287 501407559 190817328 488595954 207480438 722211152 704064393 462157677 729788861 656424335 953668874 82294693 834949299 563690541 7218539 422864543 358123008 486325835 610912901 980130414 174482932 547967716 151649885 945252603 585963396 139647462 804021786 78932846 588424530 788450594 534651669 778602698 715618467 583273295 933342660 833574428 314828902 141697807 381972175 763213017 841942069 605542379 216296956 863450589 866860877 216049493 442490690 667530350 186968470 656062372 462782911 742822203 942326431 612814108 197047470 813822294 311431838 898858727 900256897 818245439 805045109 456684053 301023688 5689816 841559977 851051165 281202754 474784626 677656426 941553250 609365967 488865474 768986000 258183727 851611512 802672613 411842203 623935153 553441911 505911133 55558575 366816134 714792224 63507225 298608029 642396204 880658428 357016943 167966170 165751055 671354547 968571420 539790219 865450620 119713049 89449286 412535922 959237041 986568747 370210425 165640192 555509709 469449480 470539691 899979855 615100120 698638849 72454712 29695256 363311813 652818818 278158825 65914057 152218732 605081903 677258726 236408683 742995090 252810436 48411590 111743931 903264987 443809070 215958664 408577042 417232091 977926532 13422483 684267390 405870859 539543548 660063150 337170090 47978444 511055614 201479187 386123503 626918504 622852625 511096668 855654731 882959886 387895019 446579347 993121637 523019483 650813542 65642017 290386061 997742285 491262342 974673631 206449339 996950734 442568311 413894917 724159372 319599536 628183432 565285180 903861066 822144301 489707579 476892048 290166757 125326565 671356973 596947577 668055537 826432863 467302957 742710736 144941485 433659152 208411948 664491996 243919875 404929872 157115720 74853453 286670209 392037216 715729091 504766770 423563103 524240745 713192199 295642638 700524667 944931196 777239464 20361412 741456989 496991892 656197986 215199906 533987890 722912657 66908950 831519581 99554773 802465853 533077204 61006865 323784901 601131590 987812042 767648325 478760229 47672906 634764887 905431781 10180809 513555657 425830650 484586822 636346405 874866475 77500771 640053799 147458906 114815166 91778147 382820524 926733615 963172291 787904500 183659875 349727763 925985365 440017469 147483967 51835164 971978625 662096517 58780832 725895948 522660405 470978624 761751114 784638793 654747212 444699149 328802410 26825442 396326792 73370284 553339801 330639759 829985937 384457737 304479181 309180076 564321272 66760246 998663025 566963780 883723063 811825265 862680656 844118020 458190257 450225690 694259873 848783942 310004138 378926528 11255806 640476936 421270872 163941907 733420142 202528496 169846741 721280750 724303201 689466959 88186910 571698776 76968105 729627161 693763614 487794043 539438979 195264752 832288680 51316134 227184020 938400797 437971827 506200408 876310509 358916234 392473121 356903221 975823360 371700179 986189629 998562054 415192234 880875830 34119220 614687422 969378610 91243160 277526370 893292924 358993476 49612684 687663371 967408766 518755575 322640454 881092179 756326453 61583303 750668456 386060366 105932079 263067032 880536886 878378740 368041259 972291769 775203875 106891816 304707593 889306590 74986051 954024627 392549078 702728998 521059350 5080901 401390790 555882260 547303109 141419897 997954098 643712920 234283293 512526028 910535072 429993221 421077143 849989549 210362042 568432921 727497809 275549291 758982482 318216184 648979474 595973181 864148070 442306867 491621197 288980551 54375191 323054779 809031188 685912208 196185521 271011822 845093928 461995277 572007078 99890837 346683379 292201107 972956564 330662873 858145664 322565606 816767549 20654417 776695688 768886446 934375307 62624250 492279917 803605628 755462290 445975353 280470834 956481485 191072653 81831898 169744008 469445882 657159905 865613078 106151368 41682261 683097110 396104583 454520303 602060811 284817634 855167029 744618659 787030325 378420769 303934857 669741879 81092311 344563923 470635099 868173215 479149527 11567909 645935337 500606845 182208263 280824170 950143959 314096916 658337312 136271646 151228211 442071128 106984134 418832868 843975024 716037087 5788033 974563463 134285620 744504295 77160128 775576569 396133488 549018966 708538334 581367383 72678182 541506238 377784349 370580965 479340708 959592278 252747172 795840523 461816934 14026749 122378887 12209758 299574354 928236089 574834620 195682203 204815798 687527226 502804008 461416611 601415753 58623702 945683859 81912704 92051234 355886736 258680746 650369643 764172749 337252493 201643277 874799289 103361332 879772827 118771257 96773103 349742764 716610865 963880601 48197307 751515378 391806577 460247421 911133165 438658863 839511840 55785758 487327616 201708010 119389615 103589792 836040603 846389791 831842611 37485065 616291207 614017574 537742445 344442189 131158709 950451911 882387141 915295043 555494341 754018350 754610503 910318508 192755060 55597810 593674157 867737909 689311156 756552463 631853911 956961387 383166100 381352681 210783305 218016456 87926096 276758095 729497140 428074414 829491023 321116020 222244720 236022632 13052692 497269241 380397052 473773605 968701275 730685921 210305151 438194430 261233146 285048472 684631879 659419895 495847668 594864118 112421709 622382069 463485304 694395191 290690863 415269836 114035927 319816192 631438388 996626742 935333260 269259103 608498511 298587348 992362555 299331272 54484496 528433708 589215918 806044441 779971007 583156403 460024027 201301913 153361469 949645505 27503578 293906161 683362584 645945494 123314416 548326456 347427982 825258334 191662217 188492783 593222266 99493414 756867893 592001270 723772770 847676652 217603250 735249822 100056442 128604046 737294562 155459226 851313044 906341593 318624467 923016201 267356210 970531193 658703286 492460140 427699323 496493834 226713572 935895991 100402495 203687180 639712228 513465915 165445618 807011309 147062115 158706101 434049976 950637048 517885996 357365324 553549397 796434536 923492675 745574797 597438777 853569633 388211142 731583850 972786299 418488811 389848067 26024774 496417241 153065717 514080874 222877923 539734462 23918168 774638747 88615276 877790262 634612955 352009812 61986938 699982840 668436000 407607943 429088522 277245800 378148799 956359743 945284222 985093001 871589932 542171068 357344681 520866057 648714698 536310626 687585211 798000451 823229923 190450364 514483026 941300530 300681638 530773883 856124788 262372994 411009326 458612346 953575569 154055809 987553918 386560192 244215160 11775267 472309884 30606452 16330348 307408907 213822973 87937005 441275411 675758973 583768245 574560930 174887538 664873325 710135880 990776891 607790600 971866732 30141761 346370945 667216045 64948414 953117198 358007141 42741927 427903817 93621773 464547332 490005411 305451677 662696569 32420773 185648054 833610734 301432190 785999788 569720926 299312671 174833968 454838196 884780418 667249335 509486724 530409074 988140652 343476448 11775582 806043853 791301844 967673464 422903943 124058318 227647444 156226301 874682542 229202601 166682358 960125075 728163694 965448635 396411171 945007882 380414795 659544964 833599411 98246365 471544233 950219952 390232926 859340326 506102747 719707671 66270544 940777393 689216027 962396588 364615189 578753002 756890251 448877976 618968735 414313961 903781427 462052134 939896652 288441453 50607621 821559241 299340516 143579358 545975769 208243738 934244243 712478796 457037169 143442654 421195244 626881132 337196918 770080255 558947823 504239777 113718394 185924499 462932479 10509039 872686072 913326800 548110314 294210308 266697549 848505633 921600488 929095995 391587012 361953035 827566482 8501649 930774673 545899331 913811185 824386223 226229193 91131813 630176625 740702944 522394478 770434099 834966244 833929504 166908269 277718040 285752459 214095884 108775827 291150504 878767627 655583983 674700955 357288033 780430448 275295408 909074727 824017890 769055025 173834991 408784062 728972536 437266726 710637287 848181970 394197911 730465181 64554622 699533758 81708249 19315004 319020358 115274179 624033793 500072218 477871479 526915081 853014907 510207414 559287021 629260705 328598491 418554359 576821808 832495237 529349850 51243554 273272177 168312983 241177182 979155703 69377415 370341020 815355249 556705931 600058094 541074252 462637893 281465191 947813074 682185789 345084470 386640247 587703297 533522670 810778826 796096272 524807150 886970314 907759273 137539057 384237502 303434020 597679527 686868542 65478452 510404660 627048127 227878789 894315971 885352477 384357141 784150971 489830272 89493730 409503988 802890301 945820202 831728764 326696654 462880463 315262504 288743870 420653121 932337313 171247499 315020654 815599375 143226692 468153096 186089269 509556768 941119419 75966723 843646112 578751116 254338918 372516477 896759853 37301902 254414102 492508201 214832185 929580167 531550718 17042780 326922255 479472128 954250941 671806742 290178275 575364275 273933911 804415232 628654280 259829621 141445943 64722536 621367751 836988236 447289911 144882503 385007300 446819428 477883795 715146553 668502162 892732174 826541549 536142470 792092905 841191623 616224084 431607070 987067243 278180657 610020928 417577370 225097891 221383448 601220235 603569718 429741822 55449969 637589626 650237917 296197083 213466706 159185855 255012635 268741236 854048261 557721192 383946535 864107258 89784816 380675062 355813603 826288507 574379945 57055824 371138002 580832493 89077739 384186563 135935784 234832436 610295702 899822848 574047931 980089628 14461115 251175464 596792841 613881682 186767240 136787390 215596347 6275441 690543965 62078643 97685533 469193722 571797433 880416343 322070825 655302742 218396488 234497389 907066493 167908825 523310814 180651285 667298531 61757110 884150393 220963295 911961797 695157525 386347064 189226174 263702334 365402109 148873065 284526610 923064079 880832604 945230716 119453344 104722331 257318415 73279761 672577173 438676978 34468566 255894758 736286340 801779661 101175130 682365674 318089838 931297419 120567340 106889520 113779383 47096883 661936840 231532275 735855912 482440309 776302220 164310419 646036476 360008101 50956226 640055713 651719884 641472452 247586461 449176011 543188386 850664828 836290098 548777454 828062182 320771867 464098182 339295246 175066483 348542357 364367492 636991831 869157248 597304717 489803513 921899290 827438006 115920454 103267743 547844052 779409696 503720116 99602712 576652841 632023353 829380717 351098094 867068385 210152150 203413679 580597907 722536178 606948673 400545635 870569565 611946614 138232102 125489684 332988561 927363505 303744925 469381374 168062036 145984783 768704288 389033470 492610234 795446048 689909909 428188573 489884093 632049570 750067785 181227528 845498684 100287608 324190963 704698392 720436226 527622318 239179949 42332746 273683136 748466549 921446398 201912777 943095567 277088555 804870358 959878497 555486831 655813198 618891143 106361483 736527690 557990544 675486159 456703077 452789235 628856257 297894352 298939574 912315297 385016538 858648863 228738287 906402678 335123202 781377962 61829415 831462780 835356292 419420883 839879451 701747619 106878930 797042266 237879603 464820935 532615814 615456626 588405121 125791652 31901798 756313006 169294008 523547110 405887068 766694923 331300619 959711522 948464506 669502445 859439121 205285836 109974015 483203106 862026214 262853191 98492488 824963043 741862422 934823389 694786022 695450567 795963803 339763647 256137355 205038295 255070753 650039300 891287823 476385662 278016243 532651184 764812920 384081045 198333962 413286570 914977523 566898775 978822407 326564038 78236368 934683494 87800366 572960445 672264586 565157335 898840434 576575535 259610312 153666583 638283113 192122786 909742930 926379016 164271695 522009487 807841309 615453680 417934607 857826121 114290499 514145145 631499830 924901907 828453127 940135098 123867902 870838805 923374293 727892272 145850437 907891043 739644990 950336192 235493777 385907957 820002818 693923511 391577617 734453676 472139011 425213644 730741148 937665872 636721481 8869914 422904246 236572565 562374920 339144232 985918593 998519059 192625567 910146019 254802382 372523595 139522189 826920093 232497173 371163815 959038592 665715992 824684917 58284406 167054409 679198326 119176882 296865011 263374308 441553734 397646912 743202625 715185014 493765246 719914805 662688101 25358921 275545211 319374927 900538962 233806800 45003775 767711476 394565605 442091686 502343992 565051446 458193882 119866255 428277951 15529420 938608861 531065975 302230159 430689558 710247294 447273838 314439436 824714777 606546232 145924530 791136775 853501571 935577451 301249703 87541169 551796399 925157982 460900052 570689960 592019610 986677831 311595250 449771506 920161004 855616573 302679257 147627006 621791730 89113920 985570954 444788640 524826280 809058106 315179831 970607125 438114731 431413247 211937837 840545025 250294337 460748355 672853992 186142579 932813145 341388458 474465550 647348958 433383562 995357377 322168683 208465444 63195414 597673459 318183151 401067143 801418469 252825243 693873845 505431219 946170755 279595261 620851202 829321663 491542310 777532991 755666241 888432169 728212400 484777845 510642951 95531730 90617258 955838101 152928011 843101711 402871105 444480899 276954420 375995535 557034826 675305734 568707723 156180590 432106057 302804946 511922244 691953209 219085665 882263937 184952509 370002388 86714722 661273998 794841715 193792413 572631495 29047913 32721687 673331530 334128042 283932768 620819579 53433604 270673111 5356717 227869591 369796184 960781498 94595697 740898194 595335483 565390189 273952693 785299126 64807689 269471915 202696811 911459191 244273544 354774751 846416236 200544108 783624166 783189526 346150776 65612895 434951609 467460873 797747258 550796086 504536571 16199191 833236802 991396617 726849044 37498951 75493644 551518222 715187921 389796423 774717942 152912043 285313895 15404400 46662987 269547626 490530416 46576833 164900920 950458114 916303095 871549918 181372127 299379528 878360935 12970013 448855352 607984198 709100690 577395055 309578291 839663138 610160314 516328823 205025436 124975920 986909315 775666296 652788785 32160494 993704951 898525286 482811537 224139518 52924815 154804182 960413765 968834091 117179174 22371593 951024574 633654120 793652997 347968738 567932502 160818896 770253013 350720501 467318607 87413926 649941164 409845623 748714193 920133719 636094984 76044358 658320108 228035956 348333775 630848493 27807900 960030907 948551244 992841112 968154306 828843277 769782841 424398110 924171559 214186102 187774381 763926530 269430649 327143208 728447537 576556137 676950101 883802752 720746672 146431521 614004795 47621123 401416834 267981729 699783317 755896919 556291685 618568458 445650099 174446675 740309371 810688291 364829903 49572336 948949584 237207644 243058443 881039189 519993310 315874250 643580527 840113099 82800257 200466478 983706091 18102468 488636667 327458032 910560091 23355612 190557565 288253212 301137534 463900888 547240088 417670764 415903744 580956832 21456974 246677057 192971377 766696011 197804291 22470812 164060488 757969171 45511298 839149875 719789545 14960217 659839748 23853145 530764957 897388715 317581859 754846222 366319506 725140664 617747428 796658426 819823591 728981603 450330039 986417004 827770520 571825065 114495342 313783901 881860499 647059895 17160776 786633832 795092131 718718431 224507370 822192856 731108999 136375453 334130021 946288797 683123166 50387094 915397158 282597193 68498992 812049812 228125458 487963680 285114099 465444747 785153898 210852104 294300280 520845714 217522655 257671054 725195528 500123378 559517568 248617454 829968330 126003220 643686608 795529733 56801228 666724237 195818675 612044374 341841164 408770323 842645363 132283158 996997481 752678031 71317961 269348125 261741997 340425481 846753234 950950117 657922694 376807348 564488208 153032086 788659603 630014191 504176245 660112900 736586832 207838009 654891346 198259107 473636649 854936638 624396390 373690256 678671982 721761748 28187607 881911193 897750360 194087667 933900592 424504103 324898061 693101761 798197866 770648658 672195982 6534023 119751391 188878042 310335698 945095611 284354133 939291432 164565427 692408051 983551995 374472012 791507693 9638137 984810851 330303992 23675950 28675763 406155146 253355409 576728837 832485174 114798554 152629530 734084588 714170046 863681310 750812999 78757188 111295918 953271945 534909291 226566742 805827472 813130939 531461252 477630548 815629336 596742841 565358655 666002777 820570661 859875053 693683175 443821921 713044658 519654961 170795379 93137752 93859824 835514558 581848196 197863442 334704179 255231292 450697569 84185413 994810099 904487864 955185657 688427667 539378644 744656038 39827684 14012551 115918756 770327014 469345889 204272525 409626964 339796920 181040980 320971012 736925439 265098704 330465363 396971051 910535910 354481212 652786319 951524138 44137082 441132161 937951976 31420950 36641098 878582396 821263595 156975077 795306514 661227394 744933823 731689336 616205241 395681090 765389632 254073499 668799043 136759518 364357358 936222461 448147945 471989720 177465070 287712054 235407874 396233504 347973905 414328780 230364182 568021745 521276365 559613476 712337615 909884753 356438336 65321361 378616060 694727708 730534964 143028298 710976670 626139899 367679254 492045940 988990421 946383582 648864513 952527639 639308781 588293670 213086895 608900899 487198295 287715225 572916619 194913392 335811507 473694558 608084642 671521474 386414785 834308626 863253933 655851202 984318317 528068527 145261579 184054019 704198601 298270362 102423491 998598392 168102675 533654177 67169411 879623686 757550763 938040822 120697506 821118585 431460638 876375101 110104610 11424895 550126881 431920501 299263913 779622705 13892749 609270540 510126470 176264081 799924068 37091034 242385585 299769736 444848852 549058588 487970759 626924265 566623281 28023927 658576914 326046827 220932595 927364340 431526527 939879089 575997116 697916686 968332455 153332034 463524445 735915936 290831305 342764433 965229765 2991088 166568907 557063158 796795664 631916201 262308925 634412725 969912964 28739298 448978775 467860724 759275401 332897561 263029495 946743750 484434608 892422193 53553061 915622692 655080378 553162361 16882063 11606256 998448265 918355621 479670671 832727025 755167269 819407060 514298401 416311003 856553925 321236874 520412271 97571652 693226945 359761588 336918854 936078001 253685917 477531817 133340190 797065097 648131591 503959842 565774873 926344219 979429836 997848650 508312312 835000228 892093680 674930091 159030832 819554119 80279696 405820731 451849689 709156103 245233401 96210005 646865324 287449307 722066589 848895683 347209748 946811288 16951579 782630317 384134944 393466371 617203760 561849516 568676232 492181952 931039438 683487420 806135213 479140966 154560005 383668035 864938641 102725741 17538574 692730123 73408231 629421106 481590608 869095756 61091333 927671045 134863190 927374501 452919528 286056465 165818320 468100633 72242492 453480307 960242079 424427029 17723983 307446569 616540094 793022831 272400919 578840097 471194208 703606371 841611826 614735657 576991700 693689752 806166763 646974969 42293145 413308698 268729388 951495223 251334477 486328670 891681427 914878566 57304510 982562372 429878361 826068220 953342431 463261198 132278376 259258194 815389133 126753386 255525198 193340584 228707273 634208622 97761351 968800551 617280319 780941465 326281258 558512864 771655105 527944141 664843911 639462605 661272074 638160470 607802503 535980494 370090243 336507887 227933699 917841329 451157681 335953329 491322491 996899361 824271177 778829602 333410839 455239609 237501476 910851888 478103202 760568061 590866123 763428654 909372569 314913107 749941221 511599580 831726615 239125519 161545286 283739231 641331685 544577894 124855787 308389186 418669171 646370686 292833522 664007038 140409046 209466721 919444653 104770924 747770832 532678138 950888074 48996308 348364998 433744167 776665896 31469283 28900552 384583849 244229961 261292845 860737420 517497639 933690583 424723633 97511028 226984243 498892775 661430736 692533638 800982089 567348659 670656606 627720304 93939655 622487966 879794827 130705293 476777463 183399988 302941687 321481431 834820362 887198760 798216868 730548472 683773979 222087511 467898885 82512449 439348267 870261696 176536553 731131301 506110753 31341204 196509072 241599943 850841294 130289955 760663200 720058347 282934766 949823463 520571942 88982274 812726563 973270917 118553494 454785188 559882738 221619655 560074191 798501393 159409617 858777248 220510229 980203823 722389268 633806127 928754965 694068618 499017219 325469876 701693412 933761887 108678081 617125786 293248768 469101704 668087648 135287926 649404753 70269840 722456284 136407812 629850399 499087014 933190167 444174628 347455264 129629856 776984023 493212130 115823478 892837373 361373390 613308021 247430818 142368741 860927126 43562291 151982738 218278694 669174449 19992739 708506526 122014010 462359430 153503341 77782910 986216255 381266792 760228966 600006236 999961339 388799888 808777101 480221125 55283165 105909536 400971519 364359594 97785853 992958497 47708427 748865389 366697756 983334530 356719137 201724622 569642398 977596190 61385184 511617792 978874774 730394806 379297288 235137943 928249273 280696053 270043528 30428044 757177446 996835176 600257906 485279304 617484453 830301324 211941374 199179929 400532260 868699329 81362835 636342193 769726269 237825873 187517371 980368944 705826285 415877996 436792873 751709466 782242524 340047660 743390137 296707804 306830168 346846867 473160556 889912396 318766427 78581382 481965936 525814694 336861313 762764253 500459543 358343571 410800402 746657868 47650013 255620635 22084865 796466552 646344035 627504567 432419040 311039464 788718198 323545155 862887665 647752205 769817354 525767171 720402970 100459329 468613946 665759910 342356717 521392837 719615304 60128832 993950878 427357891 61084321 604587088 229713423 537296201 537799894 376261819 84055234 948923732 591967396 784564941 155638255 529675718 244507884 949039674 101450084 803993189 811998140 627824675 496509607 788886757 41829193 258643466 832501724 949400539 758610663 139908319 309344980 295597005 572058145 114846708 892978181 297279522 890800541 329012233 51969421 165850157 463996464 861367874 19353654 389682722 738420695 842602285 455047279 176377387 124900019 495121855 46196045 231869769 825289743 897252946 229287825 167394419 936082271 232096176 40909984 788660093 313067839 34591750 379739021 662205485 773078642 533244390 162809868 656396585 500080354 796038993 399176577 170352388 427137188 734383272 742432748 998288697 214104306 643128763 755776768 337660709 91186481 323612350 775389462 384872723 374003179 554214737 566253612 523863863 224949200 885487478 217322727 875629732 517865665 102464156 277588888 696308322 772207295 538559127 393536824 201995351 436966643 301874853 499820133 806455381 862892723 383825517 432637540 366362898 643915899 191726328 934757414 760079158 81814250 112523710 171539778 924366917 251491790 660982173 422238969 607918001 327002396 303746520 138331952 405753810 373126639 378150176 823738233 798318831 309356933 136067207 69743111 948319787 521588303 265554056 863811771 192172186 767793372 41885199 91233822 604122677 437048557 610892642 4337759 742816989 788097630 839767869 524700242 500901725 864146497 678745016 619115642 803660386 678200770 798722906 604031484 857870216 680700229 526807570 98797992 323804752 673789766 436374580 801949431 618473767 332377972 823780730 283803908 395221590 330119073 744212496 339706779 157546268 360708297 45667708 130921000 49549979 932767244 961222587 200471234 259973336 497961402 682246179 474650413 894052297 69937733 657471613 920260043 846907460 70741318 521951221 308408492 548069643 216143490 64298526 219055752 853090758 636824805 392633340 923869632 241975306 232415103 2267887 848396123 113043533 935200398 760292806 809370116 424065776 576519798 788868021 439671063 562032958 603175105 139900250 150888339 818026598 801194784 351817659 38294299 28146822 492580978 273300803 797357315 635521435 157281721 691266250 262162238 101792398 667696926 325672588 502811503 475331122 13021944 5355308 206210012 986269248 830790337 459927740 132929141 334305883 988626970 158484399 568072143 527413000 773400528 494192609 180630570 976597693 724015830 820223385 528497774 869466318 246442824 913853058 12482858 872726657 62043497 245013682 64961430 930386940 796040868 403343273 72192144 331338579 869034637 244771146 535154593 714369917 850599388 229416163 246026231 927290205 232770425 239829542 48243558 316143803 120644459 995137591 5962613 364776774 406823910 213060757 476879941 977718684 58223179 89966639 589094820 290091071 705333268 751746138 757040656 104247441 445540340 640825302 7723428 409636329 877127355 662497733 695685415 635829374 586900579 267193526 944694539 480585333 948159760 363117471 45125731 163398354 720855054 371055832 116642289 802366601 970787539 707173679 461757725 969504115 269988341 134842569 952014066 722844496 958061114 825122368 355437356 45253325 274109838 208589201 218450731 620092023 484976131 416057630 367654641 634233288 826130131 830077624 490351664 591325219 254167394 619200659 301016384 468276689 821122623 999795275 747408928 284022529 591787545 512359911 20048246 7543503 953918667 960594130 293539219 433959482 564629082 819951845 598954860 13697326 612797938 159794011 30575523 710338939 476899044 499650007 474695549 846980055 143693230 518834537 258422250 425834728 521170672 306109319 501075073 380021300 357529721 729251596 156189315 130481456 458525752 912229694 140675026 350876723 524921676 72946378 393519620 616214906 973757174 59969225 56976206 457660470 652518818 661492144 392739726 786400116 600846307 327010412 19910474 737629997 609699701 764702025 343009461 238262597 558722617 438855416 264913572 506862208 527228220 992236955 1719702 68375445 751721906 882597813 324695219 373603867 431572983 321713459 447578826 12102034 930962571 381396073 584727890 662223973 844678939 351125784 261179243 906502373 983269755 160627555 745589468 946208840 82158244 871821527 225718546 710583222 392419260 286350186 26719784 761667379 429806348 973801081 472008669 991596208 14413065 802729928 467682965 272977162 141405517 365614727 787771488 187817215 237970330 150720073 854209528 220586554 800472799 957596172 987002811 134395467 270732332 389091638 240032943 132598701 95593919 465484947 530958725 560720575 11878905 73127768 554405265 511866571 479697509 285908517 631833046 191739138 922042552 683870203 68712443 957362049 390771661 572495178 589064523 603284546 212637860 769980136 547360706 493131318 337796463 847905040 748659967 61750825 451830394 893933673 138115908 824716245 312136005 315533566 442594951 723769052 672153968 401783623 158454108 514592715 745935817 276352286 940177922 766641932 829615938 630090444 443240801 918247933 29427190 384725501 361923080 375779804 151892010 142887621 466649390 47529688 871949127 29937826 150102451 291747068 498359520 835567993 368815900 471898948 159738292 542358167 590917277 879664275 587483298 187906995 794979849 695704239 624887224 773959145 834495839 4822346 133849895 745355964 832675146 313141504 642182221 129931550 867899670 210135118 250807977 509723745 560420028 420307105 722868970 36867907 784032346 812612934 979016163 613078761 814044344 55087229 455336335 751834590 431016004 253577310 313157135 703467292 281486873 464865786 849505456 284798721 612625137 142592065 800127206 316864075 946867767 11421448 422723915 296016172 352785144 911078422 513888418 344614458 140161260 512645134 955064024 540075377 99423605 358583176 328774657 877346100 876748951 369168888 751381330 211197783 724823553 63132354 110544438 328864775 308661770 667527212 373833013 99252455 820245684 206761581 984967937 521152504 453622437 185825945 212245364 390977706 602015788 195946418 45043865 109974739 969118785 405286820 337160082 435396014 944569216 536407615 404462007 33452770 349740340 961886268 569132930 372954491 683268173 202196538 519990168 657807086 650996830 95823814 692019138 329441819 369508010 13113424 661513205 765331523 551315734 807536689 468784458 357749782 811960627 665291177 621108998 763919018 639231287 784464864 68239764 314447483 335186689 74489837 992130953 112217708 874453272 727717316 55842460 71845583 128628653 744449866 672502965 358701141 544344983 263698759 19294427 902705437 102947667 40120424 553532994 337727405 198081035 959268428 993428809 556649457 357892747 834626163 586820721 134766142 646805582 325653316 289048418 811200596 626563698 960559378 793788404 551887956 559376060 996525847 898358560 148174800 964525726 127618672 514964490 411197112 787202095 476724525 195785468 422170735 143451949 645564729 620204652 335149236 995079169 378554736 146688499 588157115 105468087 227662484 763084629 107875346 302147592 499435085 630589306 822908348 541985879 908956204 475614075 602367260 427648676 857195181 19474319 5747457 839607716 79161389 32326171 876314781 490938026 476445177 965130923 849581710 436688059 200578366 651470577 564816860 45668216 353859610 149572550 783958770 995814964 556910732 90668595 380977831 794074342 644604285 850971741 798550325 587129132 879129534 472694429 154222403 318140751 517413130 581023848 883260638 416584507 309096192 700002150 251366527 998197131 240837674 37964387 154988028 383022203 788630267 759729230 741875105 816698613 283813579 576585029 792617241 419390341 285109466 595708810 740503671 161922407 255514451 517448330 597898043 144764789 305813575 177946582 413159241 639448379 74760365 231000108 474619373 816880100 654719850 819657837 583871711 473461066 699182149 262076581 330072379 792138476 875274479 977318151 941205124 770499313 926151170 808319214 939834284 901372712 568718334 487770591 726535175 135888904 16016974 611362434 588927055 730370992 582262341 878519725 791406507 384563945 838218777 67487578 598341801 869465633 75934187 849860527 583345724 32331886 513209541 563268595 947461318 544196754 591046552 289937819 655120649 196046834 456503358 314458434 903612720 342963615 969089658 473042349 640660949 581482828 503787251 881460421 269773553 688822879 874334778 292406942 109748973 753205466 300217289 455513715 368646034 105395311 957858561 190209961 185330971 412547957 967941162 469227209 195140897 594427881 559992696 660150409 343708073 317294196 825788930 674329281 873561122 409419623 581855949 191046517 898505313 11141044 885612989 198441936 925954978 87252990 153612964 114982185 430784397 975454095 505454657 808099830 595495212 226559824 376403756 274880223 356787190 21926620 258417911 577047979 884996809 55520114 990646542 823694929 255413992 528380152 61253582 43671528 7910146 299798273 373300084 240397751 649492525 555349439 623845677 747716649 958865635 423791890 257633799 678241743 918055946 225769861 385696252 686648421 944521203 359657285 882365168 696287695 86138192 340020009 147330986 328395030 576720958 317931439 977888476 831505267 975259974 771318273 133342750 582244154 862177361 26536173 127748338 985528053 440025525 587850731 657956802 424005706 376065840 439975448 857617119 974571279 842265833 956997951 466359683 442176060 877915240 546034890 585002186 645433593 868087721 646370517 290915013 27794830 496860677 768287007 180844384 677319281 924855619 118894091 644830582 880544056 415029903 873658285 172917704 419413420 830237565 933874361 233618945 344672951 139978509 808397200 137870766 865870696 590150821 162072377 692717388 842370559 153001742 915206754 597481277 20508894 447519616 451405412 19208389 906119056 93878937 136875070 716804891 409430472 682542429 864031128 129733716 879705184 38682169 5968319 689172597 733190239 9856514 395928235 163827813 25293293 825997049 196400123 880123125 520399196 667683262 949381623 867122143 904743468 356076128 964700302 730590915 393906687 113281366 844752984 350409773 841517469 884900988 203994002 879175307 455798266 103467543 493439783 601734969 876101426 264436181 119177634 252877686 88503690 784970696 264527423 656745327 710102127 342970738 822061529 906706736 559522669 702921399 5429750 292327861 424271173 98479842 713373133 987273696 100626136 499323818 417542957 920881528 378598963 31862828 970591640 429409842 139839879 295939567 634503481 643101860 221325360 211346396 258203610 396939086 175961010 731375437 610777077 518694814 919352505 150233851 252839 793989346 183022103 386832910 508852154 921279316 16542662 589602066 51787421 875514645 677727725 60479229 579709284 721108268 673535442 919785004 473066195 966386321 694003950 366700900 922248268 983236373 648252889 64324307 496537314 124031102 298129237 363333391 168002636 431233398 740600654 768983057 727863273 353834123 969040347 897373763 963978177 30559032 223284789 784753009 654167422 546147551 120555963 364119502 180679039 423715273 782603007 351207163 555003325 668456996 533315758 624467192 413533923 967532812 539868330 241593657 325162814 787711876 317852913 717187470 124776392 852535667 124778672 269553975 227734303 188249770 668890938 308504023 172086406 948061157 788718859 89833084 990123764 642338240 523152068 735527582 829687803 209805256 733815348 232915734 840757978 753201518 981515085 715064108 114486141 705661197 916678950 280735117 453667180 404692705 702087945 919910733 967383782 886525975 787615578 811150058 116905413 312443328 825010356 956139850 459969682 558619604 702708428 275997369 77830012 449441335 593911689 628234220 794866522 449802673 389449205 63839491 597569706 898015985 224026947 426951807 306083993 200887697 582910413 880499280 144932847 174090004 149644824 861322955 481957926 795284963 476471248 340001708 478105694 756784716 647107272 306323739 767794783 540276110 96289273 334067875 262538134 73208518 87776904 410981944 413047835 245367295 676458689 960427322 19793839 909861160 124477716 292779374 340064951 358540060 955140383 14034945 369960770 364566172 563607205 843980935 705399817 993824083 740090001 389417471 159667051 40116433 949801975 701115850 736962158 550221196 629492496 972220091 100535234 29836779 369208385 897730053 300389567 942419763 958482196 482306627 909022309 157901975 385886527 278304894 295011926 453978158 921058203 829996833 771661288 659737597 160555819 114689792 160721678 736336106 377429020 728854109 166702953 774730696 869994687 947479000 930520385 892215890 821040785 938587523 740531331 966796836 155026740 563997646 100831175 53881805 706448245 282859674 302102858 282419643 809147460 13048362 552337915 22680390 144441280 8020527 438850656 596086195 464075309 885294778 45075895 670778153 426445040 581833035 940820699 616021944 912958882 762445765 419694932 159912541 139697917 129083766 505117267 327309303 279229410 338078230 306852783 871230543 300848735 619094719 747219687 776306967 4104359 218002166 773834783 676789478 585264659 297966509 1709354 929455681 411852838 843991603 116523136 103006350 112479120 525407559 311108670 118748448 109013793 971251729 684615467 856962097 483708115 239619354 531587513 166689246 644939979 45453661 859075834 159167799 630929493 294796082 713766834 673779494 395861216 248707937 893748551 597183882 415700238 366800918 942373576 941295651 710161309 444591080 212560877 913222553 208832122 720129746 692508180 348034685 372041656 905188154 599746884 600143432 900356756 535273711 25560366 95220316 138080879 861358626 705812521 483638532 79845332 831745141 589143602 853472881 898467702 279833067 729677298 978234807 48820532 67592177 914564536 817208284 510691599 900197469 295672444 338628299 281623087 397326954 809617116 143573073 924633068 477105602 396106785 257102633 317581502 481423727 760208183 981794802 269560653 245713126 252923321 369905211 52435293 990754564 787016420 807607150 540402918 509597458 135201950 489751531 674658564 855238072 42129530 941141996 965105913 880413199 572065966 910959779 94666542 99344531 105057046 502555419 207374905 549140521 925981759 521271118 422313941 681621791 350078547 710006046 210688997 24785448 364445228 79795540 468084594 204098916 465716297 933033634 167499698 886970199 597846479 323723426 908972288 616158191 508031376 243812053 701799903 225731969 877648131 558828960 432215032 958601673 989059397 721245019 832440097 301679855 175915552 719992634 2226260 22456445 500814593 750121057 644471990 245671528 320156160 578744535 351764625 15208466 204459743 800842895 978937431 791551805 412796929 893374050 921364388 394670356 463912310 730103059 751357503 956280112 867291128 976412230 312804108 455466126 12498405 601051537 964431140 726729873 690206275 8614764 444133568 148025353 652990402 757279289 969733188 38924841 248244153 153374015 366946106 61870479 93535017 698696112 680282967 132559679 122080694 992607657 902052213 142229928 358761137 5233444 412290200 974159262 149521938 433217811 533596906 239042912 924557689 48370239 483965120 659117970 754282281 928218726 986249620 975697474 611770645 600845097 232861962 442909670 642680277 408660750 333449199 297777240 920004517 409027210 799563057 561405408 957645676 893965557 998067953 652914218 740023230 909724561 455777133 462052172 386298318 43358341 623019541 334278339 224815228 89624547 937363576 520258676 548839248 680164006 955379541 961478061 639975291 873115564 864629645 255267875 244229841 267229893 952276268 433107184 748409555 312070041 230169703 277219233 260338598 17554121 534769301 394002202 708797213 370390225 293015869 297242296 627768237 688910108 97669897 471342899 423641973 993875196 191643338 937164722 782445373 694981292 690450559 705261765 238369650 340788808 849046602 329715036 280314673 353725662 294223220 725806553 615066930 884775262 987124085 729945855 592484579 389977505 8391909 890688251 843574607 991891305 800023175 498421346 92358701 244883804 601734727 57401139 221610719 105868302 962090550 719421904 986383720 75623160 228934037 186071563 319182207 689893245 788903360 945139222 444553075 264352227 835361609 664417167 79534919 792674395 78706910 456882299 17047457 122233344 269283423 277376585 975123666 509710295 353318347 481815243 291539921 403167681 815323214 920310591 260413242 879153558 579956030 876215116 946299993 435717133 370194195 766214144 835764251 31482821 769116275 192775375 345730070 433612362 181871399 498148499 179232141 307456270 284697891 755647638 111680610 839406696 612984707 81297285 849906729 179861147 726139273 6660720 489339671 260249294 274196898 422871514 43721482 37857301 628483166 701757096 78385292 234362470 793951100 138195747 525841354 404319653 719629535 836709893 679256991 972694682 478199182 660270439 70394500 623002102 176861891 600286672 395855782 819028309 334365395 504440622 945015249 83008052 933093443 411130326 216971903 658790657 547463358 618716549 707418315 963513864 570785306 596494944 139421825 833416327 60364624 119769588 391429900 719873434 547233669 140359224 194660998 975516496 373250307 635948168 413847727 989426071 807697467 345253033 26114028 238774088 960297675 697691593 980956749 654880550 847976054 887421306 923383433 104962264 727693862 782651071 988660478 102097906 55374064 749385977 374894777 682547437 40034064 68156662 163690593 636792871 322498278 185241581 288273235 336910060 484899326 789675129 833969805 339759724 119900174 49452959 433189812 156929731 790854127 90965967 38201371 508024303 726959269 309740509 238598071 942199513 528163930 588518406 358860326 173999189 684741986 518912751 867174322 517227547 165366585 55032485 240224840 254620619 767428995 709505950 360582787 789305326 20268806 120403382 785944220 95267579 126516924 480952628 156192640 360300610 222359743 490488261 248599994 555163404 825172303 848043391 816182918 67579263 24255446 539236827 911408318 441236908 291652078 126522050 123818991 822183054 309806156 804405122 300558658 888848644 274581465 37726670 687322770 672714457 656330394 647010501 864979295 309763516 769638598 94221289 981062092 701402187 881536951 466167339 931244463 298256129 125098737 24089821 934355321 803964748 148712222 645995712 884519242 24113787 575165717 658587894 967490540 331885256 386889931 404196878 494723535 453983829 835797096 916419837 787987462 498084392 212635958 218544159 21249362 998583607 770054825 879957562 864240413 540204374 816002907 427786109 586384498 493590092 96874510 779550330 778640652 568180414 514382512 606120754 278707272 992461120 860187476 318771720 582524462 730223433 461798709 25089225 608623724 950280251 48379317 865066410 327931740 738369630 161904479 427246152 742584570 930076647 577212135 344457900 340487665 939729386 788082729 347127359 679349386 350459758 329043750 118983897 106244037 533161561 579862286 452144053 571551801 260177018 241199918 888252537 766708531 914773649 732127239 892426800 781061535 955258681 945300536 992314967 294968596 943542780 290702737 46120898 566772948 53105741 128490495 449821115 647511748 257539207 716591265 431010543 714030711 826247399 692009658 507556467 424154142 916189849 750635700 33055426 563243420 996158637 252317477 50389703 44130681 154738974 644572613 284347593 450071523 140564939 142083705 486822785 562818481 30336382 682475084 595158793 824058720 633214186 188138609 374283752 854498332 661907878 810978117 582208015 729368242 384021813 684367175 346200013 356154011 799823871 505554470 69538019 650270963 369984598 810951092 521340786 500866947 863812466 339996908 514850062 910277560 792728180 107200757 692893608 106870700 27239273 297771026 389927582 313363232 317376062 546741950 99598772 293139575 292155342 361684626 374980634 199876035 709735131 746984270 118046565 620854713 979943180 698935778 647270030 683905210 52338164 148184414 883318527 226554317 743054349 818317312 680638850 308316064 812387255 656642089 881491280 298272652 453729337 116055909 284652290 359332497 608812232 842526055 242786209 20914259 726617981 434097418 974261143 483926564 168210007 311973712 543012794 668066298 618860097 906074729 781641802 273124724 861273610 943470756 934241768 429363931 877342063 53069181 895476391 151991324 864147469 816374936 295751413 738864592 375919216 165167808 31455925 740729908 54370568 287494377 655562282 719421490 2277169 181675309 233819392 874019928 369706025 694658511 265966928 875864543 21948442 813945915 69838485 211945890 841410839 12762628 703874227 888737066 231960598 708841444 435930870 122816938 234214394 65628355 163354395 816478452 157577870 946664102 514845238 690244234 988702081 30464452 441984465 546637973 960987500 357908345 501853913 544624351 39872210 942473543 939898019 728694757 371208474 809849814 838579180 942016960 580589464 3904511 841752025 178812223 999449733 662005177 475284214 67539147 951011839 391271206 560042556 989101949 881539858 643022232 620432903 469169172 60291246 443901565 150827801 448329720 492389038 507702384 961403809 992309817 190423761 738981431 994535989 136180877 300938178 480568252 913691347 741952082 429768721 26635539 962934750 782510994 273938232 250844021 111788326 420813821 134221465 570261062 751605470 9677798 674711164 572225042 249502885 687785806 226916627 464979342 933047932 118763230 227823478 412173459 286197207 953462501 633256102 530284836 929516166 406021209 21162640 768969837 208041416 178762201 609686272 585091008 586703683 404456107 640237749 246399388 819924482 613707715 314583627 211084448 871502717 822177971 758576972 775788184 416690832 422662333 781237549 553688442 783246464 221738952 112858693 839840862 448368123 787178851 780220115 879158922 471976469 215109575 195804164 57074792 322403148 806670543 469922023 920369291 462111877 235687687 886453622 140877485 959253007 720546457 11895186 560750260 687977628 893969506 11316228 963863977 345002571 823584988 906950526 413836480 16821155 210597173 873133977 459613782 658728077 758743605 946353622 824672492 992351586 865966934 583743647 490479151 191515102 48809912 105038402 811365870 757079590 415437091 453260798 250161962 177470921 974982404 536291057 774300930 883665080 422538098 121976098 483208132 754526804 662011441 982773894 161151971 352650338 971367330 276235253 833343736 770442766 613556185 941435950 711775944 470050542 343102857 117060830 990004286 37774846 908088597 906217878 127335532 243239079 736034691 738574540 280618897 986426288 45941121 955219173 681754636 594634324 399381094 781685031 311372651 937252652 771070260 30150340 73523038 899724608 751227795 396582870 727713476 171101951 454443214 240664670 444243103 898087736 990675678 393239878 629460761 543966254 385482594 55660897 681178758 175267973 75444901 194000482 692819043 287805510 146636430 404203504 456518734 765311980 786604990 126150289 685135130 485086547 889600621 166974648 430376372 670097599 632949126 966797758 109802043 506083293 550919062 358064356 873180399 312025283 990969814 612704341 635247423 588807917 22195492 466313248 687375033 495047744 822888713 60659007 108674588 276985356 127635120 636841105 103934028 622134788 867366902 938034146 484556116 652992840 482978391 454198501 302079844 204541275 511555579 406367791 823849947 141243176 117969585 47289411 849898555 462189576 339416817 971606667 974110509 500133561 330888408 219911766 250392966 124075100 69132079 126985185 894194501 179602817 297548900 231898441 800075911 826627868 426371986 861380506 702627480 320219533 119850869 831038918 349270257 515763093 70099314 248329125 161695782 675397988 455812254 823888630 994361089 182151055 94114476 348078692 912551270 129090579 62454527 16193155 339368304 953374548 712421273 42437320 896233557 236747554 967103020 804658329 667734393 228342705 189805841 500324408 337923944 83191454 460781636 890167774 53334742 375411182 116410991 289674912 6846365 782954254 218311135 846420863 257537472 252860370 91412876 596492390 155355757 13829500 441429526 316591398 256313075 617390508 991672004 985805944 506728401 409631093 496124548 925693180 477966246 440051269 653006065 184289342 433985090 283900670 254158660 55166893 922791319 545614565 206935402 560656802 435039421 108103846 974852849 160321632 802556154 971198295 464793614 503070479 766866107 814678900 191406752 308953280 733423249 887052772 668607283 709562222 917965879 534372594 960240624 569320697 574930831 416840023 94378932 640681000 803260839 45560109 38290682 822135218 537875888 718300410 986494698 71153450 740822024 153881260 794198102 806202390 771915056 2061465 270077618 469124317 924433108 236475515 569490207 620082128 739050696 948012153 623324003 228367914 898496006 28793377 929393902 584035083 487951280 196110184 460310488 134886011 755844118 689083819 193667552 120913005 44358567 982955695 960979820 971004347 473166847 180258722 339052685 375253796 554599136 737804312 675579385 879742546 353419576 502903054 403760143 115647193 965762586 87166956 817397718 663353645 696461761 17076607 779940353 981294515 554738830 773145334 888564704 864567732 802328079 270071542 776724090 894451808 288508918 428181634 134474609 718494161 317445407 601797636 332427287 138633225 489138826 820712535 215525986 213044718 281610344 83002802 516703217 119196245 826458376 32388799 25016588 508513015 356357607 983222153 57961379 445116275 245130919 23106181 65637452 572995154 325299218 965162898 252413254 909267976 450730273 671832819 185987448 648626669 958087656 394337878 847140723 120500035 701348529 813094355 61551726 701443632 590679776 301079780 621972807 429323465 151537167 825830766 139874180 477993478 224344310 709811907 369245784 890224328 344124024 155369617 379253145 538411225 210779296 638260731 305994436 328787432 971416997 67569282 554917378 102445201 50046172 395007768 844482339 889640275 809510351 838133007 236953245 521352089 412988709 913470245 838197391 657061044 405822385 834040958 526364097 281084636 160453489 509348778 310560928 864077877 785093252 434566044 365209673 669729733 156967482 197646514 519254389 769058429 984518660 408839600 546370447 716021306 84468349 747189958 55775140 670778555 869679209 371720328 995750764 291413672 972402611 421974259 486324808 535620756 156770925 403124844 954683965 978990585 567559637 833409729 363534587 42641463 802699085 559603237 69870298 936095127 129712991 670797881 949086680 944398920 930973375 754606334 189442204 856173931 827465542 750414820 228464505 756263417 51627773 811006657 827835232 605110239 561027850 988386001 753173749 56828140 458329284 367527865 443435901 241298909 344149668 4428420 634006504 2427727 86681421 948412077 517209550 82640079 580878986 94199053 183651951 914141645 46498898 840755434 869203886 14012065 104444861 166395633 626854687 509812620 894800909 518406201 199893238 208418234 700604334 335735612 399287060 410849850 332080438 805501154 123315198 101655302 300497502 923377016 125849576 549336063 724771081 580375474 111356325 859087855 371120197 65388465 983334838 845773188 691490113 540058101 598062914 339182684 284067419 379571309 101340951 714933751 484704276 309693807 147476143 581505212 99040797 476925111 221525796 321810686 370133059 747954284 99911748 594171895 921288578 113085466 50055034 266524357 925330176 892096953 423326942 226028404 350110470 984707744 325741105 222515188 80169482 90698396 387426777 422390561 248474533 160521428 467403746 291233720 295780760 236800738 498293000 367670631 70355157 704573888 569890216 838665145 416338537 544056532 559645389 238854445 135507600 985731818 58502431 914662946 502883760 17844539 554404347 803441121 549567828 236447840 726080095 668840858 341124397 526996323 575415792 270724971 146606104 848484524 133762049 580461905 412100889 797513492 553770631 933066804 393568343 207837399 453388064 811519722 608484392 499561627 289666582 769276203 886256139 445970026 514768214 623080597 186794908 255052988 722801016 677181365 391693228 829500273 482231998 404202744 714649901 158332616 492875275 427942330 408728631 15357043 254183921 604552510 496768784 877050501 881192871 167428523 20967717 603098237 95132169 20267283 329758724 252684863 315599523 458336879 649355886 128294167 535976097 664819871 870574915 485874876 545697754 297619820 944573070 990693965 495573969 831440523 674776197 228830029 709747880 593067154 635320960 995899558 292375093 952765443 673962500 338587573 827441897 314041416 528173501 203096881 985756389 912118960 221704827 983048768 391316720 133372281 587075644 809133939 54497660 420599486 669273891 973182397 776536991 205675917 239959163 904862585 16491029 919093460 336606649 116992878 90062921 549642352 973465971 563786186 425961288 355165215 860203635 404138786 548246221 868113034 401173662 365628276 832628274 810691654 685569034 756546851 284743554 882739912 954030068 125699582 309032042 54453620 87450558 650451000 948037957 232181394 856508914 877027698 895468556 409868885 157116741 255710639 32109 763241941 966572433 140349021 371699121 904512016 541843675 676235598 54617044 949361397 276395082 930491333 361980530 272713298 754550071 994611555 550281431 13689056 620920857 189034807 147665901 405391682 277520277 868672180 688261453 51844352 540064116 143881402 325590583 795014541 874299822 951958159 649587345 750912830 859351386 262406877 298052589 419745368 700168125 397065402 980886655 298914820 239788866 783318692 146381351 577282901 154955389 559643011 573252972 165999167 731719974 590297502 97724545 565396135 348430116 196605871 914395703 615821651 716363137 725320146 576887570 938877689 785850224 944935565 705403961 349075246 477664076 778959306 980016249 282797945 718775706 950744037 970682187 322288188 774327811 588999827 48365517 903944652 200426076 483711998 372451269 120106851 105668511 324462004 938192038 570124833 944581358 777828776 758956677 273641997 190885528 684269369 399297313 356663581 940480781 808790568 449556707 754239526 254213099 150309289 483620824 367025644 956743923 443916109 755613369 117296152 231161103 505253904 97881060 229888059 199893847 683087195 424664673 402150093 555809793 417547769 362509534 186016816 311370612 819450143 821700789 315119534 930924345 681743724 643420899 467205750 105069317 687614948 841772302 478482596 788703154 205453045 779910794 212671545 916330564 887453043 92016970 734287901 724659430 338168731 555093742 77755680 284641259 459754517 867015614 361455358 952338126 801232618 478692779 732662103 766545714 679799956 729174342 845243060 197471717 474667758 496552151 471822216 156046295 950338621 330397503 61439785 921733925 78451758 228492558 44786906 237367825 414302422 837519230 456232134 366460935 603461556 978866026 645164797 994889883 263258797 222069343 874110582 727026310 827376908 511294345 277847573 856125101 618354313 94052541 682815395 15754525 80184383 781971836 707389135 537947140 466571701 732657137 116159541 356451010 217993174 842936804 158690389 204501209 934516218 530167252 199657111 899306738 974591708 859295194 651931214 417509861 102732196 219346114 22437300 349652392 923603676 613057785 112238824 564544098 962989436 933983637 446225142 746424157 114694623 345607510 853034701 822618635 747766475 347233700 590978631 242807561 814281839 952957839 557949730 360757019 853543772 343249101 893264399 288699944 222279061 535561916 208381337 801846857 919758715 781639527 819651896 153001652 708920538 757912187 504234579 560952529 968360940 94333007 273454897 107750185 818348109 136294625 253974016 119569516 626212352 353044698 624344542 197230202 898091637 531306123 290751945 856000342 313294717 634299113 208481197 51229739 752107609 909808787 472430934 677230664 29641390 5309646 655241604 856607789 578771848 20818576 881187540 318982779 944881245 383491434 67521232 315656446 672480776 760255135 490953963 665302952 255492563 173106708 596695421 478940569 654951529 595625305 547039431 390114829 683248348 13509798 378265585 764002676 366300076 892546009 878873612 531179617 114327488 576867704 442628887 53992078 660992354 669947319 578233581 273556447 16795466 348445032 904946265 697974623 495520661 582446862 220832781 161364544 778315972 622028241 417323425 288906463 337416395 823667834 674305689 540372414 592408569 216324230 759840091 750579851 809121295 118655250 817547834 933821717 942960947 23516646 564103790 545372250 628930284 169013872 349124891 851161469 9799480 927715531 72089670 21262024 491579246 370533043 546842085 676098737 859668823 991475854 664858316 146233553 550013980 256763501 115950530 955897578 168241492 506598153 110876781 515092970 659432960 883313855 90696285 817196773 417259905 279478934 518044685 364859921 609199271 428237119 411532767 545318359 101549218 898205198 964138779 825769918 933279254 408282118 749825267 53224828 512540164 756588238 273033087 166028269 47923931 474843571 807015104 775415313 319914864 519953582 542982562 715617300 486232574 805546332 99727095 491223629 119112494 837121032 595377778 264687154 725441292 955530908 73994842 617245035 336602636 779421621 390800727 336170686 821368844 897290639 878419895 248646946 149592914 471297296 982704183 867830451 83414921 150166220 750673433 749412787 436390088 493096951 219112835 416293259 841511565 425498479 237183111 160998352 727743164 813724861 403280927 149456702 874411170 783119 282338602 312915641 478773749 405964862 86315383 752224329 629926866 159873992 869273266 5377573 652023231 315074006 748331895 542079908 347003558 501625910 126531652 70965324 399414241 358457185 644819591 795589834 974715435 818899824 530882956 501682671 826743462 210178866 544655760 912307125 760258023 113212690 35769523 901488193 786396892 116175403 712648702 598809822 793020388 223671095 387621988 528110335 381180360 317861790 137548221 337834305 660692144 758100596 195844552 435520611 413279542 395619692 268023601 244432469 137138516 473623014 263961224 640094503 190458224 169669101 52340552 541325333 120726360 477568298 421477587 733582469 902957376 773850617 142322029 600500988 452035271 892867669 500052812 275635252 963890161 98741994 619258248 641286150 469010987 94241796 920183587 542112370 117231435 254549149 287894530 975050408 685361294 312086353 861256189 606966777 883590040 787140969 826335689 260335841 961507705 561863635 352864263 259506688 82472356 55421481 900909634 490752294 469890808 961012134 860995563 407340612 57928376 967350326 113838427 602784886 15511442 672593255 655770835 625587455 384214686 705552239 846683003 61865033 194612821 81545259 521400422 647262950 84180383 996201511 88217487 219222679 793604808 962170254 964261586 346970424 672181382 861533499 37677311 583088603 489906934 115307437 56758976 836837809 706190495 786059270 158608306 204704529 581636459 69899546 32469337 213891202 943650222 904747107 998268954 706549170 915033900 253865209 109233735 993897582 835526149 409594535 129900314 784461750 524782534 121768156 62400437 200782508 966138470 376152497 91737119 933116827 242592580 178665698 154774605 168094453 279908898 109671129 930471698 587508310 600836143 49864611 858999606 951980930 909933823 773124601 298008670 811610471 352344464 96126009 698402847 378122000 719417672 64510314 457401069 559055041 118160626 104523327 435048237 88504025 788206022 286225929 60327465 411046628 48604256 122453965 154311950 115710101 585788868 626371885 842542073 189918918 882375267 447727485 961878762 620320895 57525006 292143795 473922250 814297060 265839620 522193003 166413420 694790991 725546986 856007921 679419270 181657143 666546382 796406321 391080892 741626945 356810020 691932866 363729815 509988921 579901643 790029542 805969799 554641166 798062598 290511748 702351077 804735712 823090309 613408553 309670133 758725619 475975258 902994191 894798301 299344814 817903367 860822545 316001199 938764198 37450346 40078264 980713830 897280150 997687767 25670454 647891939 571745635 214734593 346546273 447785197 950284310 572701444 658201271 595086390 600939234 176648038 811760734 370851416 896748839 920407316 418714921 771469268 962365538 267132775 90514317 852404245 895260480 243279639 608704425 158647402 992802456 650632011 226874949 801575180 369357921 657340559 6617038 293580319 949993151 568094683 495267681 565041833 348870910 106264971 162749878 148152733 28126867 747031141 946670138 683516627 771260951 474617493 476315643 362895884 997016141 339988657 955410605 579474421 225719070 87189684 757488563 987748122 695636645 617661190 715958545 290113784 84757526 749504886 909890169 413149936 33348311 723837493 136177731 597192010 912216434 106744035 668997226 638338616 590182557 399251330 820009368 364528339 469885488 61843842 30342686 214575131 286983216 866522297 145863920 50439675 845010888 914654307 509438127 282190402 404805707 659383332 67411617 112512428 270397492 266293002 883238839 500814042 466187817 178317964 759654790 180007763 776073712 397897607 905780560 871331466 347538305 49264445 716771066 780057304 449437173 967843935 614670357 636135038 257535631 548990465 450836692 951213735 141237179 90344095 480939293 347480673 469653005 286500127 638040435 466010535 407600446 497012174 196683270 336591960 964346677 536280930 546948012 822251331 98202361 253139448 716988648 328998677 310639039 256447510 279991004 62445927 530182627 828795305 61007965 104888763 83152872 174301444 170983646 689918072 79837561 346309097 309700478 762828276 593206888 332102263 891280392 527292774 476549042 181175872 329554408 387450350 627693178 296937783 642290999 180353944 938969868 904521915 327717299 898500690 984973272 585031822 315690949 994269432 461139069 906317282 680836472 393096779 692195005 861103176 162075528 594739187 487612288 721497280 170686034 907794816 901136863 484552879 485055713 647467885 243454995 384891617 666430940 926146588 724259453 536727178 501217954 350282965 92863657 848637002 563110449 853575882 573553740 713013542 351674924 941486099 350692929 397756811 621189095 792870579 553426827 352947789 195946418 797236627 927917141 671217064 277874202 923109760 989084913 287325252 191820408 378341434 451675354 674960431 545014885 420319583 981728183 802958300 399786096 310926712 709657169 583671081 444127968 364620534 176034715 661919323 518674582 776662325 160483247 991382817 476854310 255485296 899720915 388896653 587667653 308457944 442065521 916277535 395052882 406913145 389636636 565206971 513975126 918679118 871772815 66679981 581167103 151776824 213669551 785408428 305661731 503397377 916813955 364535255 229530178 510099801 927040578 824376494 171522949 113734362 856735049 606938405 497300666 715699463 287398167 454064780 808136280 702176580 275667545 960391075 16115838 722371817 907975649 530816908 16986101 931371561 2113452 135566553 78646570 506169129 358856158 783063163 657590071 78596336 657912257 421400787 418698454 945408626 806305991 8871586 781462900 399939465 625744781 40326168 477277727 319671280 737703124 880865739 285821069 612235351 880354443 10728884 214508572 88037196 330214083 172532799 512761046 627833928 378362039 336059698 10357865 852599982 428074440 314223817 404300076 363812550 148117640 224310941 464007454 276146371 209045413 823158963 914933993 212955069 322574587 854790778 855286999 933047474 755298956 219616710 294577125 284116881 849225606 46094294 375182508 302439464 729808189 782236750 261987963 236595505 83934760 843884093 481430075 301492557 265041647 751066388 445324164 80161797 972929880 210310581 615752089 314787018 392455005 688893283 726978653 40406007 356038162 575487690 832253792 314652619 703838912 268368128 545753308 384711025 419016654 357538951 13027504 316813307 684483027 342076 151485792 495639391 609377927 632507507 630011167 304913792 370587598 913798623 921187518 222263080 669297847 530426010 152151748 285247750 409720430 237975857 209389141 857176248 970463574 689119625 362431551 857786811 280953837 777371642 43596282 881723000 246765536 784354884 346932391 767772482 673026306 755729547 722699272 893808467 383908942 659290713 830024596 537071051 435500776 933289894 720505181 511899315 468527901 755706321 355057443 801161211 645122396 194632348 175519567 575303806 929721666 141004087 780667887 170967806 763043477 204411699 883414968 123688229 19547196 326106000 174569743 750105728 543497549 999237558 199306485 611487117 162352130 699698798 270501916 791109803 264126143 4009199 584276957 188202786 787020558 594077140 310576949 187935780 146946724 561763878 606961611 691820493 257256027 73500241 122033904 242231834 423911734 851314473 786410139 690141689 713507683 920353004 48441448 781492278 648812338 665573953 877577378 262450830 950794783 171587377 309857081 360053922 268047310 959219252 260158654 934646009 325904651 515928873 324086137 260070406 893229766 695831632 779061835 69146403 821582623 12427099 522793925 417890702 586751060 330069086 781234460 661777779 601613780 951018198 821938485 143256803 303788336 85344425 723714962 624552662 280818470 653977378 766008676 116485167 497250968 951611896 507340932 16027831 196010384 132320329 270737519 876423708 901232748 950587800 808554829 391010045 565950986 386457300 366190826 227295190 243735146 278107987 956967876 159970323 653392400 967983566 623541749 585649924 403097546 935801199 512042054 259830501 943235480 616712387 568015143 410228179 206111644 528945851 373450157 235590363 245574432 389413305 520840342 816944874 655905691 500675710 245498193 373996511 323689379 923530555 694578917 342278519 497867773 555068037 834028300 946544731 854216855 686861397 553512231 98869535 257364353 107238676 605224251 758925624 716687350 172442256 588817144 118791182 974047069 856414973 805312182 323289573 693807164 866223095 140626035 146023150 15819084 509017986 555515607 954107463 238010980 149159185 367259696 559813356 732458889 757113461 188562296 34713289 712612839 996915434 337517387 707832237 729637070 28543513 721555187 127981140 288163004 245584652 255934301 797222751 130797653 430422332 47595555 282776661 940965731 972065666 547380864 989802666 127046104 579515175 879550561 297351861 178456784 84453077 650358607 395691705 263856017 734271394 931949956 157179868 181529731 680658958 274605795 804777779 485451321 426023677 112307181 593756343 283208814 322183353 313679573 715614791 889132299 971336186 684728944 329552044 471281427 360025311 159440704 220993691 440598463 442065897 905086570 795273642 638819176 554280201 44161216 912300890 599523986 955011728 905956790 928733207 973726950 871892544 528969836 101046832 484252733 70187069 803233963 112267487 626638218 741499410 344365022 370822980 956022265 88175030 28381218 996587371 991757775 837853319 423112500 334716227 216670593 237446729 397830009 658564517 983991465 581905449 64909570 504223060 600257805 155250108 441664136 43216889 273937303 916894721 910101608 621922594 532846427 652062300 280515496 945484 219915922 5677978 739624189 932797145 820228001 640443122 8748471 553960206 417325586 18544383 570235609 563577633 173336988 960973000 771318794 320531750 968839444 682088120 761489049 377435941 450826628 8439206 166671487 536425984 165912294 510110673 373663575 269431436 276376082 661644762 121237866 919719555 526038530 759802834 113163946 177530245 79937156 902371885 463505324 425125403 858123363 523808967 887349936 831707012 325931154 578672612 520076444 599557297 604224301 364174646 867238914 904645962 501612148 768546512 201275925 952950958 303035351 757187631 439780792 283602156 260367590 353708343 709464177 533300990 363523166 951820086 542334316 852048326 751439650 815414245 889273991 254611211 723031358 724140634 922486586 262156928 467924195 260951584 458721203 215270078 757214572 182062115 766755772 691411015 647192673 508991928 986762704 158957698 213417575 529696666 167241738 117690562 833104468 426181362 528064311 918282560 273142308 714063947 918502849 398251551 658255868 4517531 357899459 754557026 341188386 580424766 973369081 396753666 398393615 487604730 544984522 359832532 64423512 411134974 575401547 694364827 127930310 983771358 512598060 420427775 132930881 137416342 89422545 910601873 347489500 15197068 154071104 900947913 101917142 271895951 959666216 698730764 37172622 616652497 630669537 554263715 822391954 217074417 185750119 258503866 494167444 491476468 106769767 943865456 244785263 197644617 510147114 377717956 801875751 451190978 882622893 553701278 371182310 166309790 329193099 879747283 862462720 805510533 879235084 632189720 717540336 725814655 472220961 778632977 368450140 768239877 174006113 555325510 768993293 939608304 200393736 263255080 95186676 494251658 599780610 828197138 172560430 632773761 906702813 58665797 34959104 429549540 674800333 135384551 123251668 387029815 914780596 534031373 76390206 994535771 537561882 503203247 466727158 109837982 982748461 342369965 573030628 737392567 192344771 930923474 277002769 971705536 862434908 727787471 559017391 461653057 890932003 957971005 688781338 665794598 269787616 776453787 279293399 583250119 454069778 102122326 85451406 143666653 464409298 156199613 66758678 691085713 284647914 562510858 475672934 692132204 577669834 95544415 821656998 656601446 766455688 161270213 97214238 821358815 27142628 276227114 145769541 525126550 506497092 717024362 714308785 56390845 942571705 318098248 538236966 979813351 166471161 409734762 175640467 555714067 103261795 488268645 134073353 412104354 515596031 802557101 968586178 967116904 409388666 601345704 431357221 485944470 533497392 864197276 117791160 526523338 400946972 434479037 1193779 440565001 887166697 892402720 892571248 316167360 804119778 484579277 803104368 963051460 18649859 985815463 441557856 41497172 237609700 142458499 193864597 929748756 853459157 674374678 801354888 833464338 541971135 34516999 446492125 538841028 435473211 648605402 334358621 973068293 265861769 167420677 472753918 519474971 493716369 764165599 323569627 853779122 651397855 787836582 797514036 532711138 440827308 446108041 461449339 292954918 110798554 53414039 806480189 868424551 737543661 285575878 417328694 565116141 187928597 264047356 743460430 580903281 462549800 274664192 21052810 170551820 120441512 642040964 173176866 894893643 604686011 105164832 612781934 886314771 114862383 190292568 33272564 616549821 821700732 718379155 830285151 690614023 537327298 205811745 452487551 92713492 774603977 535079229 471363410 352033652 667489533 329628168 532180730 519609370 868818552 81246605 762990532 737991269 964012537 425983675 635175202 977100056 9856231 677903211 898629038 742319202 601162831 636154719 917473326 249021143 76411372 437333312 170522252 635097207 770369820 281513376 71060187 292358562 452788196 280087546 396626006 129622059 890641398 844919722 191436385 680898629 885488043 691761406 897566086 541501835 830063357 750242855 45384827 136509957 809165973 435270203 189702425 223293728 40024770 454063165 386264930 376046257 43681409 469957142 348961925 564082163 155401321 896654233 254926802 433456271 394303940 552155005 357364166 799793553 508322181 161583717 491072259 528083565 436201790 222554585 944935765 970958847 108752433 576926024 980427951 8756624 675922503 807405329 112944684 669609932 474126603 420200816 142730003 210555847 622628532 391774610 39169992 774328319 787724582 523294855 979790050 639915353 490592486 703076934 947378718 910648355 185354277 213628597 784065374 531392275 913495476 360530583 949898669 795782211 257155098 163561123 418361406 710280763 45583480 831018606 341255532 199380198 587836835 466452348 920639419 528667292 780038414 888674356 455966423 675744536 385129433 853038826 308757134 776316547 134793677 52110551 260284900 377094244 720622679 43305755 992500215 703998646 70971279 960530877 712311056 361145557 517660980 229388467 137864102 961416834 159046575 79528144 679435095 103983857 967478543 696199901 640990686 276511153 169547272 554626687 237532719 85858754 34909949 209203015 32267607 990721163 995056371 329225646 949848466 730261206 299807899 932890647 17785158 903605723 700339019 742128584 141017598 174400565 725862402 789915128 476626282 323071209 111613544 277761210 375185515 960408166 249240013 864411157 738139644 254498179 836415526 5187822 602904657 214525560 9284370 641075223 102276535 174901232 69259484 176832842 851017645 669414900 756269426 960705065 885408723 217845500 255117672 747189052 361636086 213990626 805668098 643781364 872129544 118851055 456088354 46197420 253255977 752276429 709051484 408498083 84017303 184187540 465808869 543549444 880366527 886980543 91183772 136014302 850066483 67843892 677355530 309498414 28208814 530404418 203717981 186237907 439579161 843746461 753972842 569359511 901782648 292591457 202390197 397460009 350675971 162261010 931166816 845282083 714907664 335014818 740995391 111286792 837031464 753530210 689556937 13720641 257891060 507459605 427948569 452498207 834395976 768433880 555255544 705023192 716912926 457636415 917159640 641221011 922146969 536398139 689728718 167468116 847945477 745964074 475499417 360950288 106444757 548051925 85622945 135760032 174557605 817202788 927776500 673609155 63784759 704825457 395924557 77600293 880380023 644116983 288270854 344274515 977971064 845870426 559736874 867824075 581976438 372079208 474162279 397258218 541602261 818030937 348796180 167316221 991546141 166996933 919381041 173574962 371347971 31729590 506254946 547159972 669379170 562334871 28613628 784325461 217962047 596428351 992955891 328481325 399146693 783536617 697745126 672693758 241749829 2092859 998549534 966673280 370884666 44708161 477018761 398120278 970656843 473995122 501151677 935399689 595948862 46357166 730074362 309809672 954923274 808853044 601739817 257161391 302858442 545182903 549266135 543172927 423398339 763289416 679081788 896848094 611776603 322702950 772807483 318436000 617696041 106882296 227757396 399691390 579982825 172076360 605409722 696079962 904078459 4087310 810143558 39482108 121293290 564659556 65332855 763206935 153353583 283520466 961359473 848542272 267472734 70021959 590107653 492511740 32532033 589030931 8075432 493352629 8597436 804993014 797365119 467688120 578912681 654191892 643194444 322838338 68595456 272903423 85507715 73324404 328201957 978711463 22027317 163535191 463946658 211142250 868462885 315116761 447253418 390287630 947823034 880465623 248195740 216483522 727689221 368898578 350551609 334819099 968627384 477129777 773516137 62777619 918599222 992062665 581877060 730971153 454662536 492417103 344420867 462034659 994811739 949565221 537030664 417902782 286280964 137158294 908520162 389941311 921471366 326177234 55737411 871247979 666128518 184731381 922406149 790990255 250015575 575024127 430957611 943248097 998530536 127731668 592585697 243418174 750264291 984285004 251464825 33304682 238083462 984597022 798598512 274727287 650798276 333063149 54059625 629856722 955275831 700775740 107886126 806444896 66919451 316571781 570054580 899562597 407529302 255068443 956339991 470997641 729233530 482057281 211900055 275152358 955801276 862298655 702156705 939817464 21176574 589116104 327276489 943690404 582279879 769444662 531949001 655742774 654546243 757476936 295551106 660480872 433036364 26462154 277441028 913899603 402662753 796683626 888483458 603574139 528017577 897099716 303154516 384639953 608846832 249270617 931801086 344644264 292532659 477367697 418158893 638532289 507238414 918091706 861599155 738210619 237974473 819424277 117598602 628752038 52204370 374480575 633063129 858313210 446466501 521416383 682829542 739956113 892682201 56461065 170540840 411051571 580754173 116303222 640459322 377601544 174419515 890163144 714921697 226314154 474357580 88532646 455387394 170898711 659725713 680374948 176008887 813553328 136359695 662340410 858372918 167936071 375603574 730943944 699999206 77927437 854945567 268333721 695276882 732177823 881511428 948757469 82526251 96961287 926079186 364824238 408057932 221861294 300458966 899278863 187054525 99235693 166352390 230660068 674042787 217496957 248989189 229163012 458234708 505206148 138307350 331057444 970649934 777900179 234877995 218275817 119386673 632941082 758523098 721313243 608037830 176646397 76856418 896842345 740567558 83410043 114338988 594242540 684783114 382120258 722730820 888063146 220758802 865842795 751916132 25620424 683440526 353111152 331391980 701133915 440363023 661278263 9523809 185802326 70711888 712962574 679651826 982159265 992420917 899210410 190023032 483992832 933088457 612316710 531327858 527998248 455721791 268382989 474808582 840147379 307578865 785241924 13212935 523217948 613430628 13940521 897726181 986030291 664753476 400563827 471782343 42652199 873071970 575173448 905537390 535159118 678285501 739063096 180637516 442422638 477387891 159384630 662542714 787310734 378130643 528907681 97503669 720195745 398622798 697475389 957673061 82985086 787499651 735535671 384218008 662114535 769273137 136165924 984013832 212222341 685510981 233428995 583014418 750313449 395755472 256913209 352878780 137797263 612515603 811318928 582882491 250976723 247194988 903601984 541869919 845524739 540411497 202485737 628694443 846713167 503363002 491159435 854617414 836533968 38927934 286182039 653071743 371601799 48641783 62246367 588179533 373731420 553354767 621272482 727192400 756444707 380771802 814151815 243549902 690911379 56201172 428880534 514270393 842699086 167709600 557439562 103463333 995323614 997319689 902837119 993814482 244040116 203556352 725623928 1784360 47028520 394989476 92138724 794063671 121545852 880280886 869866200 756287540 277166043 289318948 333976528 755121153 858999635 373301246 257081779 99740195 626297822 203053440 309474765 340005835 173450849 315985806 779596755 283921614 12682401 297565746 579308261 487255213 163923534 343132577 202147461 857977230 89574407 707672375 493242784 416857410 916342857 740654707 404127631 926872639 89053823 513393669 993892621 537816740 618222072 744562365 918612799 784759611 296295664 190264471 4583089 183025775 489994120 498047415 450167387 230256985 28690121 182558567 268248217 266759354 381976480 366767389 707877423 317753335 660360172 452733296 706654028 864961569 545698157 576833321 260065924 370253548 543623883 916567087 2422230 465251770 406601878 253411989 656404903 719553173 859354187 544807830 466418115 755854628 858900806 768445592 851718751 191182278 950071766 8739367 657106714 630739577 151849512 227664115 712900599 40911328 51470169 40699095 869906022 535359057 737227367 773773273 913133113 363624123 604069180 255637283 671454897 878823364 824057769 157828615 936171887 793704112 897127528 828571395 950537605 972188271 417950749 397271223 382178403 362858137 464506954 266319089 844702443 675185770 60873321 87465378 482166367 835318222 664044234 830507496 733793135 508785747 580192182 589253892 868644652 52482604 691417172 77816001 368982040 420355391 270663091 88049045 122318102 570785295 210551246 483560280 253208691 939304651 381383303 658185358 610270949 903696971 48961190 644886596 54176905 564958478 635654876 217122221 544486373 896018494 601890500 470634787 454137060 47103654 472893407 570387241 145088990 281934784 625077395 266486634 583370383 922833580 78292789 778112445 831489307 450646831 765661947 395689241 45175568 197859000 772776200 38565539 616616039 731021153 415196008 419591332 972034167 717365991 868107784 763970451 912024329 628252592 755265988 644263689 946023755 953332175 188793690 908101321 62597839 460248569 932165239 753904062 835766931 540374669 35147435 465666814 294624766 323109522 358893679 982232258 19532766 896288953 853300258 24523630 558646629 441238105 40870161 77447309 542435123 753770606 340455019 553183699 238646348 496701604 994699850 628556825 124799260 269978696 24868014 624691811 635877500 531749712 569016451 635087071 715133607 950498143 718357657 838646236 946729536 333124793 197133990 974648025 222480217 249642828 509922896 922074998 963505251 560865715 202859039 895435392 266186047 634076714 771460227 746395884 32498221 777977757 54703830 990735571 811077342 891241620 377207896 226553464 373842281 205252684 928899381 481791303 562581320 771531172 876915581 552569042 972695648 351586337 97840679 305072089 83704835 573279475 626423318 704533816 751229407 574274033 538481940 92589824 734710550 238322841 470155474 221925729 512744236 439107862 416946153 26498488 310385425 547002164 679376603 474753927 30158869 842603370 583730446 624366970 255120121 555772379 85741014 874716260 626826976 461204811 990419308 850865730 86672987 233102378 262488050 549259060 548736090 496172430 730246257 181804169 498771775 521370683 895010265 741993392 792018379 763494290 384107010 697459527 859905070 446928036 85579953 794631184 165771007 454788397 902809228 264949752 288008247 508508294 765861928 126114579 5844030 629164216 809941243 530216087 229278433 229142901 560433764 867931629 212563538 278403344 843791027 621474204 963420725 133661068 35356692 515826778 421626504 66366865 925663138 620337152 597095100 566076776 53183071 607063190 818103463 388633103 244650547 933552451 322280836 529378850 2399471 83468121 620580603 189673 114238285 495027031 903242773 724565843 89108975 454323166 951823435 952163063 126222940 444814522 904779896 905515283 829853190 285537759 106692581 819412880 466432841 310791271 626492728 677089281 313316963 680825749 163002766 455465620 723688062 888691669 544609632 449913136 751530157 109604794 728797076 10282587 359334630 760988929 643973752 590088770 148631823 579963275 913320129 626855356 73812458 44943459 247499917 179567949 850408496 689158332 931673693 190259732 487101303 404933876 847631397 215451881 773082431 829625742 85412405 997754173 73381361 653932595 15648842 768496179 200203745 738289846 816498830 751203728 426163271 696055828 753894027 842609349 563521092 707742065 283414582 518720487 237242337 192289557 380585709 754222775 699557136 505297782 131858551 684736922 931938986 53796399 973640188 374067365 918197615 856518915 409272601 877065865 434895115 619473115 229964994 577255335 592278796 913126092 81379940 473185543 926124014 192248082 947745482 741282648 128139281 243789328 691149096 543523314 462260414 508139858 223176220 134745045 733547302 718817931 731960492 545653413 115725668 764013715 868643141 171335212 642899318 442862705 310301883 289419508 326885451 489197645 262538058 764332044 327918255 292194942 362483613 647803713 979084378 184255613 167837627 43266689 660145908 41081836 714151451 792637024 333064449 785432474 722365084 180243749 420552435 53813368 297415043 467362222 816919588 292735136 203607674 880908435 484771798 338880601 174108058 345304324 455267376 569837323 941488736 292706791 391710023 338100808 635696304 344159932 916952591 31235793 20243927 941018811 946384236 863886723 457728906 37127603 844108587 90516077 368209641 660275494 623567606 599095233 721828726 733328188 890233195 287351002 668101662 125929925 613429003 895001917 200889403 404439350 593510204 120382355 364593797 212325810 389685076 561121967 982572067 477647868 852570505 714842255 568074659 920026247 424545788 248094548 792299514 122497124 804324283 813695050 473405829 494773851 988747185 592455909 897823496 449211853 381777848 740212158 503512242 342714315 113545111 693504922 12261144 384657421 62792689 559901797 138290745 199248368 279049561 600567856 535055988 479596926 652646730 471419959 79209886 333351525 910911268 138619359 114480614 912959739 86810928 101488561 274331887 501685571 138810273 34102371 396918969 393001438 42223500 479500749 625311924 80628003 967511544 855685618 575643828 238257155 232359115 777792000 7784953 66442528 614310869 826430282 216237604 995267522 997168081 740524106 449558087 759806678 81057632 498447268 982535122 279132148 473248269 646853410 393605030 191570524 338889031 482971322 289232648 466242548 80079718 865309061 116226213 639544909 496361137 477681349 721598864 351265180 217820234 611843816 356376648 274580932 386350919 602735233 922183093 960547656 604504479 595270473 269589023 180483673 527211316 815256357 395979324 167951822 385955024 302550303 981176367 251903016 993320228 520419436 701619831 35575949 455822281 346787686 987523331 417827274 511131198 456158866 269174315 826981209 471887601 785814939 731014054 591692377 270677550 627984464 205449120 814567569 356210482 214511537 808288165 375205230 199791391 71441631 853144998 251717389 9811962 639045158 606266629 97650470 221115321 13843450 188144514 353841191 435104049 590265333 725521488 80973848 286482724 843684827 231703810 137412024 245565758 751135383 857127060 44149088 855474958 657661754 726275181 813505052 175329550 509006338 40525657 27639961 674758046 990412629 882071692 540626988 55333899 40243384 378260136 455878104 948711811 191393250 101437614 898601794 903969823 217504173 109230860 281389499 750340065 515632925 851774105 667138873 637153712 13456988 732139407 657658717 698822755 17631166 864682135 204036203 60817326 834955969 798829498 226307155 205291319 857762565 205635442 848936878 490728322 230377812 647608218 868125884 589997314 428361892 629304951 907727970 609643282 341759758 267229622 598075184 377057011 982934232 579840365 53214813 230293706 12635503 457420569 985248457 268423342 982855262 132500638 396435451 825140631 872345193 333449548 115324704 388041828 395777135 611091158 427700756 463748319 109420666 299679835 83093586 768159418 619259584 776221023 926142466 437465229 506993821 128655055 74403063 219162842 421735312 636750849 879662499 427395852 830106696 447164336 381839400 176564851 62722456 746305799 578217805 680358725 856109946 102267020 526194048 585711017 254991378 280007483 932259291 516119202 310984875 153166187 699723034 633846055 3367609 223080420 859922600 622441743 424004309 76039383 307549584 898169882 876012995 251797202 369310093 767112434 20666734 905740248 828704250 353057323 810918893 369057868 659167970 501504827 775053432 710797818 751177716 563175810 739842675 4609818 724479876 433088844 416788071 634757960 179943830 477674189 128872200 665417354 664638671 123823894 939764278 607183437 819339132 477538608 195966959 878438499 545594007 126095105 377087840 278818829 671446719 557706331 48378332 731238641 891895099 758230005 453270494 63965720 361865976 9484914 278252042 736748282 640176019 469904735 14997548 967554676 342012485 430104102 597965367 35020748 419656951 328061732 42912066 31407024 353897787 954816156 580171927 489591090 153353028 6343093 713696923 651157200 962978550 132907904 334503910 255000435 708408020 474798583 838554673 184363363 44931857 415342842 39710558 807253336 920445568 258603861 244306556 705036657 983393700 942280631 300338877 757700655 225586083 223313851 453150841 967503747 75540299 241280734 294937143 532143038 444942356 237404048 10930592 364655778 899000097 909349916 630309514 774718548 661244466 482306495 54583789 93778012 869039803 593868185 864015086 641835190 810384082 515970483 872480217 111393979 542805558 676052479 68794143 953815088 967930704 182854486 347453531 530509892 731743790 726382712 527995219 37236875 918145929 685838096 307367664 750894085 145914301 965519535 739515465 250631187 639985616 349437903 308500372 242475398 800913529 268867278 967958327 993377169 179773703 492946168 700613820 742812883 504067709 495182205 822357977 647834703 996392066 168821881 989513575 201448050 548535909 817197544 284718185 759791126 202593820 705246905 966913805 244493170 43098443 693072824 190722977 767789872 220325426 22773411 194381733 651047772 643519687 174363929 14769851 286046314 322753949 978173859 251814316 79976504 249178869 624725683 952532337 597968140 668601269 85359008 135375390 472363153 671866476 403450799 474127867 951020254 158650964 654705415 618148464 698673520 840439882 548542393 998197012 612450350 882710486 189587646 769526432 148665442 931187753 724213498 851819512 587264451 966600471 299065908 385453863 489290607 169591327 165011996 155760736 655469801 967042410 63702351 521292542 256911647 185625289 694331981 923490951 339175270 581840046 250262138 392270752 58425981 212144446 978889007 496726307 180644745 870890814 7648416 817873159 355256599 727088413 310815474 899745648 903617049 982792176 166567213 665276844 971988721 932366460 516132415 369561387 145035874 544116771 553225732 802940555 566410905 541850615 925766207 765940875 318154285 543976876 855299991 634375450 253953816 584650405 580262044 611000395 683670978 859789032 728336587 127244632 309623288 208591395 834909569 218883492 680381423 406953135 64313098 943527357 50929986 647801483 115203991 575754832 493472251 930238556 98822209 911607617 138574211 478443639 448512521 904302221 631769521 85542858 759733976 79021406 536080835 688713469 976236673 268353806 146155866 106624851 355029945 741603346 532961673 277074877 905759526 629920530 758785474 335814097 235872334 220462039 866504933 79232717 771367591 706470993 990029875 156783258 291242626 981356960 382920283 660259528 22357545 898268935 352362613 219057548 827985088 641960687 578801400 737577673 526457690 210763242 321539792 724669186 876358639 299448 694367305 919999592 528842850 529040442 57530389 111960530 291163515 626492539 821186642 499125697 400926187 66550188 865189257 755962714 342632780 109257773 183352227 695350637 394732320 689438332 452367093 360241520 633572814 556543048 383534913 350849158 852050859 777605986 693152423 597259891 996891627 78649545 756583095 661937318 995385268 890199453 545999717 268108601 275038476 122917416 540756496 817538024 833898471 279601376 472224381 172890908 819613468 288572769 259657687 428369636 497264492 185990508 84535221 960487417 813628037 205496301 444940564 600999606 837727729 886363126 95349083 501812774 8528431 946731460 620416339 48387318 862624157 318266298 168028724 572035200 64590724 95087458 225394333 750633409 717863192 191883888 644385166 984492129 377598579 710721984 230410106 354827695 711971217 681323607 994719541 69690272 224573791 46448218 932682488 77058008 486809263 135065122 197841773 901207708 600751414 40743208 171070622 224221659 823142042 362835216 426136322 461372458 774614372 631021734 880264311 226655181 276311042 27473627 335615808 194962344 282992591 130511309 208565005 244997195 268768778 676729275 919591409 717434092 225222883 773319188 34988394 311940718 330383459 274400875 344981340 70812244 233348487 303138168 883398935 778478033 32817969 471062562 932618318 648346297 518550824 15156853 139935265 437835914 80821537 691047072 90441744 289871217 818783664 274775552 758919948 389463866 122688349 748369947 591482476 256789083 194322315 563305881 636958443 756652277 924715916 520158541 830093228 647621070 446221725 952512819 764568894 583127385 681912796 710307184 25680025 285210790 83307860 507406669 785515031 962835069 959158007 874845758 954048126 645215294 786540187 638760672 616340476 159764731 988634626 773994484 294884135 605680237 304169432 428418919 508355577 527302638 71149742 643620681 507576024 238760332 970900474 161878233 473935255 866824947 612230944 243736951 870412898 317702265 677268583 217738161 651298525 709307423 419756547 49923640 419396876 731263117 522139403 234304234 845064795 267765263 880838785 276258249 141536414 508456863 233975886 990023678 883385623 906865116 641353796 665719009 372748644 530435596 62325532 2391783 534177947 166382369 609807736 119246521 164418090 961122990 318562017 453190175 650496242 579848180 377826501 235348749 731420215 279361757 196806528 918025374 321946278 884331252 996986711 191171606 757707606 380133492 798878571 603194338 249585346 435981626 937927890 626855056 988054480 65142222 990301575 270484449 928404686 627702369 179077481 107814836 509030513 623528900 271535425 14565143 572541141 179577980 600040383 455868220 540676737 18476977 513156222 998799998 530881889 408187439 169068288 831480673 598447051 17188717 840160174 349400463 506374013 992604813 900477656 301255901 649830553 301524308 598464951 898897477 544497841 886722866 88619886 102558443 794367924 393863743 713422854 951387931 620073223 614642745 691843951 164309317 409389673 489173895 377133186 264339206 453994762 546312762 914437122 223962149 664990846 539447561 943751063 711631751 996188101 572153936 666289875 185827908 955216961 592542491 748421678 146560661 373314753 773504535 884118539 133945565 121325688 251695259 805053874 759181478 543121926 461008294 170357332 489249193 65313392 302927073 563927565 660079803 463704099 932168601 18327258 664863971 558692336 874584004 343387559 588172875 949581341 540113670 594412869 945152325 852321606 824104357 198402411 740268876 567957374 181124494 653140414 472375817 796761403 866885976 364434629 377559614 358972501 950162756 353156337 783058151 85515540 595124794 617986460 524870683 568508201 784865480 186897929 654047260 515946536 217635365 96493661 504323158 188521730 758990640 298774701 421427297 161940523 412545905 847330286 932005616 866143597 560655894 669761801 502689006 193999483 241370362 667209151 802706018 585764467 508532121 359758276 26225024 383452376 203038745 941045173 461782947 112247453 137526859 225710093 503766607 179151123 65388198 887923257 439389742 121374967 522112333 950661514 698636823 349324654 674789121 772256824 670745599 609425672 137749555 17755240 464881167 220458680 214477308 30749470 346676623 120251614 5560092 352341838 81052147 110896701 370112760 2788048 742502358 178668289 148767904 815400809 80892412 289229249 947027405 306145212 428271697 185879161 930980826 172017758 271273703 399613329 855949521 893658315 963164409 882912978 700187235 26994783 810094059 156181110 748868834 216601957 313143367 944730649 801717845 696901134 545210049 14233020 894693722 255923061 86873909 354838227 149952072 531378842 336125349 815657260 8405523 196868966 966337342 694385162 209011034 49601451 558625105 475121937 8087909 352409120 742055003 356746573 955168547 985246570 201653503 230800946 13746732 771443472 413702921 942423713 53823422 860177541 188314217 928445404 922923968 768958497 378830909 182136979 284507587 925010466 826298313 485635030 532696572 660831671 562806645 726060586 67721292 135850989 587227607 471088239 807822653 605344447 786845864 695182067 33328374 135269902 159381967 515413101 460795990 451503269 502634580 744225014 227343834 356918578 305036139 932455195 257140392 640833873 366373745 489405121 328000401 357420672 273716965 161646656 463175177 473701165 245044599 882639193 681821490 83988388 691047159 136365100 747505364 712742692 5982816 728563784 728532061 245902537 943145179 247370149 628993508 523467935 216492714 607348125 20887849 372311702 440003144 11814903 570882706 143178120 516429647 7854046 246997550 770029622 127625597 830351592 755164344 137202763 251761603 841974804 965912714 480180053 583798576 875313352 529830065 191641550 72136708 480693710 262215127 219297304 655431839 309960285 338043220 527553407 516945036 517256976 465430058 370593073 222390145 976937200 944476158 146990918 815134806 540295785 426192929 786826691 684243470 205160527 749071496 398438287 447815896 41488097 477272791 936907130 633109766 170993347 860993870 485314880 528615955 191949825 221566944 452899456 813363614 670796050 675179302 10450886 250799224 580045267 571293022 29017984 829609875 302645386 621772654 662028554 523278089 306692835 331824614 455668132 189076252 104990965 912200701 228710264 416316219 31650362 874550418 314990743 658343159 356044442 474404655 487863798 993420553 487360354 514902783 236687999 394922584 291758663 987643869 796105714 661827822 532307556 677768517 902821897 742338814 58452802 567709022 884433238 895242725 345709517 86488572 850107485 175098148 827884889 121410451 645339785 55418726 222695075 819312706 118573864 497333632 776441553 423398096 360494198 713996652 9857651 639459758 813541522 559817037 514047097 789924339 970835078 852266097 445055301 249842780 892773190 980136518 818641304 50316883 577338023 264949613 807809442 461280999 772416621 306515621 578853371 144603596 490420545 589089245 164911769 95201893 465862064 364018468 361417191 946164407 257065275 903845304 466610097 947418227 967511868 103649021 289584170 126245357 142056451 804118395 442695922 336271657 68915130 673589736 669630477 320910539 438183295 296606751 77521641 112849187 684141139 666973219 753115994 423828775 332202525 922540828 865978527 461281144 505193649 284395106 457605723 857881439 852931270 695292017 761832348 672338375 155605247 900382183 276855259 106904651 555072738 989511825 915543022 336179751 987488229 919992421 352377632 697427779 297327199 598209659 677560861 24763184 88546959 601191960 555865080 696588324 712038305 945569704 731718450 838355969 954626727 534604221 720427183 556346697 7225238 427893777 506522296 557045294 172258388 606906507 162692617 573263752 271347627 54239794 482816699 390858199 374854215 68054074 59751762 342259262 667356610 583313667 268464065 474319249 620843939 365926155 683520087 929570117 758330957 627670527 314585812 942399609 548135443 626770864 985620831 511751927 382079025 59475743 739080578 738473000 495365570 163633001 755988788 880230443 484473561 996962012 841515475 926192825 815319901 723322861 148667171 375715388 502393391 814286900 16115792 753196741 603589130 300326775 674131699 550091017 352139932 959508639 901596676 483812197 766229367 676559551 122352366 345504996 167284495 475626517 763772538 5535285 59208649 552398083 951867873 314215599 500151533 651790611 759542714 876643150 474225068 388732409 856117011 546289086 444019233 193694864 760090705 606704458 834411595 327155164 438893132 777843693 411516693 418936840 394482500 438095173 980538191 640299881 123780572 657767318 628098229 990225782 353715746 36795605 187406051 773401044 883525771 95536021 900641383 948830547 586815730 907096087 985836464 224765663 493674911 212455233 473902617 850173590 18427967 11677091 590644961 862824125 103062759 938567796 318320178 163752127 439353619 214984340 186556447 822359594 723055784 956532619 338496926 745317827 799337207 903597190 331816852 554906722 17181618 903937886 863391688 186770461 867565559 925168016 976365548 678838558 800777546 710434630 69345432 616362695 80658587 627771982 549606990 648223896 586564414 704531231 388446838 545914172 722943470 52641240 256682086 409631113 969267157 267018562 920901714 830812536 268367226 900680139 150982236 701084460 513913304 984666248 209772945 751690224 379003211 397687357 322763997 633553722 621594260 141061199 133420572 55483811 249688550 793511370 1452816 730178543 422934484 548906604 503854178 624876551 345406043 182886286 241807523 912627203 85687774 338256186 69438282 295381785 167607854 360848161 619043770 99071663 534604158 699863959 110910014 683112784 87407468 528246429 194260741 467237808 288435710 94271704 763316009 670800809 314765473 998667419 859832747 921370431 385111336 555986138 940403828 642641309 675481299 435385398 378211670 858748437 767323975 283494903 98628875 116417316 61847951 491610891 807711281 539255661 142624035 27868937 195429458 928519355 875254493 885220654 903217380 53339393 534844932 166612839 559524413 491119448 234440520 431962431 75702939 981866760 891304378 435366636 38161708 45684346 412643290 816848467 105615104 101711426 736661645 157693431 346591759 79259674 484860959 551714310 412159037 291183588 726267717 163702106 847351887 801834670 896207900 650735730 814997752 440139691 863942955 415483510 432463829 1849653 149493342 508918835 156577379 358329295 738350093 942299936 732767498 921733413 684512241 461129313 504338464 876679947 11976755 926649783 385083100 939075707 768829020 170151060 442615391 244418710 84317797 117780752 282825904 369609646 263084459 895860971 846884805 598865969 329852400 736823945 685370997 976651706 875748965 713907707 790333823 556573199 151742621 742134776 352264336 129260056 516055447 519960801 556491575 38277869 294375604 84543419 231664110 868046532 576055497 418136884 942178582 163875844 66628869 736747689 119155193 505466423 303428103 62785299 573233095 825004305 143151827 451025437 48105627 342221163 84821464 466648853 854984306 260716104 617518570 580270064 72265789 686055896 717891400 614385747 879605444 598088299 464176279 573976193 649233865 49286011 597608930 181460584 578990311 331121324 440657314 692049059 839622312 458275530 416181680 407829359 450774912 686483146 616218197 906915765 969151686 389874373 370915130 813628928 994279358 856367359 431843960 516610957 968857230 569999584 417868171 541722937 708536137 60307969 288523352 92865160 678770918 333136666 174526509 152007342 20263499 649078030 572096703 831263105 853921596 48193512 859068713 854523005 363964270 524402143 38041333 81493965 3134843 586993738 488807690 384979775 104708574 126773932 384043202 766797130 885953543 693667765 126224091 421486607 950558530 118914611 878605431 224478803 10281422 989869092 178452516 837357702 288234438 323376555 629170392 545729982 472464440 522275859 773971185 536033471 561072661 970062030 925965107 281557224 980194098 82074232 381487563 55770449 640857431 429209046 242921293 933646253 388784422 119067346 279216570 400227160 16639797 115950975 966116213 344540257 854190843 138794265 819623499 137107568 462915547 149054723 17120370 194183137 217209372 521556422 593484678 728695984 308874224 927174168 576027534 3757961 893055603 254959058 278319097 933011637 925551269 540861179 774542998 551908655 639051882 79560891 702297767 835727254 95566236 247286375 841952720 31436080 70045422 428660344 580846369 749594863 717473027 889409938 50692106 706600550 595897188 617860485 778860395 544185046 909194629 350100029 979951755 248140841 668389306 440919257 691666452 867204586 802900041 813247131 705785116 726763605 871185495 506135534 165793827 585751876 596239610 949485417 751055370 113137475 552523303 427601091 653694755 95907452 752506818 943525342 435937825 190717901 862110357 807553997 103930655 123367342 503339340 273375163 968433317 894944589 931253126 28550336 305950879 528836469 98185411 699301170 301036899 801203613 683590507 669389036 117440684 488718055 741491151 167947013 541895845 817086743 407450408 112500343 322603733 421985696 878742681 754360934 346741557 505753751 469820971 511761694 815166753 128402875 819282380 790906132 46790748 860245362 659845210 751945696 4400665 821400529 591479957 457671494 149783015 992405384 209391650 522916916 927413958 963981562 391204504 372871610 32078364 437179182 857218159 570477077 941911734 179122901 984007172 848068518 416103881 917124419 415584934 699214845 553740785 855257462 295781763 456395977 338182707 963277083 578159285 445520101 838561534 724682623 539024445 991346006 748441897 899445909 705042179 731263046 281327341 863408128 973892570 875601930 655702259 323981321 658158716 328581662 198212933 235409050 834952840 32087586 150429785 272154192 888909448 395950820 416167438 138881895 989236464 301705046 310804649 830790343 559452436 614715794 52034005 171186430 124964411 199122911 941148075 262303045 810558601 217276836 344809379 479600251 861478419 128126070 240266662 771633188 215957968 472258834 978945282 129701748 543589538 81634392 720743274 153459266 497842771 837399638 478350845 173150728 256723090 156823359 138083900 794498804 219857917 716743276 984593691 818004688 62293263 64633699 481389545 255325718 951348023 911665869 768412007 638827751 782352833 336779132 326195387 737819140 443222251 29270896 135186542 510253536 130219218 470492872 130828664 625278868 879290498 929881810 263279158 905672670 915024620 388946178 769664367 884929061 93781993 292698095 32663885 312221558 176256314 670938208 381524583 888621452 444449160 243113535 599128251 38866885 432376679 662330269 898552490 161823780 742336587 134587832 568388104 27706464 267477912 856546292 24395527 407060171 410873240 751270107 636860224 939957094 363858557 713852190 698654401 911748823 685783900 83630237 703178991 835600239 874513725 576096089 154731941 511521827 551784450 235519610 947537948 921589652 490810752 94006616 811121148 433218313 825642099 805062252 834390097 577899889 616086903 902946394 573934737 418831970 446441495 852819180 664593306 429780766 432481731 471574041 293821102 283772812 284109017 598855415 277583487 315758392 801072533 549363915 75036703 723451485 248638243 848374786 289189899 992050390 961070738 809248558 607610154 988314416 829074400 696379402 389823432 491338644 78376169 913388154 410513053 685429470 434986105 251233161 707474880 148285836 774053185 481191019 116721596 400827589 655843032 244074873 342038143 665344343 295286466 207088952 209265240 289584312 514017640 112277842 109772043 669846540 404802845 888065439 772776119 3021592 760552212 506830610 266652911 636182858 881863795 392069333 220055460 733012156 605382467 658192688 530842166 325994282 782766965 383664279 3500137 485807870 240384480 177122471 292638058 691600965 956297032 216211233 826814160 486766009 219985751 2892526 859692950 868387252 885511066 292851497 676259618 987175749 81808015 551381509 597864514 780672788 84951189 101968362 992826925 360733820 797865203 254276704 816369531 400218749 317827294 517717790 393182517 323342011 261576814 558714110 125941191 142734982 293065637 523991811 871796743 952892889 172512619 85946199 66556979 316782158 540395664 322419277 143394541 925738546 791013072 99168099 971434055 821760879 30516683 253015097 521185968 288544926 487422474 257139613 905148429 328532481 531090430 725191296 987357343 472674936 522278658 46331136 923098129 740997787 788371030 529614175 642172029 164501917 320495653 856717062 79750493 687685212 793340540 861175692 268264087 885176418 693071449 697167787 548961654 501249757 790120600 138252867 499323319 959876002 243481864 655381861 76474991 493061174 860399958 902096190 851286821 667683514 579760670 125422895 712683208 139563778 616006112 764029110 292017326 830894979 766484485 440147075 775864213 211757148 579951071 374888295 885094044 484272212 428905383 84692317 365413462 143018461 287986557 675722377 589861817 158426634 337214059 679085621 791373596 671052191 656271204 28139477 660510029 949306366 665918014 923864580 53353073 951711293 859656383 160972169 412128544 675115020 116406668 679044680 829949274 963402959 948631351 498511451 240603523 461340298 720761146 220585208 921086310 187165934 747331831 963283335 783917369 20844116 318710454 991065232 964471962 60908730 537977512 645477062 274396561 684732615 165166054 231623176 294692743 959872712 867345781 747084372 791727698 189046710 59138873 51456218 553494321 285976627 814066438 882209514 306617287 783174530 989303703 425785600 759747362 381604500 521774985 449596864 87759545 332937985 593273446 128164086 172260713 762240520 307670434 508298387 492231284 729957774 342733207 856948148 804035722 497641255 929469568 184064411 535658177 61566725 926227855 643151540 443192213 387280651 440807884 979253138 612084713 2268093 458217272 790465010 440538126 603639117 631157168 979465652 972363447 683951248 241727999 532836839 329008642 739520520 916601557 543947706 905165942 309154522 535120843 856032651 634362876 973370326 695617636 138214877 820954351 895367797 453456137 1730650 519360774 494523347 225994760 871841495 763912810 787877305 893042337 927614031 548155049 459500950 356728303 645129187 431859125 501565315 174596093 913993185 155344621 336512315 511797436 148795579 484485142 289045800 576784646 868115980 831575646 495314266 550108573 791581080 152967515 184992392 808755240 489935946 638488070 900822286 702345789 429900086 531156939 912339960 422240334 760118420 301115248 269845491 414217410 211543245 360780847 935923799 221768417 19145063 800833188 717156896 560175066 682055191 772208084 784664824 250029513 384308664 893286958 346138673 860994220 772193102 189100165 321979836 663533425 270539012 546342678 208765247 271791335 825366319 994952329 581181691 440836805 372874566 335640806 478253794 716837548 757679857 974380200 866285965 58607914 415591671 434298795 410126137 704184494 852032077 600134706 975461069 793031313 366230798 345454573 905422040 745458194 916489088 297430765 925725844 551088479 279713547 913008309 219019999 307881605 173355330 293167396 509812543 478800513 121327331 762266508 94110437 473928239 261475023 645029792 62561189 45224285 320693521 717545600 179975939 188423099 27058654 39088047 763512610 89409504 530787473 700728345 75964372 956069456 496030891 639883028 877868430 369089141 500245210 397157217 571022962 978909596 163049969 460573216 384413510 963981315 92833768 117542881 344238713 420378055 380946663 61326745 264264992 310471156 44407350 784658852 371629566 924386172 394560328 830524616 665834619 966253620 211053756 185713973 295779745 178875876 734668112 641359738 780564269 706974511 816525556 388511131 63629945 440697512 821496248 501334520 627983759 273371083 246214360 355253859 624372767 314169334 589913019 366995213 251675263 123915634 131096805 164954007 802619055 75862132 420845839 553035265 843493205 722346002 431054867 940679614 644717760 890419021 681540593 532066463 223196138 577393680 977999833 844043748 735996273 251779628 584684828 251154736 780774042 92001370 682084404 375116692 770853465 518626618 118778823 188322433 682541630 139503705 747840414 833693398 906611088 374967586 819141038 495034328 296412722 138752501 575618834 582900791 5311924 2628367 389592332 366528770 680840780 934637464 31157769 419418813 986382813 42531494 528651417 290986057 208207080 167730737 912298106 284247026 332674980 119134742 290323857 204214899 525992674 335488803 401113828 653554660 14625572 157659144 602326442 681442511 239290259 123649628 536571964 580210972 371245816 731886501 709008163 236303653 580906192 527820358 207666179 455823010 915132987 412720790 554150065 275592124 479185659 879250381 391489578 125928960 632298114 24793865 139914643 341453156 158680296 159568469 382337330 796248899 110471659 520100258 278154623 696399715 557612533 537020877 439831058 723968242 446618385 393666451 734200496 789440388 649941496 145701532 723010631 190969878 891820810 390641278 614740962 210009104 394587471 619969967 144129988 641523774 608317810 105338513 891998286 997060050 147262160 88873581 173021452 315656558 200569956 761225846 402431406 330895894 254985688 363040963 425835282 89527861 464778874 702750551 950071869 952673443 891670592 762440473 205473620 606114715 269129420 198996186 152748208 38430658 257119332 695635544 339483083 600337705 426159863 322031409 850561607 272719424 466288410 864595948 584803056 926171368 800028432 722878207 366293176 462723430 836849599 813170110 913233341 512221543 218745782 154789745 45652545 301140223 713881645 922235962 345033135 838015917 40377344 435634223 127277464 567843155 606351036 950462024 676415674 978508611 470491531 946810215 673780217 876569901 559082054 303262034 161578335 536672306 803795566 141106109 366365983 5719510 678241833 952905539 570347667 176928520 908393285 338572897 361974593 380784410 5876794 823591555 831822289 833142989 122243369 749942009 530626843 238905155 312600279 362252286 698030868 821568778 336744884 671205810 106584036 839991577 56956631 529235231 649151191 980665803 420190977 744941362 664485724 981638117 110151060 649994700 908473874 884059542 921360295 209132201 675583419 316069749 5039341 484921459 265350207 712323451 982166723 951277499 796243895 70670864 120046900 30393339 427763035 461608192 382448623 745035925 345684620 605294208 739793224 916769745 948136922 649673777 21857602 858982367 486441975 355800595 613437061 305740764 684498620 79319445 631147866 346672838 137817647 495134349 736147134 80100488 3470713 164628537 52739409 227095282 492880365 959026748 899398741 990895807 433613832 991747493 698550460 678270604 818567790 154694633 773777436 394815464 945474280 671717861 372753336 462119491 832468843 761279710 747290484 970147315 464072977 748789632 986995937 891915579 866401053 777714917 695945268 672916293 801355771 380866437 218401102 231179041 845253694 572325959 953897142 712096968 953878434 51260281 492930203 256208924 552420874 50690510 794606037 334844905 413989504 626047849 296221409 770804954 55414329 254097094 124119784 284106382 81469838 229657565 512050874 594143877 394203910 486699771 202081229 199793447 589048905 579135455 679060800 220426437 158841643 980324529 99026138 982002841 931255462 911068923 878840332 963833794 402354657 460483764 544126190 508857423 736341796 812004152 812491069 45606442 581740259 7281233 864680799 495127091 426928313 964593957 734461284 25831718 152381035 909514063 490755593 478743728 421975264 165500871 757366180 85842014 577652529 220203510 449998658 83416751 409707926 989506730 630207891 979900414 527897202 267769622 111435755 896753050 363508561 692611544 177649481 245892272 160079334 745490422 286415190 737286492 544647437 864140253 953224035 104020895 419576777 917884001 541999972 1945183 338948165 212233663 971433210 547448944 119155411 664295582 643058284 62108045 947625198 506660107 280724392 40595282 624228412 579528057 102217544 672688205 818016136 323997129 179923337 507660014 980250053 930476604 806922067 50858125 287575820 978858115 131797813 121179757 263330209 900375728 770274917 470474933 2029808 707978309 563717572 204595577 735436431 745775394 209000153 829638064 164427059 739808406 996639442 746048573 317333445 364482649 620404616 795191014 205764683 749895045 28907642 444508513 353854717 465068448 662422481 299511876 410267445 81637271 952272215 597080080 500443252 361958593 137183623 410031667 942627688 424968664 74187903 351815159 445770468 918446085 437746953 383327131 593917152 868798419 687013774 351690557 974008708 852325432 313997613 110121446 174957081 308434832 323122336 499824266 862533137 157033122 841357137 749751042 921172488 683633051 29555788 372033293 327736515 484755214 24064333 36168020 923844650 840470781 276250028 289454701 257072213 490883526 451145593 709010378 841909882 202245438 838236255 975347923 159392766 561152917 830060211 883547085 490301297 859714666 88096887 475824362 939144574 845175235 883304019 488555846 573508102 681964300 626007700 36651486 13057291 251261979 144633906 617841310 267028406 512592940 111783887 339604822 806836575 905909991 206473901 270364867 8430204 540539735 82544063 728137601 946528693 145920240 78682266 524763930 551747795 831380115 612259456 753188099 535428038 243137922 860777816 184814993 741206446 107178093 214201006 575854342 606488527 251245671 594436796 764761743 911622799 903199724 657193825 76275512 635528324 246013415 480633635 351856896 335859051 234228894 61778483 804071362 961704229 498179786 658736486 355393612 538425535 724595339 829696828 745672015 962619240 464404065 241412319 923947105 137856387 892689978 253931803 58952454 568092042 525678702 978621801 608061348 883309873 82447034 97609446 320237714 159134788 542059842 672699740 748139269 311445955 885674389 777759289 18002461 166457040 881083813 902808469 557462503 887328180 342503632 341937965 724739154 760068327 246036701 446756714 390560824 482656255 329675000 51456090 461398107 704175810 557404854 167930039 801093731 424389149 342588184 695948511 860604896 897253663 369090942 918893529 778273615 833086470 548139193 955596882 335421710 942078773 853153786 419557797 570710120 886479414 114204133 701297870 805981837 856431294 655674743 855163254 964285846 710761382 497857828 359642349 508862342 212015092 890016191 226401577 139407174 519159251 941672835 952124872 700959142 10592149 784134936 603445525 792245857 715874995 46617738 391941372 243472660 20476117 450597457 82295831 217524814 286173890 154506310 154263201 634820220 186115953 91989681 451849092 599934203 156868859 210922303 447203664 446533384 934919586 701540867 639806268 148466384 917617877 318450813 4152358 767994979 389236770 163363473 56590742 316855993 615635531 618002316 252017339 166268594 821733934 500942629 20576107 794740765 889129945 755725430 263486248 521780901 632327549 813937416 270200854 96287975 86139510 846203847 626547720 331535714 350602313 882474502 10141555 946759552 330343840 696253060 250757750 428780180 956056397 948870248 112745944 693901014 523424076 431983164 165701131 769630311 611272643 407339257 406927394 537223760 513669113 289543415 82324193 268013443 383192421 732107007 114139051 163042265 470729886 20738878 44610962 685624081 423093866 468762696 586562122 862758872 859249846 293995549 647930680 210562751 177087891 285757727 378238559 172725050 563417146 679556891 103327084 955174576 619265555 550796873 470419644 107683179 103275429 949201477 55231053 110423959 263780774 225408277 195242179 572101201 807262704 270326820 729227887 126252695 292863111 542088521 348854855 866873942 385271447 436529089 652111084 885990748 146793328 139817266 842823591 730396775 714597776 425313448 414525282 563066898 628949916 943706520 912495545 601990634 898882907 538656480 793394667 378485601 164532931 713387462 419170266 724077263 813793005 175696120 142856476 449535602 648138014 730019721 149391333 791284602 69647810 472182260 338995218 105202930 915563883 373920037 504138288 484834009 228704723 936416611 512108139 709897995 613676257 173811047 650289048 949501010 320363930 977664845 15179835 547826019 830661945 913993624 122205046 378358738 949917717 532084795 516383261 439059750 624134321 698356101 424813988 918900677 218840758 700229430 806764845 739596286 416196094 606262133 820438140 563182864 663455102 343858637 642435333 728545304 766298207 677787698 663610587 187731232 436177638 189467654 521835452 258901531 311668106 564750089 774651412 121080287 659374565 26177132 13871600 121802032 485913019 109543873 137918470 243246006 27174902 393874953 341320376 793201922 231587244 735984805 244673292 645722510 629218583 70856807 786558897 996567997 616815255 433046654 247747071 661723861 128394171 885159823 56597234 538403337 251185206 240329368 660138037 63289713 344518880 223689739 695465238 496489230 907548355 417521853 492352396 530748364 292900866 185101030 642653497 348437629 961403127 171433778 67088990 464230101 511590679 454944173 853591281 67988089 700786186 13167817 958975876 499683312 569255578 43435108 11922011 719402924 435023805 215317191 247385 272416521 238021001 787153817 103365134 118240070 223831618 343767797 461419700 405892235 439233366 417264212 790897449 626339565 28937305 267175840 961352434 7235424 289482242 948295202 261275971 88607432 287107385 549059472 819163116 132913905 97876999 443670792 958978164 212641672 144282268 610512403 640728830 816352040 272789080 84449175 24662874 327368787 209882814 992719084 624521727 827474032 121960567 371162320 698995981 792496850 427718231 60852330 584019274 705961906 398398041 626224711 937435942 469521712 187131554 335165783 711394233 690115672 35457658 175798781 162073024 775251482 289424728 644668157 35423399 856267854 509575125 744349313 954687862 924405431 532924596 819224867 754088427 502479867 658422241 366346460 441504611 406260399 419914607 799686676 902514658 730846795 186662554 238657688 332585244 272311344 812058309 369396892 493306727 837896870 173004923 442750398 651650753 344421859 955311726 443028997 87357905 243241210 475977338 438012122 844777702 478465264 212206757 90767382 714396923 180346285 715572246 726865655 857002666 109185795 520938531 459192093 354408255 188645291 98385732 771080600 99915687 83512900 71543842 840957409 833799542 495644252 146353797 321611985 726669298 404649313 625656415 387600813 439068415 468593580 409389770 82586403 801846824 853413248 740280590 669019723 147031468 650747397 451520916 55535516 376450918 902172749 909527792 838525442 34690013 125489745 681346778 563175880 180211010 977694193 221983546 258085795 374567531 55974903 4344089 365999535 337360342 270633750 56780200 827159154 822288556 548839141 461324615 532324315 46152126 564435174 933675124 880007227 178669697 504273285 670902494 957436245 494823443 553735436 510877784 749582665 466068030 727893692 269516253 180422566 838559345 882444211 555126412 136840291 499646145 87556088 623003830 695939292 149189356 936895874 223670991 585412822 42761567 499680549 648675436 144051582 152594470 554599332 723671892 103745643 330713590 552332968 756422259 12569753 430759221 129313733 257867995 381712748 515996896 944097135 191009991 562856882 111131057 23816202 943858842 960132259 785268984 37925091 193273312 510751449 954854327 58174757 592641101 522156377 266663829 910308075 164718781 396864658 457713633 163337784 46145070 748956506 951690384 286221300 785947344 192958957 619282247 406456049 493881079 641443566 856326214 144225000 380083228 627312751 32923524 938491770 354849762 145797345 168314770 16762161 628275989 20149794 246839987 510722172 736885928 182139002 566112715 925102263 236986551 837540245 381442924 351350051 4125058 28599687 129896140 958371814 972648059 593058253 387403466 276713749 563641646 596761679 30072049 463234472 314837082 95607895 552731241 460069504 261779684 924288412 439579407 206136679 665965267 825457981 531775072 772489741 160799837 693979835 585529477 79142666 873321179 730358532 873268043 528379107 445214674 485359475 796184363 642521342 383186415 466913471 20825155 619978417 656226817 197664783 973442906 19994670 880497159 716845038 730764513 1476509 538812448 106676567 777986542 295204867 739800476 991414435 162421568 932765265 783867373 302432409 637917761 70802532 168977323 903983973 653528572 509642234 487791005 69675933 155128874 920847807 606815660 500305212 427492397 505418817 66292716 340502186 619206152 471116538 175452570 885602742 125175149 981448527 553249814 306132112 496031408 451151749 862360559 457514713 589654485 885578191 246459861 324539543 940072832 266757957 327175077 909882674 730992129 13107433 504587104 952666756 39096911 287922852 92742196 254961611 704741128 317989960 767724917 815710887 70138745 908570766 45809562 364680234 929072264 836694040 319325512 301885385 46434260 212156013 263698509 899821151 367407771 425463553 83077273 532154673 550079168 233223211 83693385 728497902 305505750 355601964 71009697 94677162 147492373 517275184 812312584 923069670 464199513 57011526 851721495 965103235 575069739 204409704 501566082 301303247 565268665 308556406 330537525 880768382 312329693 699691324 944455478 292048305 683939347 193833579 596103865 418746091 1421956 943598999 825952024 658307352 531716608 740980807 808902873 208832144 592748540 703479522 124819879 860978961 575792538 433438138 214035281 701018298 947590302 100304904 999880921 773012257 227336826 664285932 34016604 74646066 446988615 201729139 446769960 276854099 525557950 163718792 503267505 552679490 380302667 546816522 910038419 153666099 622680826 124053944 612376461 529656501 809959047 281031996 307135886 723652297 376038990 180488231 852351657 238924754 535183702 18686702 62205718 852070049 19988048 414855674 213629244 898291303 645488274 713765007 95855271 789302722 99434266 916639198 88905988 113382330 442118546 407166981 639084342 462579387 366550345 372225280 426179643 285221271 929913908 704575418 943174720 47458449 920650228 87649542 251031961 769771593 917220560 53752988 577755073 891027663 272057527 455780381 101595225 178876056 331234880 472932371 791109679 314563968 156108714 276201197 60534323 53594062 156083167 902771717 789400708 572112177 587794794 776594079 306723172 607356345 571238789 719059170 92548670 925468390 291355918 982583006 451307684 272156828 843962764 974528401 459802453 8360493 348158513 514684887 124341550 272758089 617871568 18435451 706848321 403809550 262559468 794964015 441563325 825675522 722289837 291567756 260129277 10968085 223696860 243719956 212503431 913418649 584332534 249072430 938579461 791205451 750861337 776291372 226028618 173515089 75264013 571711562 518883923 902478649 718533437 672949671 582966334 985350390 419598532 46237515 974959452 131982571 266302819 749900329 28077342 915647959 156383356 545041947 518037024 201951720 796737314 279167199 786726692 435678134 329774347 879886624 338668055 722152764 608594326 83159410 317675787 165298915 427140300 645671243 51929403 279236211 884299868 852443148 138770442 829640740 858854043 69704193 296145413 661895572 495271305 147781976 559950812 199488199 128879567 161764142 558704494 243459368 590506427 596247681 794020031 54089875 766049346 305709882 331600628 664582206 46050313 748490542 643235687 280256978 493866065 69757714 371678351 953377373 744662541 66919819 155071249 182282576 177451731 32932383 38669494 13536653 705169378 211159105 490049908 993912406 136759076 730873928 270867046 325206106 41635876 991111289 616507088 75189933 295914780 651061243 127222555 245656014 31628267 806309856 295104474 659413665 213063959 909079073 67086029 878918003 242874064 469448350 461132240 724996346 907152878 402547235 774281714 768872786 617114351 542526812 423821928 825749253 792903418 936646121 435879819 497666041 276686560 391680329 69571039 634601095 783597593 421243362 454963469 650567788 977269697 746578440 444350698 770052559 437170593 684770036 953967732 519064633 763573030 324524488 544233675 930272674 247221357 741867149 75354170 178918760 466089774 921840945 116567860 402270545 870271956 9272976 344230744 57673349 262721136 242221420 596318822 607596190 933855671 939433838 63880008 953163416 572841481 545298983 739634454 451981274 177951851 890783246 554438151 966974255 689253775 762925449 155708542 522974666 196719308 619818972 858887179 839301708 48955166 500810811 667772508 189532091 829334067 782769343 934823505 578184832 475859282 342284648 865198312 238787445 816882296 60049186 578887761 603217621 200528195 191165116 83940571 694436165 610896889 321422832 307877893 344912081 887095435 286517855 729309550 963915761 201422223 248367762 135442918 48614527 430793027 698943740 744673375 923549892 11989136 705563380 879682803 614455402 661985799 371980730 813832164 964086154 458249949 876083580 832985249 446405535 334161393 363728456 40410298 164715149 587318987 285636889 790050540 605324194 304595608 953378509 290631193 93456532 546436915 379381552 83791437 283022976 825099803 708487154 996511165 817739501 520937331 545575855 135428032 943795909 41900815 889701092 96891869 802395998 292399459 531001596 482126524 983508342 858983056 491855691 31190325 844377138 618548572 553724423 603494718 352111139 168076345 668356433 264453886 636170806 494522427 22514229 608811967 354548944 91024930 961094048 391690483 676077235 932118870 753636720 956563255 600473611 346525927 417203557 418254670 953401713 753821835 177361444 938542882 839614173 242903971 121246277 182568648 144796857 280467506 994630971 27794810 287987409 747911147 583326828 192246428 671485784 196340004 722896927 145891515 795299310 739204062 122396292 517551236 678423702 752856253 156513977 947394520 666240704 789732883 620214200 622151866 953040961 52009175 16778611 955489362 260432467 56337319 343791026 503622646 237852829 903353803 749839158 590285858 527160877 106027056 554684572 201747319 80221304 499161712 497166702 659017664 756314203 833038282 528544033 399897328 233362715 298212390 701156870 154885671 976509796 432274707 219669094 252509344 909429327 110324420 210347366 79085774 86189142 123256093 263618585 581611840 339300960 801333925 112910969 403900340 165321913 370613129 685190756 384929803 114646039 118330016 183460518 595807568 402071702 793569900 409737201 713277113 816864445 94905874 449336284 442037405 308897400 858140770 585394153 545567106 208215581 480770261 759823489 825123092 126198632 600835206 876570614 499416356 949084288 760382785 221897601 510689456 289823986 86494835 760377923 975896793 824815794 475205171 5655109 546063339 499574046 580046910 149021048 118144089 351794172 309327105 909697207 269206463 939656313 125409927 105614018 798187486 239912489 474778503 714519363 939872164 10129416 809934434 588700616 714698787 985850752 785408032 968120527 729151383 127556955 227745647 409569974 398346338 980568270 60544422 474131656 913265169 141577335 455634885 955046967 884215381 856430428 153578865 762151704 687545354 793055208 574273021 579674482 619909685 513192178 707077469 184154155 86371582 145598136 736856368 872465426 452798141 535857118 251374531 512612069 45066984 519420019 827346686 255738946 745965351 34456297 347764605 810197685 317942337 535747871 735940476 518882986 685899563 927640409 38994405 321598851 421045760 138516294 697432901 1516664 945419524 734155517 255720148 636127161 986857381 659813367 91012978 147087698 186989425 468967450 209309862 329576513 112027429 867237559 181717920 953007973 357452196 645727617 140370996 466025092 607816443 459419027 918361575 528880982 683922266 745236596 86731995 361733744 909954594 848448787 686917343 247985749 661405392 378781892 57095790 928568940 56598549 755184707 529172902 53920777 703539902 407477431 867041101 835535202 192153290 476564650 800064980 237979292 188456541 184990999 875084369 210421949 327449791 667920983 597542275 407940280 134859623 116735278 977906898 78323815 122569964 124625358 437033805 754738569 450321942 451624139 155449003 748319945 788573390 160448030 401591373 187955380 961020711 140268081 155522615 703922379 23273050 13084366 247046683 177232491 536345038 674286637 367284815 876841437 473204239 319211496 785755346 866651472 289882060 713147400 555451468 413461475 627896035 468579833 548562189 714033811 959866199 249290638 708026890 770511176 886861395 598979078 936206309 762161624 203564841 313232136 290025954 472254715 393878615 497725342 334368501 777573711 741753468 644578113 895993006 880307297 190960489 191173320 48277589 800228255 574021389 651219327 86437835 39041380 199218309 507399697 122601631 600009202 44756242 389387665 403304205 158920304 690483491 408624767 425847024 129000434 602032966 814188990 385556689 536152688 587300668 963129246 601586398 965061066 832899300 714846418 816759282 97090252 560315725 468108665 23842441 14607908 7684519 261918741 648804808 900046190 684913743 362138774 767775876 508064297 454726598 792147283 49152560 848181953 567116218 219124741 152108013 244695427 387472383 631129813 977993090 359382444 807808396 865746252 288667230 985258589 357913993 110044515 770161817 668181919 134409277 278611060 870664687 360491873 102384669 429541450 669065931 997953660 172721861 365155852 178059580 598797238 299590647 430971730 338753526 469272245 17244831 413161755 371600221 732477195 190671312 188043463 531936372 385649454 825742278 155380520 828842990 890855814 589851364 159738226 931944737 850619734 721107637 488085059 476243721 360030162 884240109 842565277 835706193 337175314 752100965 938008817 74593607 946869018 726072864 344187409 477931745 883890897 498143823 732367933 790595520 744870153 537481534 464371225 207995946 408308601 681124460 896393650 657252369 682486724 286717308 265290113 652669962 942703220 625469240 110088540 301403221 532781562 740616343 72434574 957464535 424040369 206056366 390133698 513263907 115720404 21007558 124379662 124024684 420595090 396362566 920369647 572366228 5848572 176322244 849352010 843082532 904273672 110645756 736152429 884902214 337194907 138724815 111064589 978102742 841857914 890083913 10248772 54386770 609320027 151051163 393260446 368136416 184882899 513174309 355660034 492653904 438477157 409913445 141029321 421155866 678541691 164129802 898527406 808816989 147340902 765422310 921939673 277501918 142517855 391981303 237909205 599602190 808547206 457795674 619561366 967401734 512471782 627028577 502611837 941950338 398927729 135881851 932020557 832170732 637095164 643116869 110609202 937149010 479075149 29412222 169665475 78922603 33868555 670891288 515660030 300640663 88261319 699880485 354237254 664860380 686689275 758727130 577320555 297679594 394636296 353680803 662176928 294844952 503707960 158790661 646505859 253079655 794093500 16409013 117357849 353512570 513753772 775120014 841891023 241624231 793758987 378115220 404506749 848747998 182227136 498495219 718646619 58188995 410177950 437043962 223222035 299602077 796185183 454711083 477312688 375059030 698143139 975119909 155930537 828342157 894571249 689761202 734436566 512441213 316744126 723705800 740289412 797664269 726452322 584894338 404693596 893572301 525649182 866038818 17086067 692059637 16952605 33294868 479007302 881558371 168385389 736646637 184427197 725069727 96586248 792203621 874474019 691531991 596324561 914032737 453651246 569810917 865060496 278452202 365666811 272320325 872345593 168917303 22178575 421242912 751931552 713520289 639681622 420944199 42723850 665280685 290634280 337094701 970639006 883076355 513388609 900624372 578222257 273623417 550458055 44297315 71108985 331870985 260973380 197403881 769922073 568421078 889045938 604590492 149829271 505977133 936237420 306123327 957484264 932009088 986980406 293971255 341058531 991971434 441035583 131768977 322390603 132905649 346523676 375663367 43052489 367176251 273408971 405524728 694476268 9915934 397509038 845188971 433679151 123867799 874609813 840664335 491154932 466106888 700468663 312065337 170034051 922485755 92486061 250572524 93393679 611865636 406584188 890612687 286283437 153143647 855504278 73157423 832602210 418487982 9291471 481303813 573860120 554357309 211776865 298090222 555968924 315881056 103034356 633054004 926782893 37533328 499885205 804657092 744688870 607433330 752845238 232851256 765392855 822323923 988746555 680829388 243530987 604529827 876585315 570201707 824220030 135944188 327300573 50207134 392771280 498907431 443592385 6489253 548941070 482678666 64710023 131435606 969514565 483689147 122652697 455061569 885572465 289919860 636078530 12097422 446782832 39400089 242409529 803963416 396561423 360856117 254599831 129265502 557753087 474389626 339511910 18235785 708613844 804233414 278634642 246356067 586693654 943785114 629357679 828994150 574072875 295900322 267796666 779536306 822323813 237709745 378074781 831444750 107132667 589594563 130499743 835184874 794328592 715996410 789529526 840925277 28709551 411852962 959999555 683355684 598860743 821908527 28929288 857573288 164580659 724244026 496202293 690629625 594224304 621554568 909256797 910824651 22461678 296421893 817186174 309887873 923202169 626961859 851126268 263350817 652582603 21893627 285073832 568607320 172460871 266030612 201570484 145519747 602370102 662338200 261948605 623622299 712251272 385452093 806772170 429275467 853120790 553023192 579163462 687849184 541823267 365481585 230647562 293440594 175359959 530029104 208220238 871228482 709068548 387531116 786668222 931723764 478346083 264139422 260636513 9760859 317702549 172263018 457267119 69238539 467786018 730298523 63225990 181196612 964173694 128051493 104436521 13639919 583110913 813726497 585952839 278966682 737384426 419412946 147405045 37512573 801637735 57865640 464442286 126006901 15625862 154707251 462589276 634533643 166838081 321151533 683961928 251441007 333141368 287063675 318956330 247562870 775306230 948881193 394490396 196851361 15378794 667955046 931386791 760785687 416523634 296110482 504233910 87363750 967441803 732894769 589428894 847242441 669301791 912968427 664037919 740090010 241259390 564191635 64001112 217186276 648113380 848917796 399746270 383804948 831374195 564090565 707701154 455986498 589158192 145453759 476160003 147034928 517675534 539235716 144972739 523596865 50807017 262092976 816369170 81685127 214366336 487374344 433318534 970069174 822568058 460843127 704622107 983049523 659440236 923389196 943749172 548916478 360819409 601782280 79760803 644675789 210006018 774017482 874444699 203591154 709884752 395675617 830268598 294309745 68068329 970030589 480124927 595500782 834613223 143606520 998612958 240143289 922558795 541061595 435799340 663095752 994852094 676573901 74938919 59088573 152357331 476534817 765968239 563333341 73260928 744953173 314372886 201957913 805757354 932826123 865512334 89513222 645636822 952300813 289893049 301195749 210852218 181424974 959876822 85144477 548193004 571302122 818108824 905411772 755697775 36471336 401244947 440482941 556229161 605702254 475327 36053434 584811055 202514768 917223560 956415484 595123576 672592269 831834550 366318711 868351718 851489796 364153346 204599547 756072005 628348098 763321482 304406282 670182208 519405050 682813646 583644878 200978551 580996873 511507905 709252116 994600039 284588911 844855989 200338771 555523194 651612633 738818152 437569704 305523712 399680283 38156286 54099680 688029494 819879215 909490694 380516454 274431546 643831353 125917047 670755923 834670105 806356867 973233321 825165157 378672574 750729347 484878950 80110851 951795976 561924561 881008857 53936701 930830263 890931761 522933398 802611915 687967857 375061391 168471967 902693898 80841674 887709183 677758548 641056263 167125308 931217597 881390725 44272745 914523687 42998057 568909927 850683277 898918611 22514638 781563286 994072942 799457139 155717475 97724954 87160505 75154209 654215619 374447454 449953721 817106652 181447917 682979126 815154535 778374286 282006033 419853541 816326240 418301963 147090047 812968456 490514927 11707910 422182578 543471539 851288318 652214567 571556689 41353047 216838440 185706228 586048548 335734228 584053677 975876830 605975841 909935215 748362867 653386558 985470815 151210450 26668808 862008408 307489316 895580951 923796901 966937938 344736219 313479353 588922918 609675585 454706457 943136666 822138648 427648536 37591444 187838990 276352678 115155903 159579956 511255237 204444584 372662010 990396164 336281567 350938270 72573054 994949175 583642080 292480175 880702437 831132454 911040692 70987432 578396331 214330453 804956853 205967365 162280253 786690416 347685787 888893920 843651564 932942924 519243148 639042565 417172976 883838945 328525336 872308704 302301293 842298709 401929523 745701768 520209257 655226608 42380857 549666497 846403798 705510696 518388464 591026157 657687439 437980055 100656263 876666652 877536340 152307201 769807505 330771719 939819727 416805201 919558154 200713229 288044174 282116251 590021725 438726964 920851472 646776345 397120592 786120493 684673969 407427117 524800285 655492428 543301821 109540452 118243680 184492182 825673316 821480562 515947038 33736877 293370049 25720626 412943303 501123298 129197013 906545063 804892971 144149804 393715847 413093885 963188363 27190571 915928489 335163010 629191819 150306599 118906101 433014457 567058743 465086221 705036813 626397248 432551687 596745588 636733304 988875237 332246486 24741532 641230251 675669147 634046444 253947760 760184314 221507195 613635828 309234298 115955114 370475465 39003394 838828788 4226789 515403249 57899417 408417725 54265273 154947206 372615319 322673755 671729441 100507205 830963021 203919356 364927999 78540815 82574702 702363773 384122395 870717422 358137373 843855192 778794277 700419099 683371736 256236213 118525880 40440811 609354896 847636580 311438934 832803557 710762650 689222878 298621032 350725040 548871092 232494144 281451839 370801957 386093313 594422609 161009939 277598523 272386832 982628994 366717959 222655510 690559190 304365801 92843808 702861573 247868592 515599685 166125911 576746356 649249635 419309310 26899070 110093831 525572892 178532131 25666138 581150584 195445361 679653739 662182805 246013371 864472414 107299127 895493821 646738652 401192011 30868107 292861261 783096860 44630275 581560088 30257317 173872346 63441338 304529206 864737040 917220260 372621331 735477477 397796030 233738026 228700171 857742537 500335819 469904716 804778772 954058035 65001013 772043787 246927108 891562267 387213540 293173903 25864472 949615391 543083182 416890928 204501235 403825287 915944523 347961191 562915236 468362818 465947227 841499352 134195870 223220199 499883620 469206095 243326147 164252854 770697693 166399418 263285075 550509717 699827997 709573692 212139775 619311380 693723236 451536661 648812761 530631277 592491230 891633839 506953057 384458363 707083672 673410972 731213691 9221572 775368337 982923164 373860723 514130557 528776613 118079632 802490368 439255930 998469536 520387971 813551425 350319418 899567411 429026727 195706296 424323813 379209719 964277080 237052757 189358410 997511531 994045211 77334635 394450400 284322301 33251480 81754294 608697799 162652155 543132580 656135263 106544326 141833884 600757053 764635889 63251019 653629703 176903298 370948706 79066222 973156675 258840001 510019087 843099889 694370110 880751466 131752892 613834295 977088468 674010909 556185753 159685712 842887112 996438682 647039546 629391351 75043520 924452045 235117978 198327175 399333968 345714889 758399011 535495688 14764273 754803400 165130397 894803501 728870144 570687280 126370369 499689799 411267530 271148427 214918570 735474266 221966977 406984074 957362144 952020748 880845626 920818701 925547853 773727914 901159933 397188629 947530952 947875632 555610541 343439818 640078991 70614075 235077919 98002821 99397444 688135182 840940553 830972604 915888376 193881247 30177295 669792535 795307550 13129859 818683833 783989087 727576213 516857335 387026809 328877188 901897377 942954466 120552617 365878953 255440879 424724697 929333895 376484873 30234773 987234828 71339327 89377301 408025104 3933791 747813090 344099933 209752644 772708694 499485289 575386012 511497858 225552932 396629172 620198585 105083514 312110750 729859470 24971197 804008782 336341573 601774248 271943386 463289472 480262973 962583706 838904685 959909121 141394262 602133480 546799865 131830304 933143818 207199224 631283753 776930976 348635255 859337756 349079503 186795428 336561762 657747599 506299878 297109434 652985660 143450481 162547350 458402775 174232607 812555210 93313316 800587351 126022084 146326671 195579144 272926207 190793112 443863957 381910236 232648446 959664296 53231263 916269411 982477802 171942058 562316374 17256071 151530687 285665024 868881228 779314267 801082338 781253041 529103101 443871773 732026657 942933608 37138114 47497516 856233135 207415169 168743660 492756505 25127469 791836920 31249322 315022226 599565213 643594103 843739668 841623415 886974572 11217740 677148461 614964678 799496819 963155823 374197468 911457199 659884269 660950140 135521525 156509826 153683327 283482559 917302319 859707067 978658101 652847652 188008237 959322366 362420614 473599300 708704119 341777686 917147984 220287582 464571517 445424886 824358873 263314264 230276763 63882683 551279048 812996034 972981264 570837157 956570170 770357717 365535753 497311779 606628265 490168685 480079762 627525315 563665657 32694547 243630760 367461445 11226744 88535797 558016812 998428811 125987549 614130156 730325476 885414559 991021124 526518903 127419782 798169014 855276336 457843644 661883817 731308586 239637396 234002571 882896332 275154558 255820225 996953692 486813786 359613535 796333426 605463631 151960999 158084510 435376851 950160935 552980712 452326712 718454122 759091543 370938691 813175889 833697074 425256949 235961531 726567218 636291973 551558081 638908743 364103247 341806122 782995234 721559997 532712770 55859276 718528551 877216477 437357523 466232709 143198598 823712340 790873831 528488139 979106210 596812211 572843926 14261128 984711039 629614961 231880728 162900107 874886092 51341806 196872915 905307909 221512161 500570742 367061839 620637077 302314174 741396028 277817154 160793408 810712586 911325015 879027078 375119477 1671957 213350341 573638944 17848838 853519828 499381364 234124859 60674099 391298024 135040052 409566503 316519838 106313112 914634940 316353377 730961498 833510098 383481777 45753998 276638422 2383921 827875738 939395959 878133493 487093742 888002792 863115536 397933814 391392503 745388279 111876470 988199563 841157589 800957699 539171051 209689543 795134917 893385531 5358807 593273896 193138593 400743853 109820115 352232852 650005749 249955665 686968213 183103830 46490861 250205963 497709061 180856102 273962336 89264293 257283627 195099168 234885584 784594381 695681083 246688714 115039843 833042205 50802063 672096014 643365097 339136792 155848620 63615814 573707735 840448807 10829118 453361453 603525964 427286171 800848665 417769958 297429010 277254571 858707250 645079042 916639897 784935547 971598773 524488822 7391221 509187605 788760038 258684317 472095460 989351271 761253181 669204540 271978708 113423947 130418770 936246915 916751054 903191685 277211115 271930628 991905418 492674234 955757553 408134593 244053355 98276223 147620472 827506457 193572213 701353037 608022205 705471709 643681879 697491587 251758625 818457410 641621610 96494698 465367342 938671591 422797740 396622902 224829595 532336845 933180614 949571838 439044161 171024228 816536583 442795972 455349794 310674305 995180642 197714036 594330478 298922081 964354170 263266523 866226547 705790888 215740824 178796467 295267505 820882022 401672360 55175583 230840260 395305998 877944643 556360230 274432640 670817662 153288871 401094333 969671890 902806012 33605306 719912888 415664600 73386037 467349264 966494559 214937814 819267388 370520029 9050837 258093109 836096912 318871806 558750509 42346632 279356439 203008767 81679456 630688140 820524831 995770892 851729491 15403813 226642776 505888510 492660683 711528029 455117542 973810259 315362683 189650535 401367114 99703090 615845627 926840732 678764402 620615276 700329933 450777218 692717748 482231160 137264731 393381574 263209423 508809076 241210613 868818488 569872613 44078120 177117908 230948822 520520581 257804547 568495900 204466880 152420770 227877403 42391508 559530306 601009819 482658098 715210989 224723923 607306806 284553901 50345794 96228362 774667168 624375453 44273042 801245099 730623596 821835190 48123784 453355426 448374172 332228189 881586356 90633474 554689169 774176658 719799185 911791624 932020760 724129290 519207037 947782421 539597672 712312091 144320708 232627124 335776544 477387715 284087704 892961179 832954432 844085163 357020432 530339747 800898364 871569438 678397231 536359118 579637476 602261273 243463386 772305225 482125686 934967862 877747944 284238697 420083611 767471552 990748945 845662886 933625691 111646630 4979445 954140325 540655407 900596863 277072666 534288432 718454515 669311111 409665016 28660284 88874730 833560744 647942885 376135396 676238022 900631923 189696800 481994346 753370777 227286044 70953685 760183866 688352224 209972612 966082581 92537320 134195843 361524016 642053080 364739629 388244429 444894293 208986370 520406511 280704371 261177539 494572888 543005494 619136658 845985789 868650128 854424225 658308787 373803562 994187582 780881488 866481343 832613659 350330344 246598915 854142988 17395523 894843383 475302647 380932440 258999490 37354169 432775427 526431691 549259364 384480359 806132512 896852973 563076244 647926054 757970290 75951799 313826922 15276028 359099208 431925891 403717799 163908573 815741969 621287960 355484335 613277345 756934761 761889191 543192978 342173705 115284757 322638783 718388491 423359165 617905149 853580896 601802357 147845968 674302774 753718256 633547736 251751228 770166780 116311610 933842151 821434848 702236595 734397815 274434548 559222151 379436259 186791233 940316929 367169120 876881475 639070111 398058165 996378504 741015979 466829306 258577758 106478591 527827745 570166318 17243127 352779691 387286477 599889780 318151450 792600160 613250821 316642676 514577 198669527 520255813 251913528 395300813 430346672 501684013 71664695 410586080 984579193 156941961 308948812 449836942 408832669 404548943 780752321 192189630 131012215 881110678 584279617 868222205 767608394 132426662 638823391 781360261 92849982 840243432 660787480 985882928 58153063 72409326 928860374 554200973 676040633 371962229 364039011 86404037 37269273 813018209 420800885 725516977 6413135 392667834 983777064 571542735 147860748 760244661 185077507 899768138 334788589 865102766 505913075 969958127 271907180 343269161 491649354 383397684 30916088 119982542 514080714 503231291 437507554 785526130 343088790 377169609 807574624 197425426 513016125 200123215 965156502 823298510 108946352 994004705 332786828 737177588 23764307 708448067 83700276 399074806 317313506 386991832 789654632 665942384 79109266 212837810 164261350 903772197 505859831 780845190 457409626 646751487 75112460 628863927 671331668 866403600 747185463 647533128 625267024 318766232 745200453 953884394 765964973 504386041 868607853 5243637 343478963 641909434 644727370 564605798 995905683 970690706 943483619 51285992 894147691 852647516 535175586 344390600 454152247 944591643 170051426 111106301 30939874 343734521 362133082 972032292 140815167 593782346 522977077 849443467 106483972 305088139 696102909 431348506 11659735 75261786 473105191 799694701 146517053 499212170 853940369 542043582 684415145 175856137 222439553 807353085 988675698 714523891 956288673 159350704 763119325 968091275 579561738 31395604 563073041 848772159 729279801 32162823 702842910 431208348 161744147 319218702 319852033 6587238 468902882 694439002 561913497 705704057 656440671 61703364 645873583 386140901 364396708 810749130 502493426 197886168 535486779 893890192 78672128 902666162 154626574 719870442 341443161 66020598 772697715 343059279 572915301 940326732 42316581 192020699 660735605 219856778 103503181 476920661 371077826 389830061 926039414 125565742 94790001 588742098 341692564 667885952 489545095 473853256 201970953 514573574 282902516 722246020 765239191 497775400 386919574 362258206 317054056 25850104 724202796 550270684 315586584 542354986 862784097 549131943 180086432 524091936 758204099 430720660 622365287 411645663 59206605 253063644 648177465 277555735 874886879 615094756 79403850 367183391 536150597 399616312 282805307 91613943 163418157 15164042 145445390 23302980 480744882 335937972 347659827 310466393 400270807 266068156 341043324 242927659 932085890 495695052 701657128 334517848 673747335 526140727 644730079 92013867 73726363 980152952 915149736 947404174 603706212 945180467 904186878 939383071 671343209 928374578 929205948 58887960 543126557 803412586 731762983 134234976 830367956 976410613 671222763 362814347 876310742 980484374 158409761 269209549 154085195 28616251 566806593 391592963 551201601 361737205 263742773 534482104 799682224 299305471 916207433 296452634 406830464 123747387 587217713 888110339 19224181 243416503 375614219 12142060 656656448 114924964 359151452 342723585 759240319 798155360 103306258 775234064 75524783 453382765 798003585 767359377 888170809 34533748 634462568 286817697 514339441 498850636 371593707 302156299 494579597 592566510 400462487 72108601 447184307 990533501 738987361 706029639 304387302 638068550 646366632 634697202 731433244 54909627 834248497 344823715 690857262 431631223 646811943 973378919 363374554 998884668 507365664 858470903 967274190 436625144 201193501 445250480 209469334 125880255 111597950 250988444 653307056 385183688 236600851 920830570 910085243 917526394 543276816 889297774 373982270 288729695 101717269 652955053 420318511 649479723 521861411 965253832 138260324 343456695 401237931 834443792 35819742 536115718 136928129 360534912 361793672 862819657 340867297 46368948 299833653 681374157 557809264 22563827 316706968 339665678 133852734 888245549 825613401 937769139 351314110 43984122 521482494 131572610 183043023 216145304 612063480 572678261 387600309 684828142 723665825 142273441 177238045 437948047 734016056 129583437 776966940 659793580 484131051 515855072 473268273 432437032 686746569 694027250 382232896 477874059 834513352 990405950 641010070 522138883 825591247 722297765 412736747 347978598 748426146 869674288 320729688 863882295 630739703 766823961 185467237 436361625 814254178 47641527 40116476 742090588 493249643 598844811 370453625 25649658 43648117 430186564 272602259 741930385 873211859 796523189 970380401 930669287 835272383 308362456 88204446 941418091 535687003 260605137 772247572 168667959 57170607 220618730 701352750 603413510 117607853 950503320 848177331 459939909 475521068 975982709 639963852 806975742 108546033 542139205 473524754 539260394 954075555 873851379 699518593 527898731 837372884 857218706 610365052 971095683 98621437 958451293 125882836 702881255 901240701 225668280 329302207 655623913 180825760 578952238 581728980 427946891 11515289 71097715 926919710 719772275 104941437 519844447 587333130 638787058 942245198 532977912 676414058 659731199 13738232 473710186 754734207 549284919 776069707 590832649 648507880 948557538 526447614 630130253 56449979 867168242 596150 735752664 755853158 396556028 501207035 636462205 958455754 774725953 557294395 750397991 121496619 968569508 73784018 695193077 223567159 844166840 969036034 25398057 93674497 62331316 885266677 707690031 462853899 949983095 796294584 292115355 427148596 356937862 602088777 948879143 592277198 964057874 530595206 749565620 314677900 561657845 194859320 106122581 431846028 132848041 930321685 47780917 67772244 226774361 105590961 557926835 95890641 444263889 405787535 650855505 457272662 945252493 976779801 41188797 739586213 1956006 430678175 927131079 262507740 885419498 204485721 374742379 488956305 112646085 838055533 277289933 548164784 308275277 70556894 510191414 223155615 410961219 162688420 466519583 220637725 24683278 813438357 912892444 747938650 498986941 285027696 701362933 3938539 777446406 110059745 946875285 750365132 92373579 787212152 883765004 688896356 876008338 257528240 272590232 992659073 204788873 638473704 795938204 606122581 346481289 418853741 985496741 622427518 105778320 747558763 985432674 690548996 662643783 399877630 429954481 653115731 481748218 164340519 478835093 229609788 694874276 532514769 343592502 198794501 796342499 786337483 47055341 660749131 242686972 131129292 113160242 322760734 543799777 506657405 269354152 374757878 332581160 495870303 59483677 113285804 948171792 757260006 607815041 95478409 72349570 665751662 23399662 178968376 771162123 192138039 597119661 586636494 158853349 395209062 645396517 279104202 346412779 169961746 357780713 374718222 847597480 883518256 402613175 740147436 227962954 812687013 985682798 834610710 284944040 564763448 116850207 449878442 244644419 15599771 339747320 358288684 347285310 476927333 357870681 218045325 909184367 795081754 540450496 599201823 152236359 503616034 488782813 859153310 743583974 417972944 885666943 459655987 244225814 171796570 931776164 469143913 82691654 156195557 657824878 689088309 878092173 700087672 487130923 844048630 50981286 965559044 791478861 889184110 846268414 786049378 386551403 541247185 962030498 902635607 498173519 309242284 139369546 37894790 835064798 606730240 556424021 188410501 72537903 963514933 630581449 182694349 67562364 26143251 161533013 239952828 986409002 743488978 68527698 176065695 788703171 261310736 774042815 424631461 716433144 831426512 660629058 838063334 440122792 800475520 345386795 467555945 920187351 491284473 88428147 112611088 744914603 921271410 822967477 333395121 573200762 959421077 392311613 844737539 73629377 1716588 536733942 324346280 264940320 61092974 838051194 505045802 148038244 107577977 495159817 629372922 807522946 255836881 978961543 392039536 421160082 552370211 488714887 129748689 552626649 561770370 504564284 415673409 700661955 209017203 399717768 829818323 135845857 74306770 367417587 909634944 307170031 238612467 692679338 463716141 811992529 275021705 199527815 453983646 112553872 804423599 514686980 182660489 372961124 265806063 934243663 196943490 75970469 658973489 640261682 964830222 945101014 578760908 711677481 130804887 862315682 717089153 124755022 603352683 7878369 724082544 248663659 400666820 703489670 404758568 646070257 496543942 803540155 263735201 901929203 122063480 540253129 289026868 511479092 7863756 28909090 641025707 519358744 722941338 517715298 742620973 227977907 339016869 423113550 195563092 914801334 504176789 589932750 727305500 753660295 171705594 54314235 902592234 167980583 508177488 361774089 449659021 710263625 413455095 417714784 321298745 243292738 978268217 183851913 365263240 269438997 233726279 634722617 83204229 224219749 656483896 947477067 497114777 708829828 508829969 258424256 469401242 52494953 447193271 448355271 950066889 304617905 747914752 731570863 138386886 718935205 367576224 189335030 69829536 681727797 606783 816880446 383651022 899280374 208360800 319208276 455822122 498343720 782773366 947323691 428644094 829548981 704802012 420515549 992871410 937517608 624841171 20520621 761704481 528730044 54035843 299313158 807662851 555035468 461486075 798810238 400284287 921960548 951817272 848354510 314050530 598357042 802763037 442132954 939435747 682798218 413804140 27838381 844843165 756211950 844002783 125292664 136204438 935548295 207595014 333238683 805213116 804904478 20728171 974164628 623331173 565726002 474695539 418865683 80329291 424922845 804589935 810248936 356641684 755419625 561964951 877360400 927059922 775296707 428919824 34539183 566031861 143597186 486299617 399330060 726507612 254179817 959961597 804468639 958145485 905421914 842110008 192471298 23042163 310261481 288435290 536304631 248639718 16290122 130905864 65846889 997635360 785048799 132484310 906067052 840723850 901802413 869416765 571693372 897566705 339973989 296347034 641313341 821071495 119671900 548953658 640902136 819463403 288349842 631991632 720420640 48151840 714621104 606619121 81337749 15268504 224684805 357233952 569068371 383575846 755816583 770282182 491740554 964994055 469418452 337781942 267328908 430550238 189298741 565249447 672941525 130668733 252860059 164284476 695183110 526298390 794241176 920307196 19495662 656775879 493008752 275638875 196238717 293526805 411998987 103382961 237498320 229488813 147390194 507393085 456735531 790019237 952893797 482184491 589578740 985548666 633313339 823316365 373309636 321315858 326832128 704053593 239131479 455020729 769310945 9651315 511084426 71276581 378814393 394152356 613720175 968031347 842210049 145586077 282637109 701613607 41357798 63860725 461792310 330202928 737976629 400150574 244200443 911624162 385988197 851272887 611243050 466249213 575623829 445769177 868606616 327354275 715646861 812434128 695139394 887311970 979736253 718635712 77204552 585431601 209335864 335229362 203492601 49740906 915042245 303999890 746188996 352050390 174019012 370464065 693461832 104172193 761557576 581902200 596102215 862710623 70777350 685047271 818488491 499033613 108052320 716607004 400124808 586739730 205430109 31887504 622428952 277570619 214200488 864762791 10831299 114342332 740787868 468524711 964743951 329438515 805945913 71246018 871666864 444541351 205172004 562453522 71106949 671825793 92953775 803383448 850934412 928411544 846193869 575342911 59539444 168235053 697132831 29244629 854202385 228499937 484670447 469548820 719971419 645056706 321382183 720171424 816701046 789656902 750901602 815299841 766111023 922866506 730406625 597108647 727787894 810920210 41325193 416613611 915849579 371530830 459325670 954124814 428517198 516174611 773687605 595744060 100426378 681132763 242261584 636698245 412629172 130557836 617746882 499849953 452391047 452664951 591694520 21631795 15804645 274744654 996110093 410974018 174292441 490647343 14837818 170800320 59932568 481440670 624725612 574891595 923956093 990312330 507630961 632030812 52813064 7848009 302041022 36036193 521268971 55298710 988758387 9528747 630991347 376949144 695609688 863982195 332346909 511664090 997967836 293358811 184702349 987951701 505637400 741596651 12837263 645726050 303371465 991364243 336856979 867227593 950422357 663442094 699884600 518230455 585533646 256466431 102159423 58870207 558177515 97494316 967159700 389853664 405313290 235610825 104825418 382414979 770884403 393670220 178813852 779756908 258388245 523538712 151494385 683820250 806297862 814556025 695338700 227019877 145475336 380042650 143855080 397982739 362615232 32083099 707548191 49488208 516287871 109391736 298501998 480481780 560178491 734901791 185152265 491323707 827687827 666399324 67369535 205014219 110537679 619228909 659786632 332096942 166671068 876119662 935719822 139749214 749280342 421207661 455497751 229630644 34037625 616956506 397289753 623982840 859153964 861290126 345095087 538933976 534528000 658443592 61527323 98723687 349310765 746841015 945532872 496834851 766428044 875619558 614638667 146171633 939948972 865126096 778631775 567583 695050681 276960090 545424870 656760416 509889161 178344264 599863789 418031829 875492511 847075151 278600613 602500863 879292700 882338566 934448488 188549838 768578775 706524145 665201088 67802776 121703233 375465589 117972563 607536152 608692603 506491110 784656627 454041975 305711949 375671423 87179423 826279485 814972454 976763485 547047544 144174177 469442590 263266954 715922635 114688321 822696692 965097723 300866568 140509349 458446094 845274246 116661198 386835892 615549564 776372717 901662686 118067208 571256822 504357594 443055399 383956638 407446491 832403165 873796791 146841817 181569841 722115696 713808074 696724361 390087336 217679860 191210949 632425952 82459031 742690995 998027061 295611517 609487615 150521308 980716744 201302630 164799619 337584525 743813983 296256008 715050359 79047104 20505082 421029942 82811345 772919143 467725508 379125040 544125229 241387339 512114194 731276698 937101782 78082858 906148702 468660099 225014714 74638501 123313229 737681247 428943216 398195266 765246889 307563785 952406330 575665783 713860707 117961416 345331195 43948185 490741400 660067403 63963715 729789421 680105103 345051045 81967948 191207577 738931119 652959826 266544114 477105839 913408906 439838268 787446206 955394345 38081246 26493100 961349601 41496297 170670735 882078554 642268206 937636278 554977959 153758561 592682025 697608005 399684953 568821320 202239477 842417196 607999487 102330619 899782499 636054252 548253215 590608591 401212651 933752561 17469537 495767170 620922539 895253385 598619549 158339387 941412714 672307953 542303177 813990789 814888857 455392580 760534284 341366356 98710607 467771794 431684270 901302792 211686985 177089226 456601127 769849191 838008048 117506245 75324431 232099995 675563861 692286276 121816360 898666553 986464555 16768753 869646175 852252739 190750677 572877915 836031688 950647065 288314198 366852861 508498590 253640331 90811746 260641337 898264643 554637007 300587089 574007383 81744962 475491198 351178780 181612422 384265040 528489106 311632750 393856740 742690121 664148390 373533336 928270705 988717612 112755810 736529550 601454356 995598632 877200911 280098289 193880993 985619342 868725845 469876230 15839185 605630940 488356417 361984960 992007233 127081653 290342725 541245108 178984575 111033312 710522946 58507810 633074683 149826389 79415423 515867120 447481613 395163181 605525668 519202734 845503479 839518634 319382984 358504340 479284193 978849338 716212331 170113408 31808991 968492145 628888431 865317368 718440425 188706310 268144930 235427632 601862625 623731424 247715900 409147387 867586703 299431945 841297111 786658523 611167906 301805747 919978361 212361460 155449785 641788732 564746767 986380055 824976721 514266148 889023214 615170237 216527316 543214360 603115989 802774785 432200596 991176172 997948648 402048942 334376395 34284442 634571188 48248370 620320150 58819399 31752753 883128996 716288261 549836605 953031608 281703620 740829187 34882541 526442512 196344059 151876460 872878837 455982182 109816147 331881474 758890009 876851283 814633607 900749676 553640513 71860431 288675061 225644351 225943683 260364097 353973670 28705265 883182874 589277813 903470407 44767202 474331753 24881060 378214705 689576032 181835257 406781289 820608099 667056793 574019457 472183495 616183427 989144231 589089752 911118383 861116128 474023563 840896006 923029108 133034868 853290797 303240245 341361620 620899292 581914976 623697589 608289015 468509280 109189342 228440322 83077093 10130158 129097030 421479109 621378837 368433182 457248034 800258753 405661287 87520306 30169828 379955694 267188765 254673932 395878374 535566953 284532197 461829696 388520809 252424303 75552727 636883972 457106835 945282416 778678635 700440116 812008057 504810240 373733514 706760285 192035089 948399062 927602819 725127593 551641153 639035099 221671686 803535857 153585613 738603026 321836339 874981044 901460329 350449591 444105361 40517658 623175086 33147681 712979466 17629685 248560924 430496211 319638260 267119287 608924959 836579449 664688142 532444289 671505671 282516966 850657406 382592027 198039820 442356245 676836047 383843316 797347665 492791595 943981557 412123940 181714653 929705072 702935630 838472297 60064418 720260442 681326243 898456363 927635067 783780996 390616861 912369273 468991528 139498160 747369555 987972618 986390611 793508810 985985091 820474175 243064204 364404198 607582543 38369820 777766733 367312958 732801864 635449938 962962678 171529268 57928290 787867706 875136211 517871192 517701689 97322961 725975314 968930137 569350868 512037823 776886479 848904467 120296351 873414224 185520907 377322889 661955696 311873667 60917676 423349735 760365699 423076591 201503367 754060672 699551103 636485345 620115541 89062096 391901296 938778949 510997427 977617018 399704781 603142578 930298926 118530122 115090803 610205547 678133561 862357552 901690274 751631955 449222955 867054923 677190670 593771005 498584643 751828189 274935754 470290588 215092653 59730254 679872338 28497426 803860600 562701111 480294287 175660774 206222497 122463822 809902793 139878728 146324999 543183482 692086710 334272013 738517362 31459014 706143353 584122294 998603158 21042786 75464080 629116778 882400778 841212846 510718191 99030521 803690576 57365801 890889445 908508377 135464146 746275969 276608307 190021929 55064032 382746502 313746939 981891247 866746551 911258422 105513679 158913758 355014256 929684151 672171936 586980810 10464029 250039372 386349007 211765557 188536491 259022449 729993501 336030084 732431346 386539194 479069882 67884744 244393399 947713776 583553597 913849271 139055008 579997181 264171166 72104624 839579457 746995441 177108295 173231291 847306001 597954058 678197507 685214342 505097586 625039786 330937095 469699434 985458092 514814814 766372851 821068902 812934389 34622169 896113865 905681697 661682529 528882931 419466742 980037354 72765683 474328755 512200275 491277752 606203028 365325379 613089307 985265963 595677462 614908918 522099696 553609609 437179955 696073031 931806183 166674626 107006857 783908827 198870637 999470444 307241893 703573626 623519077 640918986 278848244 708938779 346444560 415224000 538376405 549364950 682616609 457808607 842050181 240759024 927365543 584568157 378488367 747505109 485202466 650741527 425992163 828769044 788534393 425303449 630704793 105298799 280860663 423461902 7732023 513148868 247766609 256219730 383012736 103052321 853918886 290244064 67062060 916139702 305397369 124106978 943723729 66421475 525227704 821098788 239573741 30387751 355560122 769027875 630878446 418288433 656786237 157494518 373773349 852135631 534048097 383337325 89044169 77183233 373739447 957101808 677483258 772551656 326100788 58910362 699390916 889396433 963438645 265327915 880308762 662276910 958227329 47937543 733285329 748720538 573050176 141557311 995863724 18085593 437179405 681772939 318744406 706706647 592750562 606804296 973636701 665309093 798812967 559111041 61020477 832278654 591252389 195060706 792826709 160748232 560380820 927894213 261904625 941596941 838760594 329482277 648655934 675385345 489766052 466948781 173205081 907574141 621329719 187410602 618145858 461218695 380574236 718351126 241038307 156553543 781160601 946649229 36410125 184099858 85525067 402747992 384048761 190207588 837788226 49340776 309100742 915359970 239751669 21388112 199281024 470806866 60547136 107927379 854578712 893274029 306036841 539910486 710679272 339747592 851702555 45590249 413052463 120409260 60283245 998725188 457183510 506134274 726094812 670522180 999813811 14586012 573487949 888446578 477270779 779742007 230920718 251440639 309011919 239749302 888620754 229492927 444290553 62735906 953806778 38160178 447079978 586440882 232656203 782472320 910119421 959035585 380477293 19246459 346649842 938493134 588595322 646918036 339088755 875884167 583777326 127268847 255039439 831831489 28072110 215488080 689289538 671885682 693373320 181197865 592683244 163352773 351333552 201047953 189182166 917102591 727214468 677399111 640980723 242991509 244155851 719350960 115167768 11747617 815067310 288152796 796899082 404928107 586738631 216150407 100743027 129831510 443759119 992719626 15062243 106292222 897306863 75965553 142447569 84371866 39753008 529587303 224638624 496642957 373392907 843815492 273066650 173564770 540665884 119369995 708410609 192884945 914556008 425938017 544528314 3870381 864650078 495570322 785472251 982579712 77017553 6762652 87338394 921623795 695690239 789523224 542691435 520810968 337944204 662190416 441537831 307319339 341331334 910305076 135901547 2998160 57923428 125038939 400243141 227374290 849455107 23352834 807337125 573305574 57196455 708044307 273669475 490537444 483521533 420702748 810666305 511293456 760026904 775775571 35504745 94267094 330701949 857447578 740484331 307158987 983325705 877181815 788329410 608687527 231811341 962758423 571563469 264173390 85027132 600866133 28026070 914602190 431777721 522373548 724854417 820354135 281989122 603456585 368931731 342729028 843619081 4864759 956589662 126086429 29418529 28586031 14744671 499856007 698043401 374544397 974756578 813661273 441889251 21498716 618863140 959862413 351674432 830207626 142111813 19101512 709093396 605884593 881545295 452104659 155911612 19041930 45249841 408123299 708439037 284171136 311196359 763925328 97936644 653035685 798378705 921041827 30969702 3025834 814197752 317972608 776337699 15913459 27359951 622705153 430799516 683154823 977412301 218622303 454764450 576067090 438817106 383077371 358981225 154333679 135034028 869782114 115286670 26578713 982783754 848095560 662714901 485647933 122193283 388987526 212342380 50919844 540623131 896739362 24150379 641370187 116396986 512665415 780475468 686544076 742836019 824904516 447411381 395211891 816015421 115933339 291938740 170641451 738260344 396554217 25193661 836178830 246316147 808952572 996763311 193611738 210218649 758718409 968554189 798021369 761943623 441516391 999241159 265542774 961746364 603948829 120617134 921197194 983449122 445196629 513324037 468402455 185051277 789807778 182185645 743840417 527217907 732376254 858357491 208150871 66062132 839400337 777832335 472177168 785268253 828968480 494987421 525142351 800940126 474937762 16122531 628936761 770447 552050 198902157 633726875 334285106 531251987 119997872 839446768 121169328 719110959 850878667 595519829 106606941 340646043 160026369 849056401 324057967 28800080 975523296 192602645 212059398 124370802 405943648 588723190 921506350 733147214 240477402 256711158 68649176 806236505 252988950 832523899 104177119 759917608 14452288 842486674 108060160 538740867 175195888 723079159 693986534 851109714 395583263 508646404 167851556 111963053 882949172 339141 52093489 386900938 480443644 204840164 904263023 722386960 615786159 171443134 581572903 844374537 96487398 456191056 668264075 479236455 711252394 780687423 605441973 614606089 352872036 44688093 40451236 676793324 18039023 532821025 79596611 989590081 461037954 441362343 611148129 686086745 41152199 328400314 939402170 519815088 437656264 269754952 911750895 70183913 528584188 842679785 325600646 242431437 803558465 569227995 166252533 523948115 280371162 557026822 200491921 546653587 328088182 633932281 499628447 488103888 825541163 954790891 475647044 812702842 945240181 315950781 473861524 500642592 257669431 479965682 208538250 589694590 477247427 361985726 162273282 690965882 139117513 161606902 756671436 59798554 117600875 948731419 872173458 285218966 964042026 292349008 739530229 7556167 754141432 117968232 914514287 156071600 995434790 582502875 752031597 448736382 36007029 87262149 513022782 845207170 807148550 729735663 668639009 831751867 967713387 153069766 192833838 80965446 955067541 914418535 496008823 688856948 576187618 249684618 37220329 530585271 491679769 301348764 644680029 150943655 97508454 471460778 39738518 40039691 154025057 909076075 488728637 753226444 302362114 539171135 484593889 968891646 511134645 726582314 604892157 710999263 181909312 158734561 997047538 356768717 673752797 84831161 262724618 296725591 514894376 202656431 656524149 892874030 956122918 139723370 387880012 273123377 659620164 643639615 443876756 9577823 757878361 581540895 48016177 328756196 302316449 700743595 81069817 825710870 436647105 184281387 640002465 754514287 43007685 44083087 916800459 597129103 731096868 322016876 768558339 643484996 744102076 774515460 89812664 154911365 376024272 917709629 791036229 748393060 941374481 438624421 993438441 452164655 924819857 338821490 50727119 224181832 942728141 409484681 580757511 313834312 612832171 67013485 267820683 508996329 99414904 990805839 399229498 496317707 281749994 683034627 938329059 626253503 893174560 63684109 850775601 3661107 382645659 599445134 953147072 200224453 523155789 223144029 634566419 758100470 194402951 609830124 811215249 762513015 646891782 148734299 543131274 810959893 138367221 830866803 900704570 34381773 669631962 185247904 328573632 786390211 804409264 438526205 484100393 7919936 552440785 612370503 157195873 436675514 521038853 475286245 981608773 903881167 929791349 316343016 514273940 85055803 209163707 219128071 563213304 979816175 335346127 453021599 291180292 61626362 397669659 930800057 13283377 240452762 178147435 753580037 633410524 202961203 862907122 238150617 86468436 401411407 222370128 417539636 695326662 822632607 939852939 140594879 386645326 89269763 481331980 59364551 571111916 136445048 606757805 705734724 932188297 645014577 442833063 281168087 884274679 474591098 59847328 689469122 843018222 139980245 49900971 477936636 256644112 115691742 631965748 433912086 658077415 668813671 466717728 467316309 664441060 831444060 220072368 211190425 644795230 74197472 339115666 834255479 110773146 264625202 947361500 340325154 892726719 898861759 680072204 834720127 571274207 758858006 523865606 945782545 871729394 366439929 246246422 674347270 764866523 183414340 789065716 796365112 734015585 142747657 514899133 150858534 613511734 81714551 384511477 948423414 383346167 315051496 63974534 411947131 703158303 697611492 898382285 321409574 201725980 630467348 99808897 371243546 424744252 781751117 236297672 953854238 35638204 885422470 890055218 170084259 588593083 185577956 548794549 269096124 866998336 488894901 831226280 672130859 916026944 612582504 499368918 755594326 752789396 151966876 153704299 964247887 68629498 364765458 191985914 642787786 965915167 648965559 948079746 181537064 491565715 985909405 329298539 590480241 48113357 363493631 610647165 997825104 628611633 697573952 184701169 451719714 637824775 427817708 97221474 974397154 116151680 192529334 381223382 405899578 42408121 888744570 441603004 658857846 474632620 973767484 130381543 702806674 842724937 730428708 271106196 141717289 29135964 474544009 87211114 285104773 588624548 120963811 769104247 814078866 660136382 952307158 955190572 878017515 559154996 243771439 904370283 910859980 244762745 226273759 578527351 244502046 270877667 97827845 221749757 374000497 524309429 242470366 420719123 878353658 900381977 658755547 686994228 644005020 634890526 680604813 522162761 957049562 927987650 97595313 193953182 955212262 526966496 383854374 424420839 657715348 185382727 288378874 13946179 398111593 863111076 508910434 40326196 189293447 44100498 491112374 401396907 341639102 361200276 680285564 632172795 445650824 166466830 421440604 561474275 836386305 273396057 352621612 304963719 865026802 524371110 568263145 675839349 706132941 284430363 450758833 197165472 742571682 308986304 330661587 439627878 451205942 750645641 591071423 486729105 91745776 604960842 664226837 33301577 960637150 897160392 798948501 291160610 594439863 80068268 91681577 20960289 762506715 144662406 981624040 37317538 694111567 268601808 87574027 133475704 12527557 747257325 430085877 670864086 501877394 169817377 920009011 368673883 692948153 858297506 281780342 816418571 758761948 618857097 127011229 208682836 485163856 978786004 890892199 207647755 627174152 370840688 234143936 476864875 273494692 22772269 458257724 983536668 467632236 133511107 134111897 305877579 42118737 749126354 759236724 781647884 474812133 639401449 535252383 232489374 240110701 556112243 854832905 250824997 43279821 968272077 418698959 250015822 972534677 364046134 303277362 170576687 915964155 806744795 988025761 248793925 666524896 633674696 570232237 814308468 170737869 964873466 416920592 139264524 978243565 61439312 159616430 943172033 948069402 451314838 157629076 50803886 464007378 188519035 521524983 627157084 274062911 604582809 347503148 643152823 94246443 480768624 176314811 494090770 449457426 528359530 750333004 630594605 677981968 801895131 118591670 106089261 494469873 774026745 80445171 550267293 629312284 504013796 869993765 256046195 489179826 696134570 841972375 318469135 274724458 798305849 496327868 494374707 529186226 852112235 486625330 371709967 233560981 640380670 886001596 263735093 520423882 554376099 520153923 631041700 50608562 421276130 205167323 676930243 368951124 37404989 288525247 392633690 661690976 602646799 971126611 254747301 650665773 732128164 987176995 933546045 303810486 223621420 380125407 419157032 854944425 484110018 212884325 827212755 344741968 697866085 752317368 800452373 882771367 205400832 362901251 452076329 777066311 639964003 908656794 433559478 396808317 439275337 270555382 261519304 589986868 729933649 565782204 276718293 506377224 548536068 158673337 851781049 826643764 593879511 776659931 26761146 358230435 742381089 403682370 224823177 274809567 756024353 742282799 510543412 709378339 220472068 323432975 569029693 937331278 502424537 943865459 419772040 286944999 952237723 226940185 632706914 731533085 254237480 754787297 100827010 555716551 637097549 859336665 513362181 555257700 672907448 765260338 328965741 846672156 655513092 265638729 773807531 167522753 735049653 138992033 465380112 548152005 979905583 400663268 896437854 571353416 482117573 205230823 52489145 87893780 977089459 371354789 94832813 243988374 137888022 428958526 226086703 197596905 316169210 339910915 492257438 923459272 947797584 266003554 297624764 840557979 858434800 660654331 551530683 19230067 305748124 44600972 664443948 821593862 892058880 940389381 341595665 527615156 245255080 97338997 808284617 762294659 27084560 821136923 667204133 511862821 167491483 283429209 268755546 296016877 350966414 542874552 997398790 885679580 172125983 713400047 69094189 712529820 538854754 724550102 925208378 771315321 529644892 156926322 825034249 121507949 857535990 640915951 889918414 356879122 863788546 219154335 452531511 988206261 845822775 356011516 293234764 623421763 273731382 238678189 381762436 905303379 778125449 980029049 575360189 563956004 143267234 193484373 378854971 789886878 559318490 154855004 796802985 374642515 224242293 505642708 111724321 977926515 54854037 4008741 795744796 628051685 138975571 793064674 373990021 525363499 1130658 738749129 7632291 694834036 389889639 65879482 3745068 603364765 956211307 447406530 310817345 128123167 114832991 303395095 527056485 754600997 973380826 167207183 801492103 535200892 129796705 567531823 391249401 105616542 743298139 742784549 440514937 732439719 912896024 318984897 235182638 455792993 743515604 776389374 529249959 262722872 460998062 220121859 884360658 98554697 250461875 634385432 428922388 780557900 977139665 701543345 461200945 936652716 835239137 743978088 476361808 415798906 926888869 631778052 257549070 981973098 931096260 50670447 32167524 210777309 592976084 776218553 55697593 331037658 201144652 938260255 449361881 43367697 83326350 601325830 827298808 551762134 711506913 646678518 705758902 316683050 897717880 227515046 703410200 310893750 437507693 792518383 387459979 172601290 382999743 617856724 229415650 353848155 696793431 689606531 844144477 767477767 714788873 753904202 593203873 641730327 756817804 188243371 973370809 285203832 55266435 620672066 805083165 614428871 583255670 55640032 211421863 591193148 250495702 979796598 222227617 82956740 612256766 730657569 936625842 437789933 647591471 157293857 815587830 775392747 467562127 252092642 934989028 807655585 164079666 715254521 635862630 224253332 742503187 932405537 559199944 522886389 562453263 881065274 887978687 720513432 329303793 801193044 759636582 237339136 19199341 737288608 689497159 605664597 76353559 25776507 661499978 604816481 812648564 63866469 888368327 883451552 721403117 214127114 624459131 489655087 631999955 516979777 635513997 272045013 768108638 122398721 140481415 594152450 883530161 51642990 343730271 463158735 581012435 253187028 210647157 924046073 245055673 546513063 544084874 353917415 703262518 861647489 860359374 413865 315325458 385236261 724616662 158688759 723722995 840527745 898576289 453991983 4951402 943774370 748803984 791348313 584722928 281770187 813149811 627093794 402312936 781448282 775577982 667622887 774938013 932330718 992250705 343670688 459431739 394411526 186380524 212890619 179035612 868539057 263028931 341918275 58296198 562500575 326027172 68427888 522108703 438827967 430484436 145242144 481169783 837875872 558974963 401634719 433588299 289675264 659728399 626752727 522663224 391944067 49039004 558838881 659832522 950601712 511139707 209684092 512363890 843754048 582864623 191712274 593799816 735829131 95908004 949331887 3434321 142288661 899425971 227567242 90845169 910884679 767352981 220408710 331470458 843546808 659612723 163141670 639981547 857304097 715207894 620288413 665589534 299279973 441973304 582173630 144068576 814407057 335286132 777124362 325771746 376325077 71632911 690572973 617153980 5374608 612176629 789566830 512082929 865784644 958903167 202769608 825246185 770552987 123164774 712917214 193576183 916573035 314059475 826525809 111929681 91674027 342103375 246585333 448342811 709819265 462911699 993990782 473914716 714362425 943046587 435351756 751226118 518850884 365865677 57396809 451519991 5643685 836247604 571016190 907721192 340772589 675329673 292551083 698222472 563626553 802727877 17979560 382745958 338105655 221155407 639312127 323068157 762948382 225571829 839042143 393194412 782083416 758874860 849341216 990582207 178709612 449053905 52532032 652775268 406105870 679039400 412985191 354340278 454116635 465761507 878176227 247388087 742569618 749531217 172689836 503328078 984041123 296075059 667612005 949881422 66265756 743498026 497018446 662500720 96299774 498071882 966978396 579861844 28818026 92482309 92969509 66253702 300718250 40011063 616593381 256118646 157237170 989605668 255889545 483862396 731472542 525660542 954680731 154596314 293264048 220072278 964638035 622351291 57593428 691312431 388301715 357919277 976282655 2796007 240123104 87158058 460457416 736606671 677204332 890881684 62846774 534194587 319820811 315497270 325825906 22044521 420041534 859644350 7717297 545254847 282417194 151976393 801264716 27936904 798759330 48135892 933409738 316229148 371449115 946899277 904431570 720817209 453021620 551100801 805933115 120178943 212242231 852484267 139369468 886426113 304787726 633021931 327862332 915765039 193885013 855769421 226727748 286624234 561098696 905204926 57457546 98356215 867987152 137304348 45754023 398523011 156267134 678514470 984146014 798468897 937222023 96105607 824245146 263577297 709658184 3153098 793694577 349827831 450418125 93380208 871007258 505303649 777001155 316237273 423051774 923065923 907979393 493840969 679493795 907800378 218009606 608701684 100261822 99572302 396617466 419518455 893527595 405512682 774923948 114514254 943646956 88933091 651220754 539172324 960226860 628497785 654628302 774508173 704637506 607607885 921834790 566053119 177948837 551671151 252019467 724310746 495237368 390759252 683045902 94753965 812502539 127529945 512044151 18810083 623224525 542547266 993565476 932622039 594792792 966878016 279852205 130776524 743075828 2668517 799378498 994184682 440614922 690976943 918686921 332413252 917807917 538421633 462821828 28889810 988410904 16985517 834170469 459712885 224851886 863315173 50189953 535038709 119293436 433506886 207819160 281800452 357786420 59879767 926230483 150411839 921355955 178106629 766466302 153420067 33552888 128508069 137263509 27883289 926050227 634479859 2781108 794931570 653077171 314201877 488900130 792386669 834277622 182943129 791403857 349880869 224104609 592321907 7076948 797523365 57757434 634866946 440733677 467054558 566568313 105574153 35182467 946438317 491799735 259736504 203567652 927798221 909414774 189399970 670167946 424352746 670665637 775577797 33217810 863757209 839491413 407803783 50390213 93997645 723417022 555457970 890602575 40279402 565576778 315649921 491003403 258950459 113619840 868602509 944847861 631816175 915001367 952484571 472827572 12536481 32157668 836277720 881628828 14888015 566083822 435339103 538637984 479282404 107719776 258207399 886495074 918472756 989295502 163814231 623798313 723379445 197891827 910993533 916663264 166583752 481999153 373140876 496129571 478387768 410794002 926551908 570322991 768449975 709959055 323995467 179625962 817314970 159358652 135285476 661007591 68295462 343901920 949469273 699146586 793783429 701578344 96855831 966445351 887873990 137697764 53924613 879101647 920896738 55645456 741796979 936392322 283378108 610424272 589438486 175649052 873821981 873392944 871949834 712257819 387711410 759337057 10639063 628782498 224757018 832933822 977763433 431394180 781648599 535742927 266072851 585452599 299289420 913287226 771403924 896138459 354503375 558112981 194400531 348504887 801909911 379474072 758723608 787460283 605184967 225586347 658150302 818316154 789854821 525433687 295001344 618133304 367476839 991511822 873564676 553749084 774171298 920315244 215369685 542907124 33048027 571551798 313922058 382220726 976058296 843445847 310362529 658663170 286156748 280698591 451711485 173524451 192902800 886923789 100249581 603507459 51767911 864012865 263561894 22030778 296039062 664899337 600707268 445747466 164224592 335121430 730516302 252723865 525976496 114960452 487415985 392070068 245537975 394803353 483497921 417020503 331202124 586757437 495851196 986531358 101252930 767546501 13340232 186822993 349231442 543172073 515609201 502281180 642360348 895147280 235840428 290426460 962000941 201720005 994190806 549571854 383367155 36912632 748279096 355317464 104543429 753822918 139359098 983687754 210982377 206849911 642644151 643054234 682135431 784524142 985998438 121632938 29438895 821083714 730521200 646355968 770163546 465595568 689524770 270409674 151103850 406670235 52688176 314909155 197509035 912288011 37883064 233174981 329382344 714478389 811024960 839616410 2246753 475154293 365550772 238424880 978093043 864468300 822959467 10067712 323068391 530855273 181270303 729184554 386067344 810034844 68989175 389508723 305604393 870514402 258412418 261534539 498264270 335430751 444662707 103053001 518115214 48573531 8638440 401342381 7299158 952502860 319811815 966668126 3133698 466241228 557800154 82239211 98421584 4146847 214363229 47381514 46451183 904074160 386034533 491991069 294665578 137631249 353188957 94800169 240496445 607745793 787424017 31995614 418607818 543799775 336134580 419420050 813808217 561626423 391655399 571935048 402581530 643822014 111699883 198128292 696083755 110044494 764164720 176076278 935616134 68730858 301604365 47132725 864488476 372482753 124118459 747770881 241585593 626354464 216580384 277238944 54744601 403821959 469978445 509210883 701986778 819821206 771182005 483689665 764397704 560061469 70660402 702740758 301506964 878242315 442132750 879461357 39182680 184734074 823266804 555185876 397681173 42732466 91148539 764797954 76216561 305567514 781853855 282600280 135348479 518840395 184498116 261704027 384986171 901238009 131029689 135955514 831589506 632103691 175122995 303024334 291049633 284050316 371712077 149105559 213437254 203148209 840788881 880077240 783391245 839053266 276564456 237074438 299573878 447962739 536010152 163130867 558751466 911571776 664199825 638626467 94503357 39479310 316376261 663681496 214782499 908582357 435192274 129120005 93745985 552974779 29125550 888718401 488415007 985035273 720690103 631490377 427418542 191746354 774275505 484752518 665130440 430877395 72401608 181395977 894506545 409341102 501429909 13269126 117901965 378687409 735429137 67180126 76705391 596277484 748556964 578665623 687533136 539200669 85828890 524573154 826313365 231518498 382137002 18830228 466916995 758128653 238757359 845414575 58856269 682584845 693012462 4528344 611804426 555917567 415901464 258880863 54548417 141045988 980598847 437714490 826732114 458914029 175694753 695783181 244458904 344582501 583548899 958341657 95710022 265506765 239271186 475084113 549569792 676024263 855993765 356302155 296042831 461877788 701460342 785738311 622859937 830165444 483930829 808836906 84128851 873341655 235020631 712557703 735650727 991235991 423086889 311369619 997122243 593300337 77044661 552676652 606245816 87333369 416885502 340832477 663645570 953092584 870838839 726339027 193511681 17916452 298055964 89850341 825542655 152649399 712075466 488273552 102006317 273047509 327211720 642938369 80696355 54912214 771007491 192072194 35618914 539223362 185901007 756316428 78139990 895592897 512556266 353001792 641703759 56931623 923884667 889118565 217079685 406444910 947701003 355054566 420667163 685749436 473893266 541715935 479865622 691970653 760125551 895799310 720641647 734343616 698868323 944470488 809917176 161378178 912788894 849145425 338563190 89424487 224664757 1120042 75943312 93708378 439906724 383509958 751722202 938121071 886950613 768458799 916858829 304526560 138683405 532430348 969997768 106759697 571063689 470792125 578027796 561740172 277234401 255884604 649893863 920463365 256723485 259414323 236317524 21879128 987498665 890412017 915490912 788734345 745633883 315798633 916443890 747478462 256849007 917842240 324699359 210554707 914001036 896487354 166479069 665152698 43482046 205022919 811893132 781444766 313915261 908446207 638417019 672526534 854424225 758832798 126650133 571725605 533229683 205818000 82092470 428342489 885756321 122107747 687930528 741424930 253601596 652094282 521422074 758968431 747919814 752664106 257166296 458222929 651663395 710498952 767013683 570576769 454128286 786782867 803609320 836259559 284483055 891912993 829440966 456289931 766162480 587816627 772604538 449705888 114020328 694830192 532185248 526938244 43227911 454705959 875838390 275375544 666431966 977345102 490877482 619460841 68629548 192678664 768759369 134136295 548003863 486392089 776454478 492048817 434459436 510316528 730671706 316341097 297613150 201588135 313495929 798197593 60242444 392903675 868116630 8796661 267464956 260187474 956554895 162219224 982882652 25489343 604216356 35882952 642250431 234443255 242408702 79442348 915176994 257149016 193091761 720897946 934056171 587434988 450393520 514957772 850943977 840525152 324176994 980451494 743835214 852174862 87479313 527360435 172208312 841635059 9909225 505297060 992440369 811055542 586016773 698842201 888613664 235881384 851742825 674894802 144093788 517813439 980999675 586619706 2688037 71964314 333571471 243214567 996545821 173073283 144778971 384991824 882418514 11760996 742387587 240876829 693351738 371710168 277669390 216981015 551830708 16848415 92353264 435764270 503280642 411633182 163094914 543452036 177620691 521192293 303536899 102713431 187441978 601329963 269553052 686546453 536541879 499165264 3875682 159108686 9162030 136159323 535882058 592575424 250188781 375189114 558794809 421775183 177420456 861557895 199270901 608812805 510740604 803337725 888963121 727443733 771966707 192774409 158708100 217687257 882998514 819104117 662540402 378186710 864022485 554486713 797719141 328971448 337783895 479921142 703455917 483452497 624969117 712343796 391385472 826082459 960088117 975107363 401606916 766240189 645169426 586971541 853139521 171061503 177629844 306764558 662779943 837083091 85378945 133717749 932503694 463086297 527731202 350579797 582735163 759454416 829019823 771645162 102172372 238339494 404830086 20781073 136924140 16942956 659336426 499532755 963307004 990883168 640145067 645023709 22265446 884794083 882228477 545681543 672016242 442391168 206067066 721798608 395928403 32627948 247949356 861003874 261080351 458698243 974585471 676157576 608736216 924638660 446622281 607518013 758443371 582890847 262163650 438122271 261346725 72507941 310047127 924799347 56448832 700833934 921665489 696680746 607095521 5585221 259323619 867425757 499619851 370792462 450412974 697689287 230406708 78070496 17171833 952974803 486271412 39580886 602603756 728144529 489835725 972613939 846965023 215384883 507360934 691962467 238503567 775554972 577559634 493398773 533175329 722995285 552101322 755591336 760949794 272204683 643977455 779606881 832015691 426838546 898464395 798294055 910745011 260633200 129684303 108092464 899201506 556697031 184072914 713454038 196161478 767494888 30105241 223356316 248533429 563402570 455849252 865792815 965244264 856451086 671880823 616705120 370761482 47824123 438215706 824021549 517876261 915638140 153543956 661674935 655572143 847978924 423650673 668163402 283130373 516221258 367693596 974263641 580465130 722586812 573249268 379641214 911464846 344588308 80977849 170511745 289604233 403600902 576409363 455574089 408477651 653147378 501400211 354712297 135657170 296366049 39646897 481322909 86585941 816635265 926753235 764735688 837391250 779456809 676386621 830192633 481547557 902305753 962356773 75383005 146263568 153000758 444583582 255344724 315351239 457065619 473578161 678872927 767626779 507226083 545749315 29095467 793448521 447928008 725696803 529317641 382474744 251164554 691600399 101543285 925864244 987879449 846464421 583744276 702130802 29741318 994756720 319314607 99555731 664263831 161564896 817269050 832069334 344941488 369413201 113106643 381913068 539845858 809459710 737764792 862210285 954311011 395259416 933163350 348253518 351970835 929751211 79030085 882436861 856549495 69291187 685594681 40082754 681735104 754109199 899061531 412091349 831123913 416864137 397997555 200689102 172367371 667596756 242143477 470199995 188905134 445998214 500544890 261938050 994750852 782799396 771225867 563855739 937864965 432233492 539697742 199057762 58389839 659189163 797426714 200211040 468290342 37359901 254214248 467847935 187726079 132243598 736553818 854834227 695741418 314360584 137359935 690635355 272291502 536175997 827071622 192913981 303506606 783442372 444231887 488641028 527322875 692736927 927988697 995471944 184224075 570353593 257381777 751042822 930915069 409097887 768223243 371398305 891128856 186514381 303302785 52947689 946688588 79673508 366506071 592289807 557796849 892183409 239644694 529745844 299985670 798017629 355592820 208696287 622276656 664152201 322629965 786268151 509517763 974677233 472114336 714577879 198319792 9915264 476146590 167532727 923866525 791824395 73604501 491418177 288894922 168326469 799758084 466582400 461841452 75346898 740064394 497091050 102025307 834135868 976947192 153415773 872373648 946581748 115063101 295359004 868992438 57883986 977022837 458710487 55312988 102494360 195602404 982366369 202548667 208501232 331786997 287536886 374360496 597207148 181093178 699396032 91259075 851046915 137257073 633636169 120365345 153549463 388733050 953853508 704957349 412759793 726253669 373057749 622939340 843155904 147337568 606453115 713320895 676636325 195473865 886571559 132116299 218362649 226003488 86107434 991289062 249670025 708573206 636683844 90989493 496081989 529250682 8407453 53591419 767993990 298133322 407219902 73459623 586456432 882792615 575074718 522025554 644397323 356511195 798607258 751067450 122381124 246930268 973336694 548648136 775245562 825882822 903730531 870469897 669197037 560771544 107768307 121942711 433690308 793871235 495394594 884818989 343647762 986848468 840136281 995008118 570729297 873311244 855124579 51896384 961686753 487662986 510868085 541532386 428302347 153530588 600565551 529558365 207562751 863121333 252432274 266896212 210178264 926081263 297422350 509765658 702761624 974292365 208140152 90025895 538662952 733066681 265654798 600827801 963425369 767293898 203694194 497253940 189123298 682450746 202837175 903176554 502103913 325847979 647230282 139061717 741753456 559882217 149763601 772628401 427873393 616636134 598056266 333713380 237114046 100172993 744609448 822428417 564805788 411530680 664818237 116170811 587224626 490583866 224638854 475948149 387358612 498824411 941955691 270959924 742798266 762868048 141969463 716845993 804720005 680472452 433407134 323366314 431477438 456524670 629661890 793541302 370539287 429823346 617756706 736247540 4393 277727932 189432240 347066934 795383157 77053153 844792000 443846385 539710818 336103559 299422225 122304325 823542342 896686725 889289410 369145334 372468825 822748885 815082731 203757944 130370489 886979480 322407666 150074080 497365874 102770721 739379137 782230255 209813109 667645403 726483099 678397194 170761883 868128100 791631273 354390080 767066533 646680962 134858627 957653578 542340155 547688477 268947494 445061255 113581808 305773897 97692153 790584060 590689084 936608320 560822981 169077084 703314053 589353064 876767939 296300538 720867084 550470731 782334862 774979802 180902664 95787164 82891055 106469025 896586131 882662199 264833806 460297117 729982379 257984030 841910530 9490628 958140216 175511677 200973901 74892475 251978768 582799783 595617932 150686404 733253865 779470872 121216722 132901328 970781284 970465395 368733330 897358200 864349710 142899840 629600429 959745272 956258132 889091641 281274979 595461176 869919377 608278195 411897954 119350987 199395335 870789428 914240962 245956323 646145245 715743272 512450814 426533986 112850980 277072417 721678590 980241359 331034075 864950491 786473998 253382489 359954397 447603766 708278496 468169687 715585268 866563907 621759894 805502920 569617364 574605615 738876596 16313428 904870935 776992346 346594853 180629067 714194233 706904902 973498944 335099171 381299110 665170847 437480643 981509117 828613043 754027828 776793552 794313373 950355091 297062662 366477560 156456050 481163627 873579061 810080815 502868376 897247298 613865229 848584912 70208459 863708429 225909760 47392932 239308659 549792929 472850605 897285335 830425759 350118851 623565010 443047676 45992454 205068312 2279262 467631635 205977096 528746293 245223267 387129216 147850666 655210385 936001820 460766224 359405470 633582479 192201454 345571064 404011324 924331638 393315938 992768729 559245697 743907194 298597676 621494451 282803732 351280819 990688296 738223862 767276612 79343651 231692888 112614518 672984587 695601840 676481001 678308211 102818054 466307887 702510892 622666382 408995708 595468119 25198494 516917207 530858334 577270475 458281696 275951043 682390338 839811603 769947586 759344175 361455977 424982431 734227763 620066657 337205430 257641165 772330319 413295876 355543485 526838488 847230552 913823535 495213491 444873711 335342526 122636640 321401206 907331103 987848974 185057659 332325520 52994146 344158986 151376076 4728881 980741532 965549710 55248139 847081005 514304914 760087981 758581589 618749954 226486266 853041810 802948909 303565788 502952810 894449310 958727553 59873673 797257316 912786773 197409703 982711165 73658451 534529373 913814109 209226202 337787524 707274637 33901764 502549865 138312501 354041824 100272496 337575061 910358149 14484089 856934227 115622519 131985786 997272736 366560457 82711502 328980748 332274638 593768599 35703813 740287248 726367899 725865709 969686566 799257929 867626954 8307805 174577643 987071583 605737801 701222119 158800049 732926690 771616551 913251054 288578176 224818254 455051425 128059459 736413451 450856450 900412698 551921943 923240101 768649802 620109600 338707210 614849358 566415701 26570084 786936863 69833135 905568828 669201345 683313092 163104789 477318147 846831675 411068368 95080825 156336271 316756476 293621120 994028665 564168117 159052376 451215991 325494364 257348140 856629196 381481924 265025044 44109976 752757496 316897498 842132791 429283967 537606058 77419675 680823553 176330067 45706708 229656134 879621468 201052015 700067987 321048717 679782872 543108370 85756196 486548612 572021930 347653990 100374523 620644520 613567413 448380286 966340006 742824926 250477948 856781138 418756578 13792882 977421873 827006146 981402256 144124700 863512232 774987419 374273215 77786105 92056421 792299912 586176926 29359500 560629132 740148521 952450957 580774341 417533420 267116281 597213451 746819318 143353855 615648103 721355716 152910559 647460066 14067392 132211086 573145507 463176797 367399487 381440867 200959184 141341150 304072965 247604835 147278942 203298687 720349981 530596063 916811686 821420797 140800116 459029316 684947568 488521406 219367911 152842035 422271977 964450516 931621430 324649067 93579175 795093495 86905099 986827224 988271267 742876291 452119542 956794513 457524294 112912768 470970738 313584845 938834268 636821406 622978014 299342064 323423005 936985654 412544645 33508486 594583586 382100037 464806038 360751940 964615540 864576371 123840557 838352386 451251580 655204111 550017354 610216388 690441492 128262415 336813782 904659641 713003127 808559892 710724517 237200687 365151817 658984294 716476778 135933603 203969177 139645427 876253644 41638072 317108187 375069521 645824339 69306426 227023853 133794753 983546479 140792351 348626709 968969771 488749178 165145213 487833855 261570843 51313333 769180059 250960832 135963082 414465865 423981793 661012696 31206171 546561609 945725925 190455849 416793231 122145451 127183714 993031939 702798169 669369683 673520699 252878102 675938639 501964296 762707576 647376774 743810543 912952447 572884563 125285332 372770659 595370317 574388514 944000753 410592122 10619638 436248680 683736109 450772648 944997091 290174676 978997321 259728144 749839459 464852790 26549864 739095416 315315121 599242125 305874715 278559825 872575215 567317494 180569939 652456621 974754084 80666051 976332142 282382160 184845125 113087586 822546994 156849567 883136294 350290544 781055438 416697514 761346700 160179379 810703575 32328234 319293984 217427219 151998278 701946747 165363826 677645221 284687750 710983334 35937535 472181664 141538657 448819547 56416545 255869039 475777291 305285614 161210662 42585750 945114661 920869987 641228609 811817676 467910320 974131039 495046278 510223594 967525916 705888046 696311291 702796023 917611071 274015437 553201030 755780635 56511060 338983128 698542330 500109739 988800514 872869526 495475473 297187872 492484181 97798905 573191275 401315871 245987522 400511380 275047569 690412405 665677353 370872232 940259571 719061008 196883915 910888735 647995373 897579793 766237273 530367877 971108287 339245495 165912294 471520531 88250258 151260270 441736688 360739238 334326905 932426701 57982556 964558280 799065195 756199306 532515449 103201704 166310218 102886284 642440953 830009882 406734302 753214172 703393786 571258272 470367453 218521774 303770117 316676450 601188827 504823134 24396546 902209071 443353179 469439856 44712267 858103674 270929093 142391948 349693595 481761385 863933293 302988424 105371926 428308671 795819915 32542303 607998027 388876778 560345664 126005554 783012910 919712261 789137301 554896207 807200284 935361229 918461309 273166632 280398302 925945512 995457740 295210585 927969948 748174762 508608586 648952483 968556014 803790983 772583326 301814517 902867667 817799580 395189336 557626462 834228396 432191476 563369714 708586268 796684875 774748734 606988237 489368979 7720673 543824848 937518640 118972748 183245581 911481768 62307666 407434237 385427924 280035699 340192583 736726653 722921381 453519481 606698515 519260114 262069074 221549234 21370527 323314727 592656667 777780675 289249720 53533134 156500899 214371310 333480222 549456454 851619578 760120614 628948591 234009391 70965651 508409343 944415796 345641812 513356108 596731576 50414302 954905002 566477419 26536508 664195529 294192203 379211419 116228376 508638768 238428539 267227634 395576451 388066884 70866084 829911536 133174620 128324112 740922203 449087608 135702314 218839187 20749915 525866199 574562079 125722793 931691652 702551747 396242705 847711263 948738535 819858264 180045437 421591714 969095346 675714079 10778507 723328719 659812933 402414078 420429834 415011110 491807775 997499475 536332405 570706193 867789036 92675540 350159080 143797729 604124544 770932138 953482282 279380429 128600537 648079971 119105707 55116536 321425428 476340466 63989122 279225452 321273220 524094900 4366704 697260829 731449750 703519601 758963675 68344541 899374822 638421075 311863249 760525680 694646845 395744496 391570699 860839812 277316991 977169223 217906919 656402340 264477376 609802173 106369898 117402959 360398144 768698909 209054795 499846625 700367968 77808287 193598937 161511333 811034795 940346078 630607385 130767052 23998675 724719840 874280876 555032688 822610612 773521941 961669865 812838803 838870100 437584972 959262912 926190621 457146587 402769096 810736598 870987744 682629533 701370668 155957614 716711317 125951252 213538951 135240315 661629405 309939686 562566218 639737491 823752257 820224988 455200599 639511280 578085939 63366381 521227505 804459394 722699786 126382638 279813572 499100114 267120140 817434343 760207593 358952986 47674207 232577410 406920920 357759033 977155346 458931859 192972411 231357110 384535331 994679763 510952478 484712895 114704240 594172199 515463284 772076076 992017604 16909721 661387679 185245310 379691984 66002527 848846366 927235034 951490605 616193489 594705890 968391953 815631707 472949876 735607617 925507991 802636740 303093747 7217655 433098895 375183291 496578595 704044584 831748542 440927350 439276539 845213028 473928853 359730458 819920032 886990236 243949354 174520750 105928288 976452658 127762236 628391971 143913388 799591659 14517556 553431892 240914975 617989360 169932062 771533824 960314236 958685657 699645879 622450641 652379824 17400997 616433495 986655322 913020620 50579124 822624010 634012178 872829964 682856664 509119870 199940443 922130647 515134020 452137994 750403454 941815987 787751830 85948334 363617711 225731922 678629845 731822096 908665347 643023767 150775660 467391104 548973181 815534207 300290865 192961271 882805253 725662775 860350302 224059665 211025775 843812113 386016415 534810392 715792499 361472139 888303866 28960505 223621299 964387910 419161323 216035149 445372085 697728268 9637962 582036562 868498158 554434006 226781022 21096176 5720758 293633720 390439894 299272630 966314318 206542331 807508420 635319259 455277279 279919366 91510440 18521663 122656634 290759025 452367463 233155689 399131675 350852082 697888845 145390982 619572128 296606065 172617231 469750643 432532434 930161652 940132043 690714025 442036325 910907314 227211270 118670416 649164273 182549510 21873326 914633020 636736759 275629682 403876888 803145952 334216416 691999139 514379521 899626846 240600829 878451307 33531535 375220091 372863368 690320581 565233997 395906470 920795300 832691412 498720305 708955896 795088214 386014181 677403546 596613168 280090770 48402793 877678157 820593845 740436531 743303678 981785718 366111127 121723382 19360869 691146923 937209994 370310278 729265288 143240937 3938033 927484022 902481534 549319059 988696785 949012287 71080320 899057786 595262426 149566014 818371827 829255635 712226914 478320064 318590817 204513080 683610733 714857462 434622843 137788082 719617693 352946170 53579040 50401706 275774275 359934157 57022545 669699578 47255892 397026389 33687098 658188509 15849844 233715814 323085871 432216057 302779112 148431801 426059433 513546840 275339935 350241006 481534541 843617650 170770992 473886098 683641062 39101476 369829594 6360339 20922983 61190581 338863236 314519497 249876973 354553551 747694784 432604665 135737016 349272714 12667331 123845321 347735349 618255712 807926636 230094156 276767735 655129659 181933634 156992379 130065594 779241827 710695030 645724471 546996576 757455760 508298463 519629129 596956919 997557984 629865979 652461155 802405550 112709591 730669296 32984094 348000482 930138722 342903953 602555387 108018713 783020902 446021715 343155810 806555131 775735539 381964629 532329385 689999450 520343259 520158559 722755843 891065399 932704285 595532768 269833109 959145136 149152940 200100081 434507623 559649297 302976490 927432780 229439082 206294735 959692182 991086687 757156731 47586948 365917923 132673845 638511444 162389749 705993570 755476871 802399652 221100810 680061461 777802672 441729018 857123290 383081563 313780415 180122834 538147741 487724804 909588316 902160009 205675705 791091529 313633509 487903338 954022583 678936003 698422866 482967465 101259594 160041334 726170958 994486877 752661329 933931730 225129259 323191428 545752010 968966319 885695963 713465612 535114980 412468546 575080192 891837637 337588979 752002361 835792096 878020455 744097135 514863773 565862253 883321493 600040957 44978147 567278395 346462423 342040935 879572713 314565771 207857310 377708704 435045363 827686467 899461445 106808775 255274161 634760435 899369483 234194205 76015926 341070291 331373338 874167307 818972928 633341888 876557445 2047015 963672567 508579397 694568259 373165611 760085859 306627727 58415159 924876027 63123707 722067060 362062633 949152416 564327389 774711669 539991496 807370066 894005646 370552760 633121459 753405544 571214591 462234382 298678886 841258343 979615614 118563821 356100687 775449851 515280332 352436340 238007226 760880116 92027664 657030508 905457380 883958864 899312598 790469955 740982254 35021875 403688720 258725647 428276192 272517350 423977249 579884432 625185706 542245341 198612170 956507696 610761512 669834164 695519800 444220411 825670171 1311021 454273028 478764202 411851562 985531444 499704872 211663258 286562536 359012060 593608971 355387093 806183118 485288547 783586424 997774857 38833724 872739366 722481830 570221964 197809022 605770933 648330546 924121953 651687618 184185026 859873826 112884778 302525220 658354219 247299298 359497787 586684836 238645996 593664840 789236361 275926573 309326393 939044496 23259570 585702027 665134944 656327266 864566529 463819644 721940189 654459336 390071138 446223779 537150292 238462011 769586799 51668099 897648782 271291539 949468515 788397971 613454979 759219739 485645865 638998311 471209547 426470779 882167374 475524997 919701801 234581450 275372554 660489684 369572233 532873 239225151 353014564 887746557 164387225 412735600 267837299 378353730 8330313 413160399 720446621 491371069 293869644 400981041 774867823 84829941 949204418 386044438 58588823 350885279 875695921 728677033 832892337 690476180 31472257 667184818 360967741 332159582 183814157 524208558 290808482 955354786 907074959 174682812 155554615 160851253 27737391 422637472 609574703 795031314 313164919 696510413 334192047 832911199 61975388 397260118 393929921 382603362 455661376 478313471 445943379 384311443 400013796 276480043 616819009 992987530 6656630 343390187 443336265 136717068 65102988 496483319 85923096 230815238 550165796 505736365 41489212 173962633 927961506 400619284 596974898 153931726 883108562 208697308 500997977 68766011 925216749 83614814 924892409 6688092 388431245 654391191 240717124 859448291 998341814 902968622 29709911 830999467 582633435 118447733 651122220 66247097 543011274 727956318 649964466 343997492 576139463 232508303 923916731 44352884 736332148 175122250 151922683 20287218 542753759 264879232 58759703 536445523 373979259 713907145 111393430 424735841 777859366 703596898 425062892 439913484 407834665 196799030 509985651 86092660 950192941 920731344 27682918 200714973 890588232 532499563 758334709 956129711 567046904 506610146 33088303 890703229 608277284 364480707 394481163 93177602 444513815 831981622 765429869 480678693 115372935 111560212 160629788 886231534 739569296 734085089 757982413 745929619 841130168 265658815 380364052 392224619 821876461 887659902 209204089 211082493 492528773 414297496 73196383 770018545 857544762 205202986 799782936 112406047 925091124 506958333 162344929 795548797 61615103 327062911 322345689 112578610 729766800 739476420 341622792 926167686 335034439 849953682 71160419 702297329 621042406 854871627 168212927 275899914 675634077 675401473 918963678 987938454 355596542 769608042 387406189 318765697 446413064 796744421 798934778 983416283 256733216 217010554 512568318 362549730 805400596 653139673 897999834 195828216 312260378 890810710 842919130 574370474 534929101 761187573 964939055 442277035 974035763 302083163 33118702 491272660 106399674 856830421 498634268 224052779 890181687 970237533 498785186 234727129 963187175 636651154 73199696 894164272 641302125 157427130 243143904 554180528 578130650 95193799 872969717 628615419 407616163 525679946 718544660 257189081 427388066 449603722 184605104 471792958 36706846 732068458 938383397 641797448 961294791 722637435 939141809 413021241 7645869 523568882 207905918 519710331 269026128 923424176 252551839 821890210 201033880 123291964 503184651 773755498 701823182 258356164 365813668 617628087 972305576 645705251 629100850 881179537 373277253 218098899 83155562 902927150 79524904 456747263 885786338 392702184 39778880 727488372 782869532 163346755 237517538 628479402 840424065 340603369 14517196 230532803 163160675 565644462 751387936 454317184 45142266 188491406 808817265 753918553 473305963 579676332 878287788 918951517 913360825 339791701 995420214 907365455 880093147 621136119 630805456 65437333 657702054 113727280 437961131 593633088 457015519 604136902 761572183 563439879 392834091 312509856 999184853 618308166 54554143 454618068 104621704 61563400 85386547 909460639 322271297 724439292 849672647 47214687 416788529 823035513 631864614 240327328 740921590 225311611 454691457 174956827 532631960 537434029 352586224 881603236 259913859 974322781 942587765 351497285 740135560 212306306 256645626 913551397 750383596 111600317 246772304 783213206 351038798 726181971 605512750 681913111 786030782 933795378 86644539 350043978 771952818 853087478 709930488 269921785 190968068 213287131 163711708 697076761 863871997 901109960 328051009 683485636 702549321 529067343 179177060 714158908 538970874 3189667 495806577 96727537 903007890 242825382 1692024 710406003 823026163 378307039 763691635 514458747 615373932 50041468 581903427 928773617 941601715 532304470 457593010 321404378 985902819 75947245 374345584 781989489 667373953 487199846 33711894 47643916 326741628 717832848 934022184 348334896 213475626 45270500 488651788 616114568 305942087 680253057 416327191 153971433 783355127 245167406 216177788 722215241 216884169 115401305 118317922 987284688 365766065 591560475 314599379 221143753 182340877 226249778 372310202 686349989 620811426 147708678 486070773 88115457 479966368 762707110 127216964 834249375 466208664 816384202 324592464 539309418 625941384 159143633 415895722 401523064 582025433 750039230 337627342 750922755 308042066 200028233 694113050 858644587 143916846 349973953 391435737 782605633 318948873 647126825 975244090 738437938 365864932 728229672 482189401 866034207 869921328 966641679 218407478 522913798 152175301 739139792 677499067 501325847 520359131 984393233 967694263 472042915 655215641 570866962 632097253 964907301 749662093 981337801 491083239 775061825 753877162 823102664 773244740 896949187 504200273 745449554 410676081 835873946 868416965 288977742 11307715 593065702 307740593 772758857 354255230 528746474 343920943 368948859 923992779 128434702 731546299 585631427 302236088 628392424 98217782 867941032 666814530 349453107 853434099 937726556 494766666 93095377 630916261 603954868 930071704 984599759 291122791 504591921 678136798 599898460 597103296 985047543 882482612 723375578 748920225 713079510 136848285 998464710 857904473 51484743 853796864 123354064 732908969 763794793 728223536 109743817 966886580 603728386 179789415 696780971 664476680 189114242 374054597 665594524 404293532 802478082 161487442 705905893 605385421 136550718 439177986 358468602 614147934 658348448 533333932 956107127 518013052 197582644 246619923 295623967 801959873 720847030 738939103 677039069 299650597 216985729 114895521 581713603 153072910 869078942 693010131 582918670 799799117 568920252 88427989 147361313 617945109 145603379 266269427 433800327 120489473 795205121 708208988 510532338 323648024 346961101 38509867 998624830 388718280 193573095 742567518 915796848 978152679 554008134 534621665 464381106 465478833 742744202 805528709 931171417 931332296 495629820 513376771 279181275 729616704 535133831 471093244 654526177 936901770 205057220 129504507 352546867 96364675 530935541 543333228 493174981 222871411 879197690 819904174 999258291 111075074 916212331 7520257 462004287 281385804 431214971 458792330 916179669 884239819 969114633 539089248 695285254 35315811 21035420 854490234 160195218 687228002 434210149 773841338 681233243 477223806 301586232 848762599 593525864 972706005 650170010 125274549 802105329 749957611 851150765 992884408 547654478 778987948 154172994 206251641 322785797 412905329 191533265 632318557 875304129 526302706 43185529 454999476 836129361 608518745 828041471 285928120 668718261 859951923 478417876 929609103 471580175 532712816 328728849 923184442 21557162 228658036 682053491 100525744 860273401 826107393 301206624 286504394 571814039 908191043 793238252 559472201 815449415 369284562 501189322 867666643 557128951 1030057 733057883 145569789 189930423 876631343 503830181 406691647 619109570 997393456 772626518 219967993 292141951 745178338 729342666 9641077 470101621 826408674 358054910 409877735 409258075 381822005 536963736 152623714 915440393 73133640 991325929 754627566 612857476 553944819 428801509 91817328 338250230 61242735 127547950 768331965 451670708 947657058 199014668 854290056 293817144 14571485 561901421 756718459 765634089 500650066 648988390 900939031 940662090 630682014 327351996 849713873 784937623 160302344 901011665 513163520 385606437 125649725 801503926 18933738 258465339 328516945 445389475 831558837 405384258 896451523 266600055 829554 55487951 838863732 914681527 589210395 238253722 759852729 305605525 597720720 35869837 260200000 309584870 72871838 594850987 172906536 787863085 142785778 552011308 573300474 797919629 830062119 239725421 84015263 787205846 929077437 373186796 182488943 39656834 49480481 112930390 409251108 791900334 831489438 497041283 513123303 761969187 780484978 575429990 186925891 466727247 489698751 967981355 95972652 148617289 701589130 694356246 349105922 541169358 957774793 48142751 533757578 917395274 112853075 544754271 766821104 374998986 785862887 740166425 875740106 216669447 807009585 293219513 795987476 377219419 314342082 945438289 225550134 989675475 674070546 231984159 732871163 847191834 474589573 3614851 171750297 678172813 811745889 185068812 554968747 602458404 582052822 878663530 84471864 384790154 958494725 813907579 44781232 90747920 223842022 431191870 238174437 613581739 461381481 455295971 623081749 929796859 302653530 235101371 222077924 374616133 57187190 411596097 980652899 125017466 491641951 843519767 68987906 985125170 102839195 685250314 944435107 497693100 929193372 301935632 176509574 622394830 119644092 302596161 376076894 761752104 103593277 441349598 189625151 678627827 829120071 793554519 990719650 247867402 698064106 98642748 466037360 247107064 284591139 132553547 17875447 280004844 544461521 921029989 7943402 510604474 827997372 560179095 423173735 562018535 992699287 370341905 660623859 699127189 882249211 349554737 515544698 603166356 833916011 495750010 744696148 156862045 790947914 895116438 555835710 474217231 869671153 197007451 384934749 173896561 506692244 979564226 718449211 423466992 92226904 645348846 83334353 930121126 529938500 770499882 329284474 985646418 952929865 770903021 796305660 495213661 687162688 1505484 20781958 298396113 773590764 935467665 638551467 838883690 268485110 801806113 537021801 115573892 112275694 363511445 267417383 441914664 632561998 413251106 710594732 248907014 76916854 24773425 334837815 473881204 190006963 284632651 305033052 475012978 762496048 792423970 520713255 237771943 224198156 581469330 571470337 968026209 992877894 811702176 951817408 666638232 766781896 65215094 459113378 382570733 380901730 683960935 91392590 909911460 459522253 109773806 340596174 615601328 583886509 418573742 733237144 515223973 343184006 40714100 587689100 668677572 291464145 256489267 869119468 266589941 475859679 497198595 856307816 680482501 945525238 263124267 558628114 672287082 261526593 890019093 274702443 59393737 74755276 170069588 959269716 416003938 846148498 921748643 968643102 610300268 401789560 522968039 141580668 791521209 728455234 578039593 833059213 165131464 192036261 837435293 383659219 572721090 182299705 248792478 871244095 847863673 370972031 501582768 859981604 253602142 411965918 578019198 111736385 487020183 989889452 741049053 818512568 96619237 631863327 847855813 713550877 256453563 680141915 811465304 741519964 182759727 825049700 106571239 993246937 940821759 267925041 170202082 435247959 220475286 402680473 943668709 596417284 209045761 635856986 75858864 372490613 593428982 657220901 110763059 143746470 669974231 450851458 894900863 64700156 64288936 129626867 792801998 438840393 518671387 210845906 729948550 642529980 324079751 688701804 141392432 862675188 90524393 773200370 840693378 698606586 436784874 540827774 948340564 905412153 194500570 804928270 810058666 910967939 264693679 100482192 25627056 127451416 580140040 805967825 640917946 941504670 507559213 94619275 248604485 56379683 273159439 5300832 449441263 429102360 721232960 260706780 200427141 505729633 389973252 895255916 275482620 577846588 975956033 807176299 202431086 880333147 180534918 354340376 797120031 86799056 30692618 755069091 977349243 543233306 804362924 117912596 501476115 745737249 586930935 749626219 822232226 225027884 539363602 84521350 859345937 681361910 15432925 104766513 769394019 610861464 619255250 74744091 10570960 790836123 906535963 445380830 439296434 313122539 523609476 432709115 556238223 263343835 258179721 347284442 164882191 383138347 717482309 380594638 755184901 257452030 427203201 740783632 159136622 950750436 821306541 50222786 9561196 381554640 217192156 944115948 319212877 180327712 367686100 674436992 301808000 182875035 374966518 481697366 299969955 410497899 682910550 153179955 106825849 530651941 789071529 643814073 111071724 980703434 989227598 856899968 136180240 154099901 301736527 664294142 329300002 416930506 899928151 890002582 295639938 763389226 442728127 580363407 932308671 194056054 312903559 232883997 143252617 922083766 344249687 843140439 744817853 283219799 617419899 585122879 396185949 252924463 383660525 335034814 240140181 838120822 878993482 546863527 449064121 18516696 174679774 973082801 191845187 656786785 374492306 542400383 450789845 518454913 537664771 847594905 428471869 946559259 346317677 181474415 257533039 334166642 429016502 727812190 197609344 662192434 785856881 895570340 213803709 193859700 222306002 530232683 949938824 577807026 82273210 717331141 229033339 696724691 717414576 381771179 759995724 739523362 65062882 759319039 899737568 759154776 91836458 464937097 11363398 354961550 306571268 768482809 775557549 547030093 42132635 350383594 825504880 8679294 597087931 961860063 427987220 641111674 717774298 952447551 956222278 519170300 935055645 537062747 754834134 745225004 267760197 973403242 816969921 164349589 91392708 742499988 480481833 991027501 724339380 208807390 955070809 693928017 479791569 396192313 813796550 534653893 318370945 505230463 335438346 550090935 936738516 422694769 160481513 304452287 47943045 804592822 385989199 420184279 538656496 568117733 739017037 496225381 507767837 256731507 840749599 538035764 978038714 437097921 169946409 516759424 479162144 643734555 49655798 403247329 575297356 334944686 37388856 82283866 394459113 709929625 242942159 378150238 127971394 260658904 163814583 650225089 256464466 602436439 91630625 92432061 566100407 71345895 942876509 447693051 973696183 750172992 437092328 937919621 574469952 345012740 904261989 19529169 927355375 458527676 949060254 852887230 186686717 860193498 515821703 91512720 720842068 779558072 997254460 266534388 100485509 413086870 744626945 777531907 68118211 112135837 474910526 455103795 859395056 375143135 375299977 307494254 183035026 100585555 729479836 288737795 986338778 360197087 615955802 506977953 95357343 714728775 485873616 121338475 465932639 816811070 615649328 924524772 602051906 830371169 262194646 130903803 100009751 334378795 511919172 484213760 748115285 411289865 471501860 949083318 330191386 594020429 827254351 943255618 224933939 946509103 898809531 556926254 47246854 372880334 452248459 663119984 537037490 351487798 799318541 900488295 895120116 485894232 747719090 937247703 787755571 311481613 310630680 41476333 956717949 968732438 911404289 933042238 25017481 298916636 731692888 210119115 429640888 737037232 851601966 337012722 705231378 177647182 842703043 156690568 441935942 253731924 842369654 42709949 978486184 616009741 749434324 423707441 589640250 428356521 427708816 467758823 323774117 712951360 335480711 557413967 533513013 359773400 141574074 106677563 225426656 875024726 999925589 513924331 301227595 414320013 516620202 513983235 220278966 468495926 446724919 433516688 745125654 728332785 838484637 495456009 476536576 879966280 195692966 461101896 183519156 722635438 754880072 775602326 924984603 653822844 772765089 478187422 228538047 875458800 879083757 154172791 382798555 740595767 822171803 409296538 77668685 16910943 337615679 38948339 219742876 534813026 623630485 191983560 516352762 860895012 760894077 947309266 607412541 536360557 200300034 124970288 566778337 829372909 662760540 462236516 71598608 551046973 24798690 106547548 10382490 386553823 105327386 36964209 332080886 298757693 845018540 663661401 795750467 813150886 599290223 334890302 999834694 122501208 125430108 379344047 718748272 949821551 278638230 655970717 6964442 317269751 489692522 420964198 115438912 287389664 557565513 790290385 726739466 79303173 882659024 542510091 479514443 760895524 760407235 734670249 380110260 961679851 406439688 184515494 460907435 987822823 215939770 286053226 158172720 689205651 530184718 730829250 22984697 460655185 484963180 682418659 903105115 210910823 194434651 608216171 807934035 317156106 367922833 82922589 872024968 537428562 246365928 343454759 907386700 293153856 452217445 400563359 120965015 144460223 891233584 915880961 384174084 220015517 535301022 551442677 985915103 405247893 835036973 525532039 196814357 310615366 548545914 525467688 260155965 790546239 621365079 130439356 352333716 820152810 803355058 654100868 130515719 670101671 822735019 991792 4408096 400052914 57073792 467952850 144638747 351165497 342882976 720584426 976516562 761430857 809773215 155835996 942822096 95545563 634039093 491146359 420179779 804559828 440385348 904832749 504089857 540377082 295991517 730796254 37647756 250814211 227147825 716555213 738589449 672407938 261648024 128618153 560147272 687380987 970530201 15652039 191930561 9050072 831043036 505669860 124948370 343859818 859559481 440530980 28300931 39588842 511113895 69332246 211346947 976760953 231314251 674973360 139320104 743370014 271232879 89537357 867075765 194660561 500866695 264742835 566904333 314022243 994611502 69364241 532765763 256234651 180451370 15066361 164730120 63190305 180893027 654560875 196857284 637429123 241389804 768835274 338695801 644887359 786728962 341543396 684776148 197255090 840865801 696761329 69015858 49397034 360846219 746950282 449361297 311656917 8743225 500433336 988606612 862433995 571984625 524528870 86349453 842331409 542817462 922844136 191416949 782352013 240320946 284141057 966891752 298782483 94544189 404512463 996366641 114391899 530918346 392920931 207895098 174968836 166966787 114075953 755398559 61450907 390929329 905804569 834680991 114415246 572719812 915743837 465240348 725648954 539814495 669920170 342578860 469054429 97043389 281677848 334646659 663386785 212147535 84856354 651413886 749901721 270411685 7276209 627413290 302823098 321119868 959723023 545377970 373036011 370511798 932898031 98978542 984238066 149811808 1474930 265293406 71221633 336130477 40185887 52204073 847857198 310646261 865043677 277355293 556639105 805188543 821549063 908034739 575749597 199708852 597996374 813410312 804172181 995631785 841735922 251590374 372042725 593846937 362065001 859706557 281284075 767947684 359395245 218024864 770202544 130076186 234138653 299751249 602384169 828488813 552939391 195543094 981233451 515813943 89917695 23241825 219379320 951629115 588086834 384900228 508001469 637609060 367333398 709369093 336749961 861835463 523288080 789270246 378022227 64763039 840699633 954865369 193414782 565964366 948749799 880347188 600300117 601078624 920753044 822985207 587300359 580695945 828942077 317859270 770955693 427908514 873294478 463590647 200970056 894318257 908245276 394375034 819893700 968970463 25371366 53485301 360743921 900977280 275263633 281857449 366405512 17088784 832657958 103058825 288458281 622411827 512090145 910089515 575655007 237378224 614174811 44873934 767857819 167852927 962559770 593127771 327729717 905128633 579732492 948062047 21970543 347853987 46219077 268283922 691509618 626956964 55120452 684225109 316756305 204174932 456673517 957672876 929351426 903670892 314942092 803025738 27127147 961070545 267443928 649638147 251673681 263560331 158663920 116212824 944852327 665687761 273624663 914320752 933755717 801698298 878663161 875588634 107066476 148915085 747005229 39379148 723036745 419450420 616023728 547564457 699835432 207036610 908847015 824157045 450839623 196085043 990675104 116237983 544807106 443964840 385693328 909035583 649388712 333063024 787914707 317429012 955372774 664129019 960204081 508555912 193136985 952268773 601196757 678367143 450165183 653808115 817003347 949943848 4856515 393082383 976119466 135482222 678628596 576973387 513303361 721703804 804218319 624841186 865115362 62464005 856878768 947483196 170766788 945520476 608465382 260809694 587612548 687487876 423889824 780085121 224699432 54463266 228365044 542285050 317643037 878152838 274352873 892880467 434368566 354510505 368741220 606887603 547963060 808736295 872077881 580754285 687245880 106895944 337187871 679911167 498971092 336794110 92040119 160333832 575468281 912497884 109194893 33703000 417495687 610623014 912597519 896076256 117647296 705273793 561368216 284307388 84975956 256145720 985312872 845437742 280382555 913027786 754417325 275621026 300588364 33512018 818829939 350870699 742250768 538379863 257811890 659901700 886026226 67067658 557810259 951584657 864037035 91251009 355253526 973523805 813216085 534733691 394103986 130393498 463748215 798246110 921019585 255682726 327740412 612811327 971100864 408262403 879932476 243181838 174213915 725405787 96153842 126314095 424319523 812899971 82400325 525491240 682765585 673025652 155684289 320903081 63342852 760678741 5347165 549019398 905550856 335234412 195837042 178175488 998620174 893736241 813234379 497815809 402583537 975450172 540327825 916678678 585689198 137836115 531924572 41260533 988360497 414420576 30488614 240217855 59277769 752686965 886558808 307590714 309895347 406989775 942000060 459972184 475448397 724114897 526499722 939557039 707899873 122189574 385604190 260208187 667757728 83542304 780976446 995540647 74266278 144370940 60316308 752624448 919503345 548470685 722065722 976721407 859359596 490532654 681134954 138999939 848034790 661479938 282404811 382115088 128704285 409251221 133537897 119473053 21206700 513805192 286848952 242550969 740346657 14052008 361326489 405287591 351834347 488313323 37015119 340031564 20057955 879727463 911451527 252525116 42401229 317935459 451291991 631061418 876654158 611027783 536497981 324094838 36388090 276442282 777422618 913011499 302907082 655947844 544902211 293044208 514376864 535170811 29095524 473801124 793556037 31373017 854600354 115760069 804376936 891566606 744196734 339537014 773326503 604209148 324815080 222966666 274653308 352379426 318937906 505089400 222677078 686891 435807773 958468702 258816901 243793901 310304970 860773637 619705922 604083806 766011850 940448729 166603949 266830503 96073233 44699637 285097937 623176209 568345083 724356117 108151967 967566350 441138252 523541411 909543151 713639741 175639863 455836077 819786372 261318746 531477837 195791849 407747078 112735065 746984586 963449784 397756422 799140937 25732440 28124962 291892223 929165922 752290177 522605012 955421520 556337934 671192888 203050534 287979589 771729621 680648737 226179608 560046858 133991017 357233211 300533842 782375103 324270503 569868532 245895456 534232674 75758224 835064868 372591997 562554843 803522642 195578121 922401284 401582846 991312958 161857349 560956419 239303810 998617810 206634468 90751585 865724680 741724336 883318880 209667258 868589084 82254754 964774804 635241551 148898606 877930909 777097412 673459970 985630871 850129339 933280928 662209639 762018454 471007038 495033404 247676594 907155030 816617620 345131540 78135748 242416364 391931473 108619022 725536805 639642189 136973357 296135545 740137473 725077593 815568396 60150791 3363379 223681500 133845242 921219286 891764534 736848775 519951915 556532335 317037623 657311987 601458169 568813755 984379905 74287009 985243880 788246545 88849930 392027643 296136867 4004911 736144247 72756305 520204540 703167801 208493064 880317405 631985904 736686266 790452530 798899647 97309602 940666541 900705796 46673922 272702300 449375336 921355602 309988502 338248341 134144952 161541228 962646615 110777571 963833797 594032234 832852483 793103372 473117220 691985924 895935298 10516218 127855062 523220379 6427562 753452738 967605823 803642417 498242482 388798879 779948586 677934712 263022011 307827188 479274702 622549960 37307662 771133771 598763721 231661342 488438493 73271641 860529439 841018916 419229505 83262711 889190460 672260648 339437627 552452394 270792440 763101987 828708018 808602140 633511822 958508208 23931261 38452260 47685284 572154651 872243280 565153464 644762698 286430798 128486095 91123071 609028337 696334054 537303425 515612746 911085176 950452510 388016859 542401782 657948453 528361440 829284913 200038069 985774242 221895611 520969928 619055298 544282376 830115298 658712776 148933259 193891284 672962363 432816709 943553438 367527147 968688454 54399029 947161276 157313430 40461112 818654072 419400389 84941201 872159463 368748507 872417220 340156917 305674704 579548429 123487727 28053065 800497182 455063464 371052190 721976695 61420957 628702765 255213910 183684824 406770885 204101638 558844611 611680553 871942069 623288963 713811893 888006541 492959541 39449054 153358378 801712787 624370100 758369848 24368199 567776047 449450570 841540763 179050834 365894080 489689014 100275703 441821379 56239370 416221534 639568420 917424434 573196091 799927890 981638377 380140388 401918695 712478280 702014185 133623109 491621386 192807587 439089849 286955750 863456527 25872231 378874831 500996484 390292413 97366597 42335119 541997696 616216653 90952080 40117825 486467176 54064219 629841229 664452630 490927088 605262826 971396641 924713001 463343344 617433709 31102043 216419707 841861996 369551282 976944880 549054962 104065680 359010557 728210053 432661859 771519921 310048751 749560411 609087623 420092231 632705430 411716965 648581629 143897078 322314088 663689017 580503887 672778122 306723394 956088598 252639725 810941432 460300139 323954918 439725109 360660057 394225036 527210549 41916514 478243311 542339519 601091387 810687394 337760041 527803004 83758039 96211204 414611606 629942445 855307920 64693381 179013109 817382046 18303896 61658111 463921958 462439683 198305732 180574785 903249208 708075515 827921298 744413690 228576090 474361864 72242221 380281029 378941931 203762459 333673057 67888672 224972141 155351942 29644198 332612728 364909963 759957771 370294045 845736991 785696279 552995274 691660427 218076744 738718220 872037204 263077214 757237272 56593553 42353050 256695730 13064602 808612334 559775230 272890691 136761023 237342360 461182533 28223094 196840029 349986345 330702744 652399456 930473782 649911908 282037134 693017780 178748663 679545910 514367782 762891988 214704940 47749296 49235399 893574340 743950418 11039248 632048184 64027959 758138059 385199287 759691699 936529795 998320091 729305137 508641491 864674979 856213177 475417137 791637151 776277060 112941946 939214736 527058820 956561843 809313827 832129366 725473366 722013415 892351386 16634796 456462674 334352767 535577779 761102566 838531360 731486147 624843045 317918844 23591883 789119906 696816784 250972183 759034312 885172661 365527939 352050813 233385206 180267063 578337897 726815395 57673112 167492114 85470878 539696291 684349279 895020502 574131044 161356484 48198234 195212986 595344101 963939950 17787917 140871580 674334511 842172213 347365976 297700868 938137916 292965845 849654412 990503201 479843311 9262384 551770204 34851016 146426641 118016338 28908262 48941692 939663953 69643886 656676272 46279780 961089098 982051808 217074086 46119502 313905023 201067818 705704990 566241969 509761364 306295545 981810133 956117420 443527969 38580254 345923057 917838854 792854810 302417047 216302333 534617648 942452067 841860 834427375 339059520 587677955 857266995 665987878 459559927 86037742 205998615 545781094 825121720 97850618 431489993 65363678 80660374 788959981 748264716 294417953 203736905 584634732 948115921 266779949 250221102 922838793 139166755 864810084 957284941 234180414 600989509 306641819 503337810 73714029 636408469 166295297 502941594 221575646 295453342 244935732 197626146 526140610 452324888 658417980 864384142 330602802 555091163 176983426 758831666 252715571 113530601 434791649 193409796 789366186 250757488 712494736 561103778 226733416 616930242 972850232 750267221 602365994 797144155 426263272 847733513 589747342 508203485 628972049 134548055 981943326 801857557 615090833 995726462 599392333 595984629 655610799 463155049 31904114 979539350 290949654 851823267 704591310 842165056 260645601 240766562 61188238 381931099 160522372 802189960 452341950 270193533 83669485 368029599 664441436 629886045 88737122 457920976 948894023 126827744 233739679 522532342 392334919 312171029 336932541 518273681 418072078 358946602 64126272 849194181 39149111 68541566 150173979 637424994 99847235 955075216 820782749 304465378 347252889 143582480 311491975 107953507 247046027 715801040 53175804 849522091 626312276 651286473 810661260 675230762 204215828 98249249 159882795 927227129 352320212 729740064 693633334 480932307 956169863 103723325 99186800 293287202 966770691 410685967 914177802 423625975 84856331 630745948 59730072 386330628 572292681 922402320 116854296 608048302 67893327 9196351 705179372 155467771 122881171 512764704 318011877 134875286 551366008 804267032 404310583 611398618 217231432 767003061 854129279 920673993 403698229 585384359 809532352 215800067 378624341 737566411 760713835 92414941 973736362 932399140 888857428 355743562 439350305 787066844 44112567 943241964 138162569 269286982 452528954 633149197 389813145 489716448 698803949 565552535 117820403 669897037 408852544 256078115 411492131 394937940 480632596 398668273 681559448 507750127 800717228 82000103 633772717 459842354 20082616 704720020 375168416 123312996 446403404 700492339 91040927 77771505 190184932 402297503 977025464 817041259 119205737 837920608 34623972 608127372 972193059 3015080 813248005 369618490 638465225 746057034 511376357 208156542 474724216 982902219 448169268 457399694 732997817 179885389 189650060 537161667 977711479 184027038 711648879 552762273 660000005 339999549 488165956 224186321 515621920 563549251 965359966 180292393 10689010 797924215 306974199 807337891 799169798 680052044 218158125 849500514 160326222 624882390 238276876 512488373 496262701 813822166 45477766 448701450 752055652 733651636 574376307 702683902 106112544 301258621 441380498 362089303 655554298 207466217 539167631 687815419 629243884 896076889 795846394 953050112 319959388 368297425 292760655 377306021 562030360 730576642 772033773 531323207 362746197 756834884 538451738 189631348 774866862 262922646 331749135 246798047 247207469 592030623 701971935 123895141 386868283 758182061 527499 919640326 879581614 121226168 702026497 744688367 950943172 448595809 400644366 20225141 595879460 612493548 941276526 161423375 736420825 188062028 775570624 55418981 770484312 375758869 67698320 934478654 912360575 579728521 40660556 333865616 12768148 712658571 155321424 827201396 57208899 970443695 396008156 96570161 940128160 78566955 751852312 730218543 226074156 480757212 799503897 197907714 777408203 408660811 639242197 834997093 9971657 700791975 216946733 472743229 348456923 177306824 333477354 261362066 324241183 361033261 235029955 442981275 385312794 479513082 301317961 39056304 577397432 196165893 15195139 184146518 195521875 327154367 293290582 363627321 820810146 523827273 554999449 316499499 444723153 740584813 900202496 205707300 872487783 799656855 342907823 419756622 483984474 724495069 817723309 120430833 969821709 647997699 831959021 931435135 847005759 96903277 451197256 648831124 648441887 393409325 498880641 635972343 478690627 376204788 728183612 31079052 223595689 930646825 236801808 859754092 2290612 393558479 788814450 813550801 327530290 533838486 907152838 621145116 440243290 31354068 226534997 224469467 856076744 194430861 590143312 666536382 850438785 458564707 858190543 561992869 669998835 251128484 833625300 749068689 545207793 291193423 696561736 39577259 892161466 505156861 412619772 321519689 830571766 934675188 607231916 602200037 931835823 168872489 531423991 172268834 452104281 380674865 427091557 893347535 116359891 703706696 863086184 259994584 912478563 460309080 738040411 552838752 548090293 767348723 803494782 633280676 964541919 794517578 696616443 970627605 844467549 235240000 562588641 312971840 707088919 711197532 861126188 925999588 314978646 160095951 771897789 823736293 135282901 153805932 276114522 572757069 994843053 658628023 717189048 632264014 111267170 9824467 885827183 834932804 764030180 608846737 439134462 462094004 563851658 148014185 625107666 323998537 245395982 20774777 81375036 778650834 960256916 988744072 316972146 164972879 410709679 914861831 731559577 602503394 132948558 651412236 235322039 859769558 315098323 467077718 425530301 106219677 388290305 558358095 145714056 346768596 59511557 670013955 145031639 716538942 383738229 795355944 136127314 772855495 27820108 634548003 342308493 934988414 621089266 689335798 256391935 419394725 416810037 282731346 446281739 158825113 107896648 303211407 990782969 687710440 84597960 672709290 983083256 642776646 264410813 130717517 348347944 572603023 858358930 512102854 685185156 119332291 483904028 264769805 621698041 726181134 190974106 93583294 789864532 424854983 923830190 491306279 724473427 173887075 595276395 58253359 998529170 204472714 566901824 946999923 688431776 174859527 462852622 498613040 5422573 724570827 752959769 827714638 732402895 405115891 138397198 422533980 989793160 623596993 451450371 99756178 831746372 562821283 18369397 649292238 152652051 557697830 350981450 486007704 404174572 446358797 542823887 662189087 591013555 120895031 882128822 188132411 514258736 68760494 506616609 360505449 660032789 340293802 728082066 817002963 648772090 178013570 606170105 243119431 614252899 736868539 313215401 824184890 174388662 155628543 728990049 867116497 506657607 972682531 651566402 418426316 253619020 757612833 40160480 161923489 91552489 887954204 427022378 460402018 848484391 814841698 997320834 509811410 474636533 750881891 323208106 62705241 565133359 820374972 548608210 321803264 952901268 635456815 723497356 561477764 554937297 485447592 434886872 457010756 167658353 319909946 238095386 553883717 41850355 71178016 273400865 836972855 948830135 611633854 346433567 45982318 526062595 850095265 746973874 165139696 751758346 241529462 652225250 807656545 127754216 955532576 825752858 817227790 257823133 104613276 409974831 569438194 926583823 365328923 908977249 355210154 996712978 183879914 272881745 357956478 974964576 704789387 4802575 605561692 442908056 472975771 234242576 963351006 832074053 471627751 86057520 647658304 525021401 728209765 870186679 84886124 476706729 828234799 373848913 344075247 914969339 498011782 340341776 289700099 819643125 522706390 536614006 972578435 829169579 213050295 425983588 223359482 722382868 559430365 551045933 569929366 314437395 654690352 53228161 709721135 759216750 570530746 226667391 201033283 193631706 949879726 858331563 887436538 190180848 792504167 297484789 925695522 691923247 330227816 805476785 714738741 202885890 855418718 113511322 988052302 381254328 723613469 323383513 110701625 123437199 229995933 914806264 16891235 924791459 302143744 39874030 287895523 526856703 622173847 873925400 257584249 29445524 875817936 619544124 360158347 274874174 89056587 693259656 78752041 922753210 385962438 599015822 333653000 981769397 23368496 384235597 593976973 981578175 481367453 90684458 714673338 32535887 974012484 614178034 979095616 342657736 668114061 457306844 459066745 706850933 298332926 87789443 478143583 960309381 847853135 703938798 589589917 974737938 413612632 121862792 828226944 366801949 471302431 189125163 501301505 499680910 315566543 211032847 172946111 714834234 482348985 503928538 615171071 437052630 134724952 525923996 836682675 116967942 214483792 709210569 89358705 81248338 796133232 422910268 346936952 218720045 625838503 489840188 498391216 919260397 162509072 880970105 850193834 484804565 465704690 48704517 473575834 46444302 699170741 944500830 342179937 874019243 636175853 254894953 822536837 111459749 327075157 380149106 950843958 553635032 77570513 943021362 13649484 710873108 83526765 612697282 393436997 514141705 501528667 603343018 890408009 921936973 293583861 737645784 797472294 795459684 549599166 207099294 807550039 671100087 298440550 60608700 909650422 904060821 138739901 518896726 480340687 5464633 61746366 546310136 501702733 416180677 918534797 912557467 950959241 721610302 405979250 867956377 536846661 370129308 184385767 68511928 638566627 430165172 679354242 512775461 772012919 191598664 678489095 669794679 135544245 577707522 924369250 131579560 947698175 465061746 590602918 60410401 218700632 807764754 552089617 318781612 654568565 694765380 109425664 122946946 47698601 582097233 382204421 831203133 226612469 930882150 603032526 225610466 810391297 891673762 749755963 280772832 961201176 839376901 532155978 821272077 424568887 68904823 602727465 392382116 581338873 294586825 824056876 103371595 638032039 875916980 357481934 441655824 796719921 935027162 614601905 732421480 164845356 321162695 641631137 535763246 166847192 665018086 625014160 201875373 41793310 176066199 465382045 195372171 159331469 2149910 354523399 532279266 993522266 244210064 783120954 483542319 161296230 522191637 479786956 263848021 983829302 198107548 699734135 553976995 673532671 156854793 403961114 615903692 270562448 425579044 88843719 169940720 110042479 311945118 34220718 331076501 527908288 671002387 127153448 840852645 705522517 850173697 766407358 686203764 888351904 769737425 536534550 364435654 459361221 810994647 453992454 791236538 797346698 764100171 316444297 674490082 97705566 416435277 797766079 561149230 476977497 797179112 562137337 124721921 587516728 537433869 22578084 242577179 923555172 322915476 583653985 865023914 522823405 273317695 194076656 283330375 22769032 589435832 188280380 359484908 47520407 930961 256016731 324079616 242692128 846693183 148307076 779429713 451152336 12462887 578262303 56061457 453001731 670809234 638803890 599162846 184608435 979405232 378352887 900954814 303947403 183310236 618685123 111417377 257973721 683852629 352390940 568312281 712190868 23530182 520679724 920822050 176640604 483533246 503669832 975494052 516148598 291327227 701948653 592780397 696725975 746575128 843098552 879835889 90208014 859769250 940861561 439872523 582660704 822162443 955867939 537167619 497192884 581147307 998932686 813854853 570906776 817113024 342861506 805703591 954273091 688867962 418061673 681398503 328553875 331453412 601432915 622569766 585458706 990349309 577567807 267732153 840946927 63284385 69629964 469046350 867448063 367366811 722194891 443014149 661257920 684285085 765278377 375751268 202898784 536586814 261311239 56477527 41300905 822608133 6009188 113969461 72193299 139980628 260477294 390603705 867558589 486461826 375771302 473279241 476516463 501345476 991439099 516478130 2966936 459269694 826746010 846552234 675511375 519652856 716017189 864176206 233811540 922613733 70498315 426167652 807039502 134330075 430131176 759206681 332440460 818537887 133016960 705310977 185328516 298024407 156507582 117118488 667819608 817553684 20598709 781004744 692964622 619933651 213175712 629433051 750767701 510603890 578851301 751363207 382699906 956915261 77849098 664021351 285364122 697000547 962232262 401033859 137810495 369404156 996362741 748795464 675651267 860274188 423085462 116802954 145999642 610360956 570186457 804594313 6228710 587346207 136408078 346057702 804498033 190015912 588676275 87398835 587102629 985571774 719155303 444029537 877632794 487129065 296245755 494500301 932346128 439100054 922319453 758755392 951771251 557892901 802621867 962435430 542755787 755199188 757463079 780718420 915520083 781109707 679450942 462456199 810752745 153459231 914994818 567968739 486521620 236379845 168420015 199956407 476727812 610687646 982901415 678613177 536292243 237118329 64360052 665215491 288591164 923144963 398890572 919116060 821366567 162520532 204428684 138868979 732493604 61312624 869365682 986306267 521141164 541751360 236273005 544725394 564457181 493039253 907127185 276619327 267234683 293470118 607783956 346729835 3618810 872864150 879558943 777438222 746308975 338187632 432029177 330592390 73154200 506666021 60950041 745215382 788000992 755040650 13320215 734560111 842906451 213606757 44022457 759877793 306458536 618788955 434591208 488510253 201028418 393771265 283600312 907161465 965303844 369283791 227379044 697118540 296216576 284986151 477840977 102618341 629192492 433122383 495343369 145593817 91600297 351898236 950529598 813285424 41339419 612861639 378823629 431925080 976932050 630240303 338479033 176046886 944709833 87373469 629737260 472768214 149502618 359229413 68111226 388388880 482136465 654968511 804026144 701958623 85228184 379999179 97331391 382978998 369684301 544702101 220007459 53101689 168297194 594198154 371507007 651494246 62012759 927582217 521573679 367039792 65046053 509301070 635356468 598792936 258914699 567035781 876755387 28211983 240951141 410911679 658807641 868427398 185326655 485705205 578639815 101578142 539381829 946357255 722601191 361554186 806320720 963527360 381306823 638907112 809698526 155509969 749185944 639748540 331044631 165395408 936747705 967482743 481364939 716834117 30473129 501295211 477419119 545186197 919189013 135608917 272615970 49942798 491429329 922793306 892848304 343767280 339778007 207463179 883923331 839229528 246493512 595838811 808987829 752894800 615539831 921217445 328556037 551806412 369371599 559146417 683439577 502807713 934376174 389150381 165330496 742385299 155963800 908840491 562629621 303486281 919319736 975505192 275571539 302242903 558731619 11610894 935926627 867605042 718961617 811784361 394264788 49016641 742647399 425859882 162057981 239496394 842351791 932830001 393610974 616176638 548599903 511980996 405699615 199093495 164239438 665636688 28704779 257417143 828223875 128279208 856422047 492632868 24838184 466716685 666669430 571776530 315873424 597292577 831694553 114339900 825882166 839964403 316092598 431216960 148974270 609622775 699698089 668037544 935340787 541652492 437342186 197813223 832367561 562458742 789482596 891308883 877780313 704857058 346614697 648736561 331864552 307537511 530618091 37641639 179536097 174834047 57045770 60522694 998883286 8809234 289712016 240123789 674501510 155650668 968357293 445330646 151204561 386698564 911495476 302071918 713237954 445067445 83915177 934189062 586589837 242737732 662047023 355723318 439175822 837330147 885261718 220184960 337904454 30393313 709624152 9992015 890934628 281867262 545658514 255960306 329977273 973335648 402254349 631853219 345816640 258471828 914666036 565038723 315593500 392068238 526108197 7204250 401405339 407430573 185141401 859666140 474228524 187620788 686851323 875136032 490495597 362685138 632503896 595285800 106384417 693106586 983285353 456708254 19888178 396221967 396127372 809305362 916478135 48479886 749360330 469149695 955692260 76072683 163913937 935766725 223752228 26108760 215419639 321799085 874300670 574122355 482523453 907425001 478790695 979243841 924124745 697808784 782460790 109994031 614028908 256697511 135198965 258863637 337604764 423134740 278852554 808892458 60023673 403823019 875680076 354886171 422189129 392668706 607630325 291856622 192820732 515503646 422471782 633897502 112798762 923579173 584280173 412572806 450407443 259525802 18205691 290363245 144404379 176711431 28065837 572088187 547733586 380014714 272332868 765187531 39386227 207145520 281811118 975600342 225499097 542686520 494090238 867758980 447755533 530372492 819757038 729080354 167650365 633836813 220791395 982764901 651934787 236041861 396123237 614122346 297565595 757572261 210570537 501860534 85719919 397160706 643846411 767502134 17510026 205402404 814809230 48256320 886640747 955903859 551137117 244543121 118973481 396201020 881532235 17798479 818312081 692508860 18437970 76611332 585921038 461495827 301172376 209277355 309268410 386463307 144933735 884416156 223426645 973487442 838283826 543530911 438405701 266976774 204598932 824019422 56209815 99468070 863172688 51130613 611748612 969160797 478916181 3782619 583889646 822871353 951849393 686250998 611460185 317430834 303915169 944297493 537288691 857710512 232143241 100970349 850766614 575206135 91612660 396035740 996655298 149509435 611665815 762872485 592803997 252575889 703167817 708948982 21181940 674724094 527116817 866871655 623271618 435832685 712860695 762706737 573433509 822510761 585602480 194821628 416659939 1325681 315711067 576674261 726083690 483029091 73448372 690505518 403078870 689935627 969503372 909392875 421377890 929429719 254834644 796000843 953689337 652008738 906636199 455945212 448371748 606200621 670719048 376381207 907784226 537229602 429168932 11094807 567939021 99041552 871095245 828281825 545719471 629928949 257700607 970711746 42843637 205597357 47474074 909192558 104352118 54866690 720036782 194347782 517746868 839434409 928107372 5284622 727135700 318115384 124707377 773542003 666649257 57306674 18652029 202915974 374558116 572610046 186631676 334605323 29331688 865542382 407777411 6376484 788917053 246903614 222669580 928171868 284351248 512225036 294140348 339039919 711981947 38954851 260978653 821490803 497647928 36180275 105655520 260769136 536552372 962576983 466479459 702239188 579605502 317811853 382899242 130007093 634763721 765935745 619832607 68983950 616688758 474213573 816630355 417454405 825560591 819790543 707905284 484892200 549197887 626341891 692070039 297430378 743946080 760841385 139847058 794643117 554512752 951554803 846388398 158778864 779284760 360551418 828747200 372779687 823388325 150141631 946710226 694110880 605589777 577320746 204651275 174191903 21509366 413344017 133948351 948128709 692673954 386785575 849376616 300905888 304622080 178499088 403485357 670512166 287513001 408721238 743238484 260798004 469011931 899159659 1220951 422514449 230599805 942160805 933743562 352586599 558774560 475560774 160816628 614578765 191803387 461584506 589599811 106759742 863587562 855048787 940897605 7939621 860806264 332171460 429617846 350935112 521750741 894946228 58127996 805954913 870328021 787394539 860754337 683467149 428993782 238477334 165157208 819930959 111963748 128794583 516624380 825268885 285217773 132659366 621221906 425471927 748276998 979630834 662050114 46741613 315399889 194856202 68834149 258944737 816310034 922072105 697943407 984898719 335384890 477240687 732321927 376466843 318210912 753851621 214014201 601710899 295639879 591490171 664637750 96142634 136106318 844143884 661458138 847567538 885092237 681027930 30807466 294508382 962505908 226501391 680387729 758905899 729505577 117964729 777064607 439938172 866903020 591934930 731157520 947130658 397386674 2501566 578222924 413256016 517788113 957131460 298980314 824572839 873520454 87300116 299627884 699381542 563248060 811340746 401788642 346866750 739352191 273335270 139499837 906162117 236682118 614916946 19664551 258993652 541332082 979161823 538617202 647698806 721821067 981841477 593306398 988545621 764535999 630062374 672101197 70131462 782884516 243780618 637460166 39479657 856175483 549508967 158895744 564546495 266365482 351428240 375424660 329051064 649146179 925421257 626310985 301698408 889899003 470262332 623439878 834577486 326841649 549393659 930566754 909037646 899364971 862126077 545757462 344124598 646919901 193644579 640578310 954325306 477337688 417912632 288931388 267885307 66044000 958983917 184356589 329680247 98955036 913708506 824792178 197478305 562499163 889705603 538174545 990343885 800547473 825290828 798522163 524538294 436843999 264016524 486083053 533461382 377581327 231951226 817974393 937140422 241562253 799556407 921100539 234381935 93066608 113971916 278900925 401368280 549788283 772905259 776355637 937523917 898808080 503311405 571411195 598085752 346183747 756574611 442233554 237663855 537992649 995795461 129327784 796136110 162229505 441809431 665208977 725270941 958394867 112371518 865798084 554144517 161125967 715340003 478554024 378032926 170246763 90375494 695526601 88429447 949890628 726182046 886456789 674250306 626816646 448651268 515804333 210805950 182790015 705160310 406409551 341538511 66460197 814617571 441328875 474603444 960341783 281941013 889790673 573474064 271115163 854904266 144347004 550523378 970181796 510590370 874705810 931361230 676990406 431001895 694973150 941864324 699393602 401784266 454019409 819220055 469277185 743755235 104266760 242734323 980733069 257926581 618995271 157649006 625428515 988285030 54062196 214471495 899496093 703042827 612784426 358372451 28115079 476326301 124938782 967358479 501206026 274327546 466299702 986428669 779778566 108193006 259383679 882940750 961455858 71322410 298029608 894597510 178541052 11539529 97247630 760390548 22607343 878248903 269807670 404692429 593183299 149026321 456253898 284207595 924515862 370302328 631584796 709293077 573970226 835577140 28826666 182755798 633095943 426203241 111746326 999604011 272230310 164042013 670427944 412035944 725563606 175001411 814886617 795700312 324174075 489412018 314517953 374805799 446609443 147116336 882344866 151591272 728186116 163207010 999019883 980301851 833058818 554737115 708989484 539386531 443636258 639830803 342790176 581251024 303781394 494568812 741007791 511362260 765876011 883530800 98567774 69418576 118875243 123923601 379715556 19526982 544116091 390563492 176368413 759678502 662570921 399875184 672169225 741881795 712941803 692825307 790023636 851208794 128962784 19582644 316793812 36426898 102620629 351151544 533557890 326881398 352892338 607107464 203880322 302375551 748912403 978830509 747880351 657684103 849233458 998188437 533785034 425092309 954621439 219182494 188454946 270184213 493843712 292795398 120423659 430666586 443568754 114084089 6737290 160523048 300183347 800000644 715022744 166456415 92081865 291094437 925261775 909073996 752516194 417758011 817016081 304344743 397036506 888081164 852376424 263232653 947663535 370283728 14918413 482155905 583412995 143797020 111207765 739529328 144103595 30986866 670864836 390343346 755660829 929143357 630931211 993429253 532321654 570060235 58276342 993310344 242331519 578374487 641043588 6983120 488141990 328874243 132639961 735889359 232411142 110322644 473135679 807429342 633501275 42349250 317587494 282842058 879038731 300438947 654672177 206214845 209342760 463410230 854150170 36020808 163086952 682566952 552827093 126930543 785604653 530900233 641893230 263602067 276200569 714947919 851410726 226410883 691776254 977957216 387042653 223374451 744353813 907427204 713658013 217825280 294000059 180217322 170778524 608373811 141013142 647466414 70033462 464443509 723351801 972143056 996921453 931831453 922503128 435452472 63340905 388470248 477399509 199826107 269505666 687084026 1453109 41313294 46342193 463700962 72770534 890080981 579059482 76618518 317662340 917428377 477835014 110985330 189790538 201306824 229753324 122687291 5072931 428396480 233434855 78819357 140473498 15732672 711855415 87108656 14398698 812658161 739202889 974502385 752888046 687449444 971645870 689451586 87109426 514512405 543079463 341047667 449839586 423779296 97194642 541387833 864466904 973945237 503306749 901331633 576080272 426295774 663256473 86339936 118577714 885134938 276666304 854301748 822163600 860568710 70152444 440583555 656837662 134032081 187372275 890453767 624073724 825435012 268747127 653540071 903033843 331250145 429507463 632767152 262342000 222513923 219328581 851820635 911336588 312458487 351754747 665965886 87538951 139972011 994132252 262689061 835760964 972980729 802649927 512254777 398796631 522250917 121713213 629005073 436248053 363110229 207667942 8972203 339872125 506017693 252501082 753469035 437850358 487749618 940277970 559901213 362620690 633004220 359015600 774607864 82275620 640131902 951740292 44404890 769119792 531228844 98722556 472131846 6722521 744243486 683947511 79948205 894362992 808498329 373138806 630117728 620205806 8500225 46664613 838613598 749288942 577428010 270087383 704433484 209058493 302568652 180270214 904951864 336251205 965663114 886653016 153710487 394937889 49514733 287385880 229045061 740230028 493593444 456311223 404542345 259601520 889403981 169792083 886294031 201866590 289755874 693871914 981398253 70078347 482294099 932112302 654392736 548880853 175609263 371294575 386852877 127609284 615478508 412997926 858143106 895479947 832473585 243223994 981210034 234141693 630096002 242825014 789582782 117098394 336264277 698405325 429046568 40853386 995089406 484525271 751277281 136606621 911837187 851436506 793047608 413103176 542297549 757098881 185129969 335284140 78797481 517294240 636213549 401995920 322330835 591263024 931198073 879785314 247756397 13638489 22479055 217817916 761946238 260757599 260326022 306044122 873849851 888305595 301905510 355689895 192800441 204876295 883163806 318628015 747498106 986425349 296339906 44522409 278653931 892867489 493604815 103072759 258271641 235982572 818128682 971676061 680615679 315950375 925343137 628227663 125714814 231508398 267858278 661043294 306043233 277277971 957702173 776101327 558634710 160765957 367041989 401303365 738348280 357068384 626852300 31070995 887477448 689472553 527889419 269535277 587086897 733161096 914299837 678113586 474292993 709012179 307531398 810064748 797901299 208787845 963464053 718800843 982300072 868579137 508738047 711348706 10618283 77931473 974622465 82927861 18660201 970550568 726441406 755648742 449699134 524737636 769022185 390057289 264373101 685349063 736406930 36959826 346556701 108137659 74259513 356129762 806654302 439184084 102898625 248615552 384846892 909417679 726582905 455261275 411667816 742377100 368894228 142364747 177824729 765237528 567723442 979192525 51059763 44517289 198431960 68794635 625061388 276539029 690525811 251241424 581959401 111779937 97980118 529527451 461349167 448775352 589474755 734070914 648634162 58194289 127700312 738967892 274655788 248086402 360372011 91860092 767842623 204824083 687762731 800666643 441873006 965003116 76416181 100721111 419574707 96592385 398594448 226717233 783228895 464210285 138841324 143475500 528927673 190602100 672713306 567932293 317129961 119447297 856783578 498419607 770241278 581835046 851535825 69461612 966980211 494000674 248225803 851979952 191945130 200515156 674405052 728144831 728272875 360123208 854873220 406495892 218791016 262222005 27654761 537069785 201728824 579649904 990600405 862936539 489170528 167931522 159171742 872400787 57129673 852574229 490820610 319826334 702033215 348521592 534343591 54981703 355595136 36611370 467658136 303497592 314057517 35786192 782188623 699228111 697218255 881831216 981969826 414685061 780109013 73669186 254005215 776372100 474283163 501323040 745643178 566459482 195713886 606268939 513258527 103990082 94550351 742549105 214446521 808347415 836637303 535703012 587215197 423860578 653129685 23833886 36704342 296080210 499483718 904296710 929029727 612614335 595262870 581262245 776293008 41544486 757582200 702545707 939219571 174822577 61006977 135762681 347672815 317462831 79137589 63457422 169076574 609412884 239007482 419180184 85702269 378841218 962312486 975759338 813592430 298614848 337774062 695644285 215437507 537505470 161637751 428026487 554068332 980291859 128971462 57812256 503957452 337890810 644022480 358112239 32624805 203165409 626836846 649356156 568969250 388389587 923632735 525493389 840687324 250566025 792845903 81666827 819392206 996210784 736259018 955948299 473607776 942142307 430836817 609221574 616803164 910897213 696767293 734516385 208812538 367471945 296394463 16152104 162974678 440707714 393433954 885648653 715475701 979618453 648968674 172223787 32001221 675852746 375090529 534713477 773098777 848631072 573027783 42944070 523519792 711187761 528829670 681476548 273996976 738015047 841466742 284080504 615702183 560526927 338574874 114469382 680978054 321801697 350210138 991060282 211269934 495513404 742185897 337710853 356222437 652700232 297906268 599739011 643229012 424304791 166005947 583441657 181273237 444756570 438602217 562701006 401697313 616457588 723882745 575890074 153154271 607951468 872281060 88563735 679745823 528736626 533132942 400602919 988785552 184197978 548746174 925525206 893671510 920390824 238499367 423645271 384437746 631301249 962671454 555842054 343581778 330533811 523263208 632040548 43735500 695069623 273429294 421851424 47615518 239963563 104726144 225626122 329171820 730899796 617426968 702092830 830790978 673921577 790492440 66328707 954029465 168337020 1630088 514751356 607176650 117472583 73101656 455647109 686275999 177506234 34211173 45704243 974301249 107664803 125453935 421218124 681398596 309102004 303654427 785678268 358335914 412428371 64092158 429119125 685992664 931271296 747495061 493953555 452038040 964552432 823376441 762498710 723932449 738554104 487088184 464574383 216777743 237414808 110838210 53809933 39096168 85007478 878949619 277449099 946965916 920155365 779135433 651428910 189308285 396600022 120483630 149205794 80044871 920980460 661356533 111226555 662669219 768925295 176053716 74150511 1737883 578265164 907382896 848125926 46853286 713448987 360860751 17461738 165543843 100877341 899070948 270815086 383403986 652753719 422125193 755895438 9031399 55363577 944995196 855876492 37444337 704993179 317345001 308797909 589678448 97390329 230528225 992395513 158035530 343493022 335968349 112383927 601256652 277223610 7627837 444762352 773940395 441934881 711263821 157588145 616602883 462553938 61153850 754361130 413243226 94003321 962561698 493255611 493513374 590865246 666280965 88508899 931844133 885750913 550940618 28245072 991447208 59506168 868622146 934242259 978886994 19486355 475034282 80823913 736732333 615663291 681568289 88962100 224330669 745395080 759510192 799073411 662639282 594002365 34583881 984557763 973780097 248763581 84730309 515069331 523832134 337156504 653886437 877474229 823344022 444415496 131980881 920871703 868334961 149747051 364223388 338471368 527394102 277936070 242945345 249943815 406948026 685268173 635911836 117158965 264687150 16306387 445037563 420436957 111150385 374717910 162865036 495369397 262717382 32895107 333702764 308897941 556069211 201584933 775477146 602466690 643060678 833114805 773812478 44207783 768488005 169626064 553305196 251095895 218268795 70599102 847108763 443344909 478187895 3027315 866548268 66845039 28111022 728348799 892994221 2438466 511949564 638742052 35644296 421771136 608705448 862228044 79011611 461038401 941424990 852654211 948656551 699466697 548241206 164373763 153026643 83707778 27241897 415090598 850665523 961426688 214379935 444413176 677890364 164369919 777883491 637438248 448667989 201266275 843048876 546725644 343355203 162976051 501343896 713190692 388656057 221636007 351294635 490643609 707235408 33802265 19246035 874847284 701507209 177904907 746348130 940876147 799679692 337286694 243234842 410601840 105301358 587773253 907184415 943018486 458404261 887522653 691716349 184967283 134960786 521623953 968155049 945839871 186367040 106090030 482836611 634969945 96170145 593792424 221331274 192830951 695854218 154027930 409235251 531459768 916901059 883529158 684557263 389336709 55916270 177436953 368907292 468132268 170121888 716484258 819274111 602113846 774241877 957897891 338604740 157462481 705542758 621382521 667042084 972813522 881388068 933717685 438609722 110532925 888941758 787720708 389616139 493914806 859174476 1382471 715502083 281286797 791055570 548263549 401399801 184237755 267801398 927310547 899179563 248288475 267691594 735476637 756081981 852309304 516722632 613240917 754728253 108357055 706860371 147700380 78710430 83309833 233692528 478092612 690679616 412021076 17047189 712642875 636417894 842730888 907565079 43160733 738319552 479078967 699586360 271221164 487301986 395736723 953938981 422251990 1115337 228930428 972134122 715522734 909386457 372889725 134225028 621280495 719939299 717583553 840781269 777480059 893396631 234664994 522418851 781318238 853084948 906754590 210080414 839279050 652303330 210673375 526450789 205468957 695806447 93186609 633293428 828885464 144540811 676807821 695692344 335109799 681511028 158727694 203086593 433130077 627303637 784672131 260444423 402091767 922474036 312779604 765875820 907757204 175688588 742798495 357032506 348995715 102523705 683126300 5238624 864495158 66945535 983116086 605048762 977243720 780359689 597048062 776777993 527911807 790170608 181910825 837610484 800146880 827068337 43410708 427523854 580553510 138739631 654399693 19951056 276452070 755237817 79844349 834195866 550410343 396212226 114135292 405484729 559269426 321573418 281049546 452334424 536856829 378165302 201534226 64077462 420880031 146240402 186390303 75008882 931399454 35525653 852661481 186616279 196619174 973081336 680667407 914035088 399697800 772612071 806772440 764901726 77835075 508867561 135802164 51337185 844806004 377376375 334557117 451632797 535628269 246698602 407343020 849821447 590637212 293163278 734210798 336664953 187646622 256898315 848461073 947506738 525798712 936320887 135542859 981792862 111336149 622894289 856389752 714727690 383535623 274362365 511723046 110350388 219659398 549731145 870139264 157006266 942232637 194279273 398825823 443973224 857562672 785314938 645977667 368466156 39563158 746164997 856121166 293699299 977543370 995187440 743148374 369529801 905450062 956204185 528785358 946397709 175579086 345313718 889846231 669106684 178482975 552734322 392407350 811665105 69286712 372284502 425607518 403088301 966887743 310598489 430828645 678704283 482454911 631101656 484110857 900965257 772172908 800348825 850793137 106450770 994020769 537360327 619900525 274721462 427440862 104152568 772520948 624299873 264770322 585472044 187541414 526683875 164074832 606421959 623643274 899254708 183976402 497785747 691873105 792107574 91344125 699417801 654080333 783069106 7006809 319856132 710796674 992016219 976342428 524785739 901728148 491609416 494215584 844110347 887309015 26160506 971016040 268925975 120277822 604063452 346554657 723075759 741074025 31310401 699128605 933085304 271942305 866635100 654757593 745685372 474783699 149643733 118484981 699831862 449590934 38236209 46509885 719164030 875061037 458976483 193797543 27147421 853042301 842380100 204506442 836177468 844134162 618051220 598460014 786729844 533034538 783969534 351743611 101414848 400823966 571342997 578790148 614779145 62794744 614123596 713285320 342335638 298984808 470358795 705825958 75395619 97409732 719368343 481210026 860970183 303785357 343909539 492468490 379735052 70761446 615999942 560100127 703396061 875417506 637292167 574829676 714178705 960990520 737692232 969057183 305531360 961619655 667129438 301785478 645628406 169043221 717358338 995259427 733226334 630526608 668951639 405717394 103937805 685637204 131067234 220304164 31459167 248245020 171493145 874715210 903471899 62756947 253950800 670470559 101388909 215315204 307272653 930307559 868401642 724401897 768438071 739351820 653746577 319820640 208984094 556705570 927765956 529825905 272463873 126192487 150848597 727681994 179244088 883641147 734539126 711263686 567503124 320888103 104069829 905005664 682919621 318014434 182535750 771194432 797547617 289584969 181329771 431533496 676625131 219612507 838796291 448551356 24224845 359843652 892807503 795206381 324612695 709178459 832216817 120430737 442968514 56243991 318476794 962082200 264056626 826745371 136500190 96747930 155939886 423228212 830333306 679953367 901884455 673703512 508907027 153305651 820201334 770179740 613680727 729894975 623857759 343787851 256092505 772421682 452604936 314931401 881333656 470940653 978951557 930540973 380730364 867198451 933181132 916235696 595916495 41323640 252430786 800277687 397165252 374765137 649045804 46565839 741733885 690671614 110733248 816121383 967529212 890815141 413908756 874318365 141611952 298068759 717381802 59214898 114755695 305641162 705948906 685113878 954463989 553736925 60625449 41736600 7621989 741407512 829456797 741462965 543468366 940239083 501816937 47666062 681913001 273631851 316620434 676701041 355534 829514073 776632336 492263376 210469252 134630941 59137977 929512006 652940794 630337731 557907018 922030743 113465795 615555076 76855157 835939759 536775645 205228609 260184772 142430879 43216813 361753216 1270964 228294051 410576896 982799215 785039781 667526431 869602829 659807335 99769057 751147678 491775086 245780583 454525846 742056914 521877036 220296468 511902178 266601370 592846258 501314497 129874882 152980212 265843669 555072611 850888228 735519249 637711060 1550489 578679254 107221311 994210642 708293288 861144721 737266685 296641375 933052039 11126777 264000490 194046318 945574596 901531795 826282967 655507805 180719014 915151059 726040755 321011057 715180046 814350355 927535257 447998808 619433616 514755475 884332494 371710246 169285218 724356474 525982143 563912793 93433953 466217438 894178299 697501398 567033366 17890741 540205889 130183149 917356208 724090849 70423665 190990158 201135110 549138476 593515929 257326106 737137048 999793735 917569770 241022932 155015053 111313097 842930114 935991148 663045044 700747831 45821346 787481142 642486917 657494007 198602548 195617518 27652124 198872924 807846224 331189947 521383237 75702431 33315823 380427304 766604908 291951073 883198769 165743661 342369450 119901741 435414116 198616869 496258236 795617904 749387004 927569366 276983821 243028102 569087381 603059824 701584809 26716723 968287471 396982148 756450632 390767130 517195512 157258001 536213578 637304528 391693760 137257853 827895990 127731665 294946950 196138131 706137658 606472825 976356012 853613194 871143217 167694099 292128956 771068158 86376340 682340816 475328875 9142777 510111249 807832523 86501010 581475041 463990000 380870146 963220025 563838352 627453233 517089381 391630212 294814530 208951658 384629437 490157516 52628893 797588715 474724807 227272587 948494763 819706525 822071845 820293474 985171175 196509721 641788255 67779359 15909928 829837471 436147431 837985458 977910967 957064213 426163477 26506045 637378880 697491980 426550316 163507706 588557531 783725241 410318676 592118618 677710850 440611839 395300255 189294064 23906714 42583136 807951108 785331064 828193778 119327248 325801832 261797330 138610112 472657379 774684050 406498826 797493534 152913499 895538741 960531799 147110036 223195292 556216551 150098959 238824465 927437177 291429674 714003129 705221093 320341094 157654379 594284284 613647825 584921732 540918262 540173489 636311033 964992920 519898632 668585680 17423336 307493655 565749443 959246460 764166041 779407120 656273453 300663810 910360677 570547016 829024824 62589907 151944723 170271271 774783935 314263949 122133453 486468024 380223873 564072176 466264877 421110965 116345641 899335912 472755501 1094525 982001735 880358029 517906226 956249877 575666004 837402643 349343245 659359791 871278771 283347427 875917041 921883169 756791212 273106307 837386360 477938666 487381363 824502955 919031725 955512115 322665501 810087989 413274872 842302794 845741996 364697378 248651570 561672743 56083723 352466336 91403929 298277223 712710923 65889793 440980429 624781651 42691429 969276865 399605985 602959835 781870011 474828416 757406790 640249235 677836435 48606990 745030619 514344126 662375010 331268188 906090470 123969602 507249281 391464582 440369170 828761262 71987246 93208526 130057336 558940984 257443221 422974881 175126674 872572610 220052166 762643345 904017990 214371026 435474620 201606233 655318243 502861463 306668120 952227034 452485658 601298920 816028512 365206310 449702157 16011332 559594379 397647211 291306814 487898069 749253483 790065412 225968541 404698213 944249734 279998327 483647866 896828529 752803142 981820781 645192091 599829523 262699003 289336251 773924125 724267031 121788891 489388634 156445328 270511848 942672141 19467633 500173036 913703329 5574805 15711815 724546700 908421886 366656870 883000400 44317749 129642089 991332188 235449898 951873042 701260014 242716215 424145049 526427325 847110729 335297180 500405123 268710448 984574932 518145827 639521535 189459155 194989467 568874305 917729863 524067440 836354379 65951319 905176254 677670206 113576251 829100719 228742899 536058075 459952488 35661436 433375122 591917896 251768447 986176724 41452156 329668600 93242058 883324093 788087221 191525054 100658500 931402267 189987939 77507799 541267593 100319426 252295646 951291367 670546403 241055594 139106463 862993661 190441022 559969975 422056265 295031182 769212726 571754032 459840936 601263734 94550535 462418247 140128175 284046589 517716633 137162322 294109307 145108940 137891449 220105624 714717515 47446012 131436512 795783230 530969743 267593227 663944881 799679833 594986711 335053016 582767469 722418397 296896481 230209720 586076230 614743727 431331724 635676765 224407572 262674838 3948264 451379169 73092951 538261575 449832742 596089294 33598258 355295833 749585056 779283982 12028026 155261770 152697308 962136826 668068002 347286410 570202244 827140684 47527626 718323557 816370794 793817130 383909050 37430293 691600525 267244579 439724000 16514236 394556427 972667433 95627351 768917860 484906802 213164442 530232795 999667199 22970998 195962430 718973651 989353317 679991667 82614081 334242636 154070612 141369320 649560119 294941700 753648763 931750597 595624476 217929559 641751910 155516187 929934426 311814218 563621781 115675938 7268282 214077327 515751778 80303940 859474293 104819834 14666267 438698248 370967075 102418446 648771308 384406051 706223308 387180019 422505462 254568814 957508576 861453171 273620788 357160431 594970161 97620619 695188882 863806927 73795580 831619796 412764641 488320355 166496745 650729114 570353112 637249572 998864384 928100812 299711773 403412409 107088061 555497728 538559029 293461224 125075449 754744951 554926483 401247913 631336954 368279828 843674255 612689173 290486894 889874285 687201386 319209072 50716523 721328817 952528720 689644069 691925098 697138118 743419728 304313287 90962773 807999537 752443236 768020497 723263350 609833759 698200175 290455527 12412551 76057195 470658103 161839442 848250270 891341201 793739884 935450762 780248647 747282619 2939309 495434471 615290218 83240886 153226872 206015466 853065824 286607613 587262517 224543300 18682854 425708713 440071222 112489156 55206176 194947975 848502454 45128038 646699674 707904003 465097687 222513742 296209741 946118455 239518879 911377096 732401043 879722463 439521279 218899525 260815409 298629987 943730642 691277155 476156246 672820437 730659290 228887777 868122007 48900072 941869249 95967919 401169649 419266046 82774292 2019037 410687433 213191968 956415568 289432742 359247340 863130874 735409621 978015602 163674515 690101221 731151852 576927687 274356308 173227997 94325958 277048922 586942010 132357518 429510015 14457096 258749617 624286532 397676309 869820881 735458188 422661113 260573042 830878691 501633546 684987465 14101609 413846158 267282898 174685053 798848687 687828050 16154095 429380227 728905962 307176398 128787924 963373813 635116705 810101457 542600805 814285327 688483143 785490763 430765792 732246458 22764336 250219608 965627385 370426247 875547300 806600509 497806014 892226473 507261130 607061090 540374450 391278082 895918771 362748509 537424313 378413338 110147669 200377064 27447583 897479455 823775639 953237479 77904537 525767911 392601404 733640292 324395589 885572851 72903675 210944406 358891174 28001386 823223658 256709075 36893614 17177626 917689101 967800225 42188720 466189183 177376585 858960042 529961576 21840817 87177842 280349381 757305341 41599611 33512385 502806249 299199482 984031564 760710233 886713402 552372825 296433725 42959935 239347461 901996656 505577226 397492583 780528571 554448394 205330972 737886891 418801145 103689300 584931202 956685513 68908416 381035233 116712948 735896942 988955969 128273580 883459536 84088361 345633862 819484449 936208415 103854965 976664274 260894473 275250573 249253297 500475206 712706457 859162485 142552615 52457775 597790060 540078290 493461512 550449211 86023055 970045264 798011249 677693769 290327655 825590333 809433693 499506523 553354959 364688782 569932216 45502111 775074561 947645154 475795030 998347109 875431843 27576453 929397228 948289320 870472898 335976545 578936863 158546830 121648341 247881486 280784246 351029091 603850168 455226574 812437091 705770900 917150639 612433544 159777852 887097922 59049578 74895561 174420551 915748272 584390141 560267465 285998252 731761479 412499426 611477865 303208315 948936349 986791941 873808940 941320109 377356393 929135532 536392775 246719013 974210448 576674450 48823693 319518890 927953953 354118096 249835903 248077553 331743817 325876463 606999106 201360783 622908265 900248795 587116969 750834440 260092672 577822951 166404649 461657284 282927034 992531410 996633057 548264469 482841198 827860162 64339865 275431219 712005395 346708548 337010110 109853249 509433293 536332109 589175660 557179463 182139880 545879609 959885662 686203958 79338712 685291982 74852095 982747113 708099897 806325816 228597595 441493279 152825802 886310417 888762920 425159298 589337721 697931090 610807499 771154086 550888795 827363937 716969797 925854464 993479078 947854091 266014537 379089653 480670404 259142533 377897263 140231881 660460348 112153967 228949746 395263155 349651906 461866186 873962813 792035273 102852146 444281094 884748380 82979084 52499086 131388922 681746253 884452968 259693058 318933727 738010790 946382765 112748000 371383132 818784693 471816594 579583654 14945919 326881126 815846076 880407287 291429308 683346771 257410738 97136795 840906226 644880057 307098853 938352007 196052071 349877630 68660143 390281430 469900739 398850868 200224082 515783629 385172257 36295697 368176884 865911508 664323322 418791412 444674987 26367106 145201206 222750055 602238317 13105297 996638498 714512023 252966429 440716003 996085362 336851545 668695170 479346819 588795462 417802033 727989070 139631781 710613281 326556224 186800157 775018917 767514350 921812573 645379692 959893510 912745479 7012090 645562536 935817075 249666597 581093175 428843297 882833854 264810352 156448477 785281293 852837348 379467637 741369689 572858770 398072073 130779689 7834307 902547127 383079796 511409897 978007770 657693806 811883422 992701817 818810887 638924689 391199519 65792263 632823896 212584670 652192699 69439786 590329989 145449984 166984283 595682526 708944618 611521163 36518420 49916296 631751827 661271796 554047269 947190260 883227181 78510495 74402282 88401242 267706126 343808469 838674930 316179033 255049273 642085060 830225650 670657518 821299025 830364299 778269634 437825678 864942503 315997991 769979241 405090061 798954802 587073408 363072525 918601636 675954578 653157485 248013830 654999806 572732173 341346209 526687437 691548965 459154836 819314370 320439812 730450061 697173948 368561751 720016506 821333782 153001929 702330064 573407520 585436421 222807194 320984971 960905232 896722948 408772295 445786053 494646161 513108012 573619073 709726119 243630858 877764858 421801387 572948805 154470417 223148115 582947018 710883733 387650913 991158659 144575502 476703099 451372507 901979196 126990159 256058049 366937996 350411171 21477386 525284117 936144041 800105273 2296425 862005008 365011082 325956075 916445755 387001145 127817909 731586829 185357301 873420018 271978451 125277534 248246198 812083602 284325047 435776007 647334472 448866638 389883742 634975628 690415131 594459212 497391085 203495661 466862147 181985169 356131242 730518655 391209342 535153678 625874956 938061066 375507769 86011295 825336238 593476285 416185470 742733317 566337875 165330986 778135305 196490726 495135461 955079507 561899573 287061462 377005177 277480087 365916171 711252305 141945673 478414280 977890872 757810611 718108854 184440600 907037976 879110983 862340944 828431401 843081383 163455039 433648075 315155195 861114764 814023603 154672636 93083391 786814487 685683878 978213354 724723719 850690881 149344513 641950913 121959250 721892773 912091795 215663571 436016774 37406350 140057623 578855323 657848497 827152618 134389806 804908220 118102853 146118225 480808546 800175362 766115104 645184000 728757796 722797667 726254987 925998048 517439948 28840948 399386926 550715776 519593886 339980540 358639394 888654105 980386496 111889384 801273315 945675913 793118277 438288201 645040726 503050325 865530917 2225369 865901769 450973357 540624962 816588924 962777582 852076650 373619047 284716865 548088808 812874765 129646659 270448724 907867449 12233912 161695854 926790679 268329932 669804350 931261292 759823627 113511932 877401367 108810151 675143899 594742144 712247132 180483949 542506329 87095426 139855325 698118137 841112449 717466254 325768196 293348460 808617590 847469465 91029480 900071632 673916550 878045438 813000011 421966103 733332515 105667717 1261714 80400407 926095076 860996443 77277135 573057683 224935059 926055700 663928245 843099189 629241366 414854318 29814436 241727116 833149058 244945807 564610985 847098901 458943509 214250626 743813485 878172972 1097517 962523327 348951880 249522976 410031448 114939618 155762749 472618272 390762058 874885617 823894511 388729156 663252188 557353559 434421169 602381199 156956180 2908395 679698807 892196073 930309148 8294377 89422049 615344162 498470729 2957305 775975990 225257205 207826705 690457893 442906473 669432581 96481564 706677220 938471690 122700504 7792181 899463188 769332065 727839969 282609996 250706424 441231182 7303289 118016641 76392257 351714148 428092128 447660562 900787711 981944024 43952706 610002798 178997171 61056652 872936110 748745767 560805952 700604935 266933532 675669240 297534199 681354357 397601394 68489927 676221833 161291184 311005301 51608475 650978581 751379254 104996569 638972840 425140512 324774192 436558901 13892173 721023128 217047915 846812936 454586120 900109010 527281760 535593667 5301385 715615883 39847468 982593201 111521184 795179753 852866969 40775946 197868106 979972726 445518100 582686199 901051562 141665836 736956345 774133368 240976394 463354469 141702206 711769991 108527073 210885094 679588373 788425972 32729796 261108448 805806149 288920200 646854010 492194788 141599881 454656233 607476209 689891571 420056638 312774312 770283574 460924527 943350126 942149953 656085897 519871013 546777032 988707345 724022603 979655757 832723875 686683490 955642887 641950339 625559802 459554666 910682739 937226957 13022330 502570813 476429926 313037975 747224176 188053470 700216807 64428981 436950485 907608886 859845153 676694886 222105922 264397592 848548452 44151122 826903047 710373435 610002222 63505539 986966285 866059075 224290082 506367085 633035759 664634292 714978316 481073137 368673768 780520197 521319390 362246224 918563044 998135693 349873075 567436346 898245231 464215946 984096462 246761156 787458241 520207403 899174811 23156843 435553722 773388926 751539887 984469525 892106208 874979965 885206976 794987535 435280740 749778441 741439159 711922954 219643165 765524973 21538972 816912171 326448008 320573143 657120933 539480304 692758990 318565985 752374571 507389005 488418496 383801871 676833454 575772563 917489618 208098375 300095201 885828734 667583525 656224090 77603730 575410487 278673790 402052230 556095933 372459335 897098575 929976550 708982919 431548073 1263022 393470602 29547577 329540276 279040604 148712797 359326534 161281330 70873020 384447549 982590795 264360783 90602466 995382759 550085642 443165343 289751940 255059462 399523953 912890910 686051072 630109230 240059793 480120629 605575005 359518421 752797093 42828977 256275276 118440028 259511054 181972419 434033698 577740815 718068060 414648588 664240353 188783388 9078851 265811856 453941038 258394527 968250519 817902525 221117528 285321111 386576227 319637096 691337304 966111215 260114124 919449039 465987791 517817718 680226600 698061459 232737790 155545578 774846452 268111559 706858458 92018918 294130899 952645853 729569529 129946872 41854093 262263986 140095896 808769168 670609945 947053198 693513889 446088455 41448846 951873053 347838626 36559772 724441395 912478065 531443408 273314429 563524720 470326795 403922960 529080246 698381532 784230865 5120484 371654725 937278257 949505037 86273917 467682057 491656273 269325428 417522866 21149131 493501001 662206505 626900226 182018620 537743177 755402411 928851607 504954103 929074350 584925928 728343868 303922810 554263551 549113912 918823274 239138865 115601377 474909017 85101891 347042671 886705962 743559530 654233482 621174889 664099798 202587393 843635376 845461313 205091848 758106380 271784399 799366403 403150093 573325290 702001056 57646748 317130325 626713700 161670031 821541355 497976954 253401250 642178219 731172013 402069060 55417662 459062440 614058892 308493210 431284275 768055528 476820763 868979858 939483109 6503284 214539472 37020776 233704482 683579897 545230350 431658108 418117408 13750477 29060896 301457757 55485564 31649774 631240757 490984376 680910397 953517065 241289318 493223280 984432588 516437866 859376311 959196805 160340738 310940423 558955279 707173919 839093533 567909251 362084159 386726295 332126652 639978528 706203648 185401699 53677042 758748624 317607924 139542058 206639925 839621164 383822501 419369911 159379038 643182193 295061380 795832826 743973556 320206470 516295914 526398481 559805669 837459452 661226775 813357374 611333639 365421832 472070966 849321454 994443413 386281868 256381016 746332340 332649843 735080974 479487605 976575816 595547890 440151740 581180272 296049043 728781255 361663598 719202832 71292059 482822157 999254437 49594121 552415125 835017291 220086150 965208051 972642524 335725676 288454880 119653455 859468533 871550662 321331500 842193028 373571977 524497178 502534538 157727465 685273196 883537800 352259518 544778418 135550105 355986336 437346619 205707011 598393653 216708953 206925332 596553186 75297928 85554699 600523277 652652869 814823690 768730495 657579912 821575171 517873233 380146401 520495256 483742426 649887780 924621255 604023284 714632059 269516141 479748911 81553915 908003182 789994303 582306428 698831794 43032885 195649492 484683900 203926475 916274986 327120274 635414631 618960284 722509466 704258562 597195990 347317796 401832630 199070424 290513616 201581837 960904089 727984881 230160069 748412834 116712767 554850639 291541895 121368029 966519958 974939674 180151123 946995549 102552684 502840746 952825550 501267048 314226815 169875832 26856456 455713519 388040811 560149288 334110580 763968390 64002746 7522183 133281521 33865841 741880288 644137858 782587075 298993300 242100021 574095677 469517974 934862974 550876155 524893938 405181059 562361705 280496216 835814932 405917700 760342067 915082848 288654898 87543551 749257825 703356684 156876808 119319233 674776357 749800767 645371004 572334849 764562517 779150014 893710740 571925210 910923119 759711551 450540936 387077587 103766686 563246424 381685681 548397784 723988910 896309642 479365010 57437503 962081046 49991489 634695128 826673605 721843963 189258698 440748373 289712014 208708122 915437412 826410499 375468840 238645996 399448106 623799817 639540109 366884483 680839979 928742575 200495890 518649761 300375892 19402598 170393728 9475498 64115329 438072016 197005318 435338671 436660850 329167276 794833465 642678633 816318928 790383591 199170322 429890613 413344045 1353104 275418877 296585240 441564673 834281960 392007616 594720967 418052015 793433679 93762964 842704532 58282623 780492624 440621592 219113348 31807136 774411169 309577039 909511737 570037041 379963674 418298532 588702467 855826225 335143360 372585456 647558363 368889989 574791358 767196785 473497185 911213317 413599593 496125896 62100185 447495012 738074166 1370885 549151540 622423622 622039504 397957533 825243403 350590262 858034175 97738348 570011032 682530725 856594100 125010104 947801800 224676841 850025742 812098352 108024875 854844485 802095695 64957161 89423345 646598112 734722274 981177436 219373054 828155345 683327321 130706546 72722651 67153421 110473073 390361464 511772852 912030326 530045709 1658403 494807648 606463446 224491318 953539726 736317539 352560861 578970405 876903235 860344285 785936164 596998446 445183018 886293410 620821550 245250008 135280541 587463977 995928164 926876366 444603222 546888593 540918295 111516133 455297914 15422112 210760319 766535191 211871642 294470598 71164605 713836675 135207847 231729946 681429213 246556538 856744705 524469852 325979341 21908333 887493482 96827379 647706472 709258233 665917461 907223023 159400817 95439068 176434833 337007877 291373197 481227529 456773086 373046677 194284112 906213261 710583651 83126438 478399796 247026852 843335658 575147242 85732249 580957364 732637867 533531574 464318153 598608712 466177600 934720523 28119539 895717905 489049011 90751373 454570290 197304812 456715628 582961037 775738504 76448731 85561925 731715073 137191644 276218379 168332918 878855307 578418435 704969421 228511912 964052848 89888947 684715423 579792105 767503011 43949964 519180832 596798893 167419061 675600410 300320544 20074190 884673002 440130254 977227662 874933400 760985382 394689795 797055883 706937011 385253116 239155191 487198548 738057524 847193249 983924179 839013463 282797981 184042229 991157418 294332456 757845455 540590461 257500533 658610049 940538134 454876013 354604823 173819206 218575149 6106262 765137749 691537794 469026092 739659388 856089571 163409512 906904730 571894596 724129626 829844818 134195303 871611582 150519354 462483399 375364580 632039267 342201329 994397807 993946065 502012240 969514441 896061982 593892176 87739213 265575424 559809233 352710387 350401481 548335799 758524071 986315179 13379545 818086133 251740911 966888921 330624065 985144749 214354202 578090047 825789029 259815607 349503431 29697802 507513684 118949334 363607989 230762706 10627784 648863154 234390225 785868691 646743070 624409822 284637998 53798322 430259551 42428113 416502792 179541245 658549302 313898732 960808642 573006248 726206719 584315258 382117350 802769235 660470713 352787628 389918248 208374270 762214662 45450138 190028644 168390940 603078973 628753224 8115100 905111167 385689423 670911900 774194686 450817380 336598495 213396585 112639450 765059955 42582579 630710888 417713069 641048502 867464505 910470712 361302038 623822244 414146184 13409640 315401448 622572570 174117730 8879459 973666321 818771038 811238317 191271559 182305965 993603868 644749047 195929873 252339712 971550059 550067064 650916908 625340020 860016068 681023251 11985131 261461663 870568720 28215880 531248453 101047865 733837724 261135178 215078173 341396776 228001822 258957043 945438010 89866357 409192114 664915390 322154065 857065813 217470428 773191893 441440758 223751713 788403594 851138308 656337326 200936286 202387474 448729029 151158755 390421687 660932915 694351415 930670818 292337151 348136719 406435360 290006507 634194995 864356146 339056880 63485974 413899379 912795030 82854593 214800757 327496458 356368791 122585421 345341941 973050993 90673912 608552190 486243438 552276031 710495465 106698725 919040933 947326517 705608443 292370100 261411648 335003458 736556079 503216079 452536019 630121593 595481578 780154428 563528404 184669716 733431032 562859 276537257 476591223 505205903 231646832 430490261 739787052 7660875 122006158 372564687 591894505 502607411 790641834 75109485 279330182 241088947 625137173 768213873 324959496 969767587 459242692 99299525 243849368 674594619 180932187 911627576 923936399 240269860 948328218 436543622 839445603 441966442 933475060 4055118 335686070 878905220 120995458 991334684 443399000 49850958 999877123 643109215 785784891 724259340 347680859 41379440 70922361 302025839 844803610 195256723 678772820 509979526 794652280 729755375 52633915 838664405 942855767 262740116 628969662 363238460 409903931 236119935 636051866 558363404 999391826 569187981 510161584 822885624 669435769 125693320 596738574 454040862 214265384 57603110 131750889 114220293 110046348 956169469 531809172 56584599 522374769 248899724 4542621 393404970 779136078 295363135 154290598 82748284 251014215 785809254 720831880 149457076 526108444 920687164 471041084 529728092 891699010 182325472 152344548 519014250 174249935 696705116 556831184 575457342 491144065 593465764 597467503 927220122 695971777 280554637 137795933 60634541 975930267 309195482 409695326 197665037 833983688 7232310 880091741 414441909 712104617 267885614 983895917 620931081 935795011 463035713 201614537 50903514 569059399 576335818 173704149 952420701 886079497 761390617 25382683 937821228 982981261 950555737 44997457 753888848 217073783 850727845 546738255 988124979 421770263 678186241 485866522 321194156 469214819 142785107 905413084 431015929 888663036 147719534 985975018 828709565 406194218 928690957 465486272 557905415 17977819 769570765 356469502 607195468 673916070 907708216 355396208 952326505 735853002 797915843 666480653 401596322 676242222 511663813 673322219 743075494 434750053 601724797 647083089 736797066 752131489 948027416 511780520 40788685 90383557 37272484 788778629 966314832 10264661 621803038 120271267 532801891 102381186 301313380 288390626 428435898 939251237 460830272 86210642 41546869 578672058 715894116 646656546 741265940 952452203 849311848 380005299 21146250 76877063 121351376 181747586 120007209 1815809 876695298 894105918 559650990 582415230 56446801 371819704 388893760 787298882 100256502 904568559 949834860 356309692 605805843 503594753 265772838 301268230 71483823 22046525 617849805 150109404 446788796 979380244 241413668 844940968 535936789 331876132 893183835 27145849 996698488 114477615 590593285 849742084 218027922 829786654 753013281 987703978 154526964 621268487 488651281 387578993 582769685 805934117 781257125 366191882 65702742 908753115 446439443 771314123 754407938 926712755 998195190 237052339 584797514 150345825 502537813 573526635 433213255 925591489 108243867 989420350 605569528 223713493 784565406 913186344 30402635 707543497 31746463 687209161 663942412 646293232 343987519 84921187 95671803 74789830 780329356 210709992 517766321 253549551 120269052 399814896 184120764 700681266 232806252 301082299 197563790 762570118 462433056 570613292 815824255 275903495 116441033 73553367 399038670 66589172 642996088 236665072 969178025 526132415 223881645 338849880 333385756 575994357 983908426 562923926 397634343 230532691 309506208 615004123 976707491 286599868 530265189 696006906 693325662 386443068 109459121 479170164 25607691 590017542 859164940 500029042 605335615 514610809 520827494 942059203 969348221 745255440 845890064 275994074 816288815 413700988 681060041 118940637 451309221 145105298 868456887 753668495 72242221 113720392 493447525 839766878 957999274 624822724 539593931 388443748 69121894 86147920 441308229 98103650 732970812 395003490 327930006 300315579 513341443 227202450 840807920 581984897 424555390 612063655 898366182 747667304 191484504 836495497 900489589 253188050 207767840 254705226 663492096 507362761 175996752 896080424 744705624 874611444 555430987 741540230 301056177 856778162 222685780 867544304 243245222 686345728 399220644 526564633 295183937 104150149 656165198 320655321 104723178 351279505 278685784 235959095 797736058 204975639 711022762 746428508 670558765 656141499 829966357 563945116 418621864 999888066 151557457 60393077 279487481 749282078 452385022 335405188 224271509 506304357 14720170 780147867 778365015 648130258 818297283 542930088 680499337 801041746 187636387 1810891 932952531 430978163 165917579 736763203 918728525 414942824 719109026 152536955 543050100 681222934 190248958 472876299 103985966 30654211 174915735 910056874 963916488 244654170 577275211 837020989 964837623 313331703 323150565 330915023 943432662 434101334 89933848 747514258 135369198 36318882 843263611 633122276 649016616 320800679 538815377 2851399 447359455 57073885 426388928 386041445 469272522 873769316 686461791 42901522 367847188 954690819 584925603 510694986 886146886 985798953 588153773 798957105 242658390 262104556 812222342 42144270 147530661 337151246 40245539 251579481 355200243 803951860 773081434 851736234 296402287 362750895 812780783 175178439 242055342 300361205 29477766 65032089 482270129 376387109 427826871 540299317 503641049 815696198 376860404 777604821 505124338 661577736 156360869 311990748 150790454 325229509 877567247 896136407 866231872 172541303 92435303 401774969 794459157 535918793 217490880 137804443 815942947 874851592 547541538 134316352 172006972 637600300 383922546 435730329 192249250 855838678 573571714 488342514 946357243 188637772 835457806 718975947 133209421 318664061 181771445 655444676 842103829 382075902 444539391 453791659 9878059 574183443 905528671 259777395 391743958 245798561 738121260 409908276 392255685 336093749 348468140 595502646 220539658 668491273 700728324 718001377 908978725 947560700 992133447 276212681 810210298 287812757 596456558 683007914 533280214 772170243 106570841 274124647 919468913 31384349 847891668 467975947 328896994 602458464 358671245 792721095 144224950 186095865 984048928 374337018 554919124 840745908 547619340 804786213 946096534 50558982 667662269 480992756 927221684 880051730 536523648 666373178 617342552 73670815 925041045 501712117 612238350 796002843 178703383 766420034 612935627 498504090 534595601 592403315 991188970 453575651 7869042 631236599 761300789 74061911 362850586 800825448 583037397 41056772 998379461 913360783 80027232 381670568 159605021 261906771 850093269 742534045 355844531 571302344 841520023 732663533 680623872 136044584 379087989 936642117 238090856 643095515 430242724 827053564 526539827 686127463 188401344 816106516 399010958 521090433 241164752 906913077 638115995 643761154 945068099 313241513 222921555 505004786 211742184 33463915 97757858 405931389 33273344 558570522 501153370 28171503 538306611 315874813 444660021 670852040 285616010 853240579 138862032 925527212 221292413 116657346 752448443 191924580 641899750 739125371 716528739 59248101 623876877 558553108 487796768 126002504 585007262 979469598 859156790 641689811 835730607 911235536 840306895 64952046 808948156 302441992 224040952 840010800 790231215 455979086 984985775 151037011 137156556 820753106 625949392 653209912 650915794 144873065 891406123 50920428 219318488 341568915 656227947 757424034 17159526 26832761 283713581 797708470 1240936 725135593 96520689 517549996 494981940 599792984 661690912 734983725 209308297 873348074 783453453 248775693 485817735 829015140 124197870 255929414 102771646 910367284 666940391 734164990 933735207 635054450 554146049 199352191 62367003 216971743 394522410 28541757 678194526 496689631 330217793 255280336 673435427 799758724 604403202 726886911 651147257 220984196 402700569 557381557 261905633 843311678 977479702 555424514 34999615 928583867 403175285 354484773 794721760 21077929 948734867 38482302 544925691 148525663 525477309 425068701 480890923 85586396 218131232 307523377 453384055 378299848 912171482 256543765 391786056 173931379 928771051 608376911 414882682 821796561 980759608 185885191 631810888 8376708 16450457 984017300 16482389 368841172 750275523 149529710 580257966 932700593 879784022 713020474 76819660 330468780 178781662 74287557 963186824 698675210 436960974 179342335 847210026 372343219 445005434 921171202 392221024 410606387 666744360 561277719 667295293 280975297 129515007 15526821 76638781 849076799 674786320 641330751 415928137 568317489 644412758 44496803 658967212 676096200 766173361 852832944 748710941 865362910 65241576 177455479 17610934 907608302 582649009 671882279 732242430 318009888 90658210 185401372 157205732 32040773 276297021 630995162 401309372 915268306 399636716 523005708 911849026 61432043 87894527 741933445 562528412 493989456 214520497 287226433 847007320 105591159 554426656 965611362 884407403 240503664 309023321 75552309 23225648 262643970 899329867 631023659 849152369 484561808 440329169 441765856 401203543 582115371 151417256 215154201 430034297 439384201 785703294 73480382 761357780 756208137 279705572 906450917 515157199 383376051 511970897 666313929 974139443 680505396 856958502 885358284 861339192 160596710 197743023 976217723 373907067 120303306 356284186 452806792 204296450 652548227 68927364 595793615 588831545 401218659 779495915 798908753 952301815 320952671 411565113 760499514 265972598 199908376 330471487 246822881 482199135 850473940 381079224 173430716 966211258 976082309 425518149 662846322 387153924 525523136 326365293 611068620 856548628 700417733 374926498 212371905 933368113 975988089 827072831 583107942 484380424 870560877 607379075 390765314 728338864 857974232 145179545 566507267 472140198 85448090 667193745 615479287 33858508 366494268 540490854 512889755 13231219 467142121 497216503 882443731 51697230 809668986 99065615 701447592 225435003 95862128 983046751 403922003 815586430 400461041 827586430 249274409 436761417 705577163 910433267 349158321 624216619 877568628 941073439 996678804 551544549 492179728 297698907 200079015 805523355 395036772 714895323 752803554 511146456 26961374 255919553 292251245 480091030 393403800 321471000 833886097 371337776 768019278 502634195 448714944 489285996 708171627 946599111 43754390 318890613 40573432 195193015 206363608 611554019 252728756 549807180 34568304 690298289 15862008 173369112 383708785 759163460 396483792 265409429 421571604 491126636 741939689 199363618 330922947 606316126 731527576 782975498 357893890 114922421 646891233 442909309 326572423 596091510 385269606 208944021 151037487 865975569 513908858 71438675 755396090 128197720 447075349 557938336 474332951 206555789 90548692 793231950 267319253 745101902 927910399 490884630 493788595 342308785 550297218 971450265 36201042 308658468 332810746 340386656 452454526 907651718 768156325 467432925 202251050 385484832 125181286 539662952 676000881 852008346 929638609 213765188 776281751 159266062 937332760 777798555 215031047 41689591 277338656 804686971 21329749 135201849 341966958 739770846 954036795 828003105 215522353 358460070 302376605 689316969 101397825 548442783 320288389 742684456 711043355 358553460 229908007 119301864 998428646 880925637 522869983 858318484 414111606 163131918 981362735 918403457 585126975 487527354 585933506 737198191 505811552 319272476 967872879 372587647 805448864 979896684 522471980 298956352 558016369 271090635 380884256 900882091 184679911 934491715 266398613 466801689 785272002 654903746 466020607 185781070 924947307 332513319 260890615 540444283 758813424 769912108 738556737 87605298 918756104 30844291 357286089 254607476 733679378 253069750 362665634 547592100 115670807 402626368 640731657 192812945 826556101 402020228 255254622 27928685 344824433 548554956 93291568 181823959 422499871 254871879 166145071 497147858 363312243 708042254 545022521 307194833 605315517 632691747 471916621 979953061 875889907 17918832 547101594 735120011 858609847 672595909 158454131 465996840 583469135 39954397 185470544 533926797 268588712 195895382 991965913 21948458 186586974 797814973 37930198 636990690 908008364 552767105 787327037 259875063 273574266 647095804 19888165 146442516 468430938 254770543 23026133 228668498 756615297 973344261 982692788 408120111 666201038 35792074 363881565 835115146 206301897 988723135 304525699 803723961 795155360 417403582 657129228 902629995 619219245 547450005 847267334 679466428 695947244 455368691 503006114 582262585 527200519 499285616 250835002 26674374 532186443 341368210 799387732 229134017 644674097 658749886 967646619 818128096 333864663 185977670 578862049 670682445 941115654 260926311 561605663 342872979 598500395 304142652 56317308 4327847 394930270 874668243 565455936 394548454 301576030 276732443 79784162 938299161 98869141 988041709 988860669 308819305 490096399 355027723 138830928 898474861 819662980 949733153 231446986 368429088 427002453 773945787 103051390 555241709 690663812 944661844 332264102 567560858 326476487 80466512 169769125 464778338 618996083 489229815 279770119 70792415 501142148 502567801 177196670 482668311 735844775 354995950 149876969 980867961 795502116 893274715 755260999 88340694 600387065 768607399 567210183 955080048 363725507 213640869 781870263 304468971 223547590 974869515 877173654 573508176 284063223 882283644 715362056 594198299 959495913 278372993 827362263 268804644 671226333 319280780 47624437 373904821 751758265 482039286 340844671 518929271 389141260 956584962 814744249 853969280 196364049 622683861 212461323 779898702 970839202 580596868 854652682 103816390 80081227 116539911 219580275 893977911 673162297 822560828 101448486 283547732 227949891 766500082 930161201 82841403 233880038 155067353 736648903 861329776 915015247 406606726 909565504 740136419 518333512 263666303 641579042 826916838 60659274 64576555 106043162 526203450 509258358 219927002 669001720 827149826 264262034 603784648 667806392 901945803 456353293 332212245 618926462 301325962 365771517 389856202 673558422 622679198 785975586 168905178 679297137 647370954 451683815 3543068 699775148 608238399 808338005 857188946 893797128 472958604 190619176 122030372 248691573 210966197 959744700 836681510 831436801 271920666 479247898 111882193 902700522 907646605 368617971 159325828 88564883 875678272 650103963 926976393 980843652 406881488 248757266 914276626 363802230 534306373 74608385 462111288 720108610 101569032 198143412 574835708 547632619 886935027 612373799 148090438 980145304 570547518 916654581 579292907 601174949 88826260 199266662 407511200 391686532 581832702 215262317 638637065 478202593 57469426 967708317 144265902 240746879 970311249 241563445 246025728 127918423 517224538 777189407 715686490 781701506 439867072 512269032 541440508 315269956 960274069 531827144 921317902 909455113 872798294 415409313 612301733 909110625 355631851 423612918 632332983 713321994 663455901 459399673 669667108 41479401 23105063 17787263 693752249 161813252 850344864 5081353 284805415 425363 769418128 71605183 308628739 986048238 734099430 348353133 738567378 419317659 403908343 156922509 945188607 322873666 923742844 976873278 871076820 583778233 407414942 110421063 411491987 923145722 532669162 898924823 758125654 407478059 321000790 160744901 710463786 182686610 934062396 403280400 533042434 167830951 336441957 821755488 136626355 801020162 782127613 457921733 850362113 949066091 337913238 460542965 457930642 803515334 388274736 182652495 903013885 8468268 131989298 909573850 286941364 18941398 667223912 610722887 872306719 425994279 890867716 79277549 501073797 363873709 833438633 387512520 51154452 587804695 322464089 142833284 95422953 750568514 568787838 843084911 710501637 705489205 412952820 32015484 463450190 788989205 637171701 380822609 841288857 298988089 977893156 216536113 496331166 764852251 407391378 520076810 196168446 869088863 219803315 195979895 479041858 77312977 544069989 809187765 662118620 204596064 871759592 854329005 228213540 50551086 50394354 379552234 808508255 117310841 301389203 219950760 419707313 731904431 48477766 351605702 377723948 119559008 329379062 207762121 846525391 108442955 561215724 66478304 495210357 466502737 235047390 405851109 574860008 200637567 337997549 570563411 686609885 592593926 957046681 479018324 865777385 28187714 416823507 850951611 998795919 988364985 797640173 535405303 240403001 586975250 874719143 581944620 937498424 839488802 157676324 139788579 103513029 232885221 370392821 949004617 387185152 826242174 946340875 242616498 160030965 315338294 84671172 192160292 981525392 441105028 330854377 424831745 264392626 976920066 813639584 122615387 583981335 59948915 988714119 30942697 902901865 462044865 52880532 712146695 708366905 642529791 694229043 498233793 443809280 54472810 284229418 634235843 172268323 629662052 580928435 983022436 998159847 332180347 933777259 790595238 141540479 518487903 412387412 356518449 323853314 177852140 736733662 436221519 514448757 299029030 897187806 47583739 101343935 613784633 161999251 140070356 48578993 860407926 248890015 925989152 445464324 337184600 115666959 574074576 750944092 784372615 476314459 31303803 660338238 857184968 564787550 145553756 627124001 818281234 250944352 365465441 588135000 152625024 972595211 23771157 553888809 353914709 638803575 873152944 442376634 650375931 595005214 336988691 736017951 743530759 558684392 641578434 800674127 676467507 998122530 378913007 243292458 377076067 581916545 924062832 722382463 598900385 419670306 689672901 619293688 50007587 931301770 771627797 821819189 465824320 603086502 82542639 806700978 199189887 626142925 15898504 238971869 385616776 154451385 982696516 473761795 363362867 673168274 268820518 303776606 496307830 276052453 448530594 680578832 446534009 336758439 736712139 702987556 403883909 94031666 324229473 946674057 498753291 507006290 144491978 341258521 778672040 847185455 947103003 504480405 790569763 788601184 488037380 77059495 994289249 263517666 782704872 860824028 45371000 230889755 413082318 736819124 53215143 667001301 114247783 680893326 68071498 397419848 803930374 702044336 713061873 79308307 498513837 877874254 24566350 587753272 503021059 620240003 619533373 54596903 856928601 913359692 123797697 782086322 496353184 878704533 453188100 913679896 660587647 48345135 779993690 620132864 42599480 145877715 671289663 620357749 729865406 682473249 925587031 495528426 450930341 335780772 360103017 362129475 267764780 110923468 541209709 800235966 398995519 701603315 349004924 277248012 636123497 859286106 596040920 452127555 114718433 899894317 597072112 377044703 116021641 209002359 583283798 441273029 444668644 97526071 407556035 476390977 395953191 308693066 324641308 59030283 901583654 146120829 324252012 999578174 960352608 125457278 686834148 336360290 455608573 206675863 739389156 122194274 302259146 887535169 85875693 482878355 737583682 980497384 392761257 169081522 208025221 933766197 193188588 867591143 466262868 574328160 366596528 730728381 416552739 322101642 656900637 337267498 577647881 457147324 669408121 886371978 785597381 510803177 222278457 734668453 669840060 321515752 931982840 496958884 16340225 246254970 575005307 138623009 690122313 824699211 760991914 565137942 463769074 371697899 315713180 530632169 500349956 501554641 457150346 748949865 266599986 669725025 202343128 412113094 571837647 453961187 189392144 829680548 642544604 749320585 251625702 278810628 22467071 681466733 964099126 417249622 541013896 835984524 198119170 635268973 643443054 392553684 751985272 432391559 569241171 955430934 402541030 458016073 226064248 483894537 924892621 692415425 778380755 364801102 2529485 3361379 23254265 146710896 625423027 559440396 577153061 694229472 540050287 587048965 441787716 795220471 516360735 936067319 59755490 144996341 894736903 99999224 133469240 956247812 918073231 144380295 818903076 42299449 148481869 869305481 676365360 849803655 479935226 363639625 977285766 364263634 144289917 670895229 201479683 33361125 469278431 389207109 391000355 313786476 405649232 903162659 659778316 93043463 571389490 99391237 706493073 77072437 917334531 663479362 536847141 203330140 629972081 697377429 228470762 539516369 316406605 6250021 247570088 750967243 740114835 300825214 110372556 11172716 772812905 188922774 712412784 582241468 424792597 888707275 437120849 567128496 946910990 434667486 468390870 167481630 490711790 846048770 575825423 898010057 716397434 49495754 279175861 605399384 506647964 408901427 102062626 294904671 427502183 574940833 796249956 74093653 166574103 174008290 511359270 669064860 714869516 778270765 470546112 481737087 128789207 685395999 871985459 939340843 853206311 681997499 487106595 437501117 472490711 464731759 969110753 760898869 735982316 286336017 402088292 918460540 392940434 918373853 405302605 802528612 624483100 938805882 850607842 511138215 169286915 719923701 77528592 816695523 931206381 151008963 487824242 927017892 182312866 13491905 978009415 688202332 363784216 361521202 996230258 971946593 708884587 530368200 646931332 485695222 790175962 948739220 820570041 651029575 331160789 435512598 173687275 503046752 912616940 769872434 104503203 893212735 132130522 247491382 47005198 422954176 571810950 243187159 234897673 799201202 131884281 630901041 317003277 68604098 467240037 30309578 264252226 432967309 644596263 614197648 916401276 584055697 957185987 457085656 458886703 277053750 826151393 917846367 376207483 709263570 882230612 861823050 171448868 787479196 796808732 71350822 494973343 199500468 586198107 947922922 137407487 109974566 41577306 723203057 322928132 829691873 351029901 739792128 504659735 449358782 222835343 669372233 235590 966608769 916635683 58137435 791438664 263824846 967514423 963269431 860310396 387075901 569796570 460683584 877678827 142595904 820619083 380098372 260697410 458047296 559642346 978918779 160522968 501332864 463998276 173400958 64594865 197038133 972727567 912696662 711005806 931777655 985086496 171298415 187322722 980726084 215443585 228782234 224834947 272849036 816413526 154487579 808468337 470888986 902041081 988388244 105635955 427344044 97998563 59686163 483790711 359984352 4664500 225385227 534184470 181606976 350125883 925949020 578984334 143488062 694546026 154598985 252744135 364742965 485777756 431822723 471153744 874660194 541853527 963172634 10536800 918399984 105686723 162455438 403855577 753016816 595307059 924238279 118053181 812668767 689192291 69366285 20867262 955655705 714008633 251919641 776945205 334822633 474657722 3443462 843941918 519300224 729839392 442399322 772675490 811201658 403211972 461175557 986943376 957945428 422467880 25839449 638094689 629738618 417540089 801612051 524025904 961102142 699078407 507378776 771455432 252178902 61346128 424757942 243020184 935314278 115393526 56582182 391088054 814482423 531744582 215325697 130811361 131960184 926480307 385101324 9966208 976458948 514043606 440937846 235743140 745848478 627945077 302095828 744779269 38764717 682703224 481893410 128191485 88595585 797841653 998196679 239143064 395715220 978011431 627131281 210226821 475592523 783270513 48892080 138639130 786133482 932125789 351429577 777946455 838044583 339004063 460490203 880476384 731263126 604140051 546820948 397158154 457532095 978486715 629034767 281634760 941652741 20360131 814738754 31353533 358583866 302438526 171689621 964371498 265809947 820690793 455442198 821652996 601479750 712234530 588870459 783799009 59285831 518924156 680689375 103153406 712525706 348510821 269886537 279577413 734657137 592801529 82983204 105118275 130379573 368708475 645489542 931704113 457545219 215329110 846069999 400035053 745301226 631726625 387831619 155263743 454790887 706413715 442930637 678521495 593488600 661850513 625499202 749782920 469657735 674543399 106410436 146189145 451284903 400853892 761886677 798841898 20328143 412609032 30311777 841048015 960264832 815373878 345520575 906068154 909735463 777914039 120565164 417957648 360073488 847720030 975600716 76640150 310722425 710753579 151523377 624280762 138749824 896482107 123059275 752798101 803153967 837280218 403767542 363945188 238805625 576658561 347298559 942826515 797202997 215871941 635106443 287521835 555694884 820915309 334541365 602542825 733963761 473536609 235212279 922479526 72245548 971930040 633844279 616346223 712393809 834772906 507727043 927160561 409453759 183317405 283498958 626702723 295602877 425339931 354874616 138849829 991905921 931495382 724867142 184412029 926456609 693780139 636786980 844951003 386533791 41228445 266200937 502021686 80314851 919182550 634222672 316418863 2692032 992294571 273573759 574957066 848207344 318418583 738380802 192129466 801754386 40791867 430152018 987996626 89429682 167554149 296932426 297195415 496791615 463026694 462627886 560638186 941140498 322015547 444386220 972301151 768785007 388870983 677281244 105571112 801967226 374243476 11954489 138214443 326739275 703176121 471282341 662371560 927901911 637593196 455264882 941465494 715962623 895394962 670297428 300952327 969614990 614318393 347676521 467797435 374390836 404752785 877859124 690654426 314083212 239712758 246765733 143970610 153647125 292029676 154332172 763608124 644899898 569284639 618194734 824005912 89137738 957550433 968338987 39688586 734257538 26658220 758672017 607166725 625949952 111947300 390787671 241881500 353950417 719594263 581736150 67626768 444590816 239585527 136067545 298364877 147906570 225710429 6227080 562296795 152347410 976350220 249022076 629833205 478001055 144060914 220004019 394398841 122701123 528092707 836870287 944012399 424309876 736714966 777270492 663179909 496590745 880159858 257483988 333112340 58235897 622094464 328384786 622192155 533678787 655831735 709712027 192102465 721324049 418730989 410833885 162636245 974053351 94805799 403413420 551898316 504750379 745644690 939693638 108978378 507440304 731155070 828524112 670520341 649901102 937159789 177841113 194807960 625982281 643813371 82673491 880353006 334737030 615374836 797128349 471887190 789489755 540565840 990921213 517913783 822431262 691647014 349503775 686847392 702877968 259924157 978017816 217259336 490315101 170855546 292872808 842424975 717273364 326129398 58870768 697711868 30169390 124595437 634612224 744390078 452751502 238602045 786227791 974207147 419236604 651508722 713218550 720584004 984153130 204086084 115980924 256865200 721020081 872104587 460290257 958618047 663488784 482623818 524759620 238776295 523115701 699722286 78878105 210583622 629042926 340382216 197385713 588135846 28965877 764063959 742149593 227509879 785477611 641000121 669185609 438700490 308282329 220800765 416571294 152862823 35335857 265720596 521699483 80312749 872770635 197242778 428618094 175981233 899070569 923474261 605922991 986016553 664925109 19766828 269964887 714258032 349539007 288304692 882490574 586969748 292664065 547327659 3210721 140539201 863057885 634550001 147727810 741530829 88092571 313728398 245995541 263058744 775406701 456167743 808171736 107530541 244391275 214629845 464149885 26974452 18414998 274292568 796868055 138160010 290318555 290106100 958088996 364836238 775287047 446364156 189933835 468520005 994881749 466142955 379771029 397280415 803163366 671433313 236755258 393598513 699753667 211164717 847219672 611795518 332861406 584642626 753411507 800144556 315171473 795903931 449278328 662468363 440674587 368698328 14459454 364671888 355946151 814451464 307362945 752769564 389444676 161645022 649816869 267355959 171277807 998238741 42882169 864347916 801535365 466456460 801495857 419064953 998765523 38379863 638460778 65914871 682453897 849811616 760025005 108738224 233415742 58797513 17090531 551503732 305717110 901473104 762029154 199669688 102733720 245915879 959104747 416775839 998446329 266718298 753251229 555076586 459276494 551491752 604898314 339403022 671706683 889635060 573777444 645541922 609729865 792372617 88324941 833548514 245654504 108550363 97026885 687860662 575749873 770642563 407286589 875348654 176259367 351539268 224596166 683432068 382394931 989765903 303981283 776750994 513836964 769896433 598483189 48814819 10748404 570339111 565948362 826213156 834302857 230567189 631705753 702594478 767750052 907922246 519139325 914042751 972588927 825901933 308237053 694944319 815978794 848279142 777352708 90261821 918982830 629016883 875693035 583566448 301505266 259373056 839742699 832584568 856735428 427996449 931133355 771399837 860833251 769071120 908913208 814498250 356319723 890060401 307483402 622579613 152031080 964345614 167593978 315912270 180492491 723774172 271214930 233384139 744855405 335544821 166046394 453217183 109306509 51542173 893160011 579138049 237364824 167429182 900745601 974441682 18066140 918075500 657766464 887932312 612549910 558818276 294613463 861388677 809644516 375144839 646886907 560751212 406704912 861684576 828405705 434462161 955336270 451612581 248930500 139404761 636439602 430740398 706040798 595830352 338518339 698750720 224238699 441786291 770395364 170874951 465804068 34404380 854568556 339666003 326322482 176596057 563372560 661670690 676987682 813144785 902393332 730377942 834717673 214104225 423659808 876038332 261760484 907878022 172275847 214896712 877283288 298610153 288815104 631938065 626573811 117247958 459767117 588666077 432519880 47784456 504183576 635445400 788296790 504693722 60425201 765563218 678850308 673313624 701377361 46259275 998723740 468842544 624867995 203245282 7104854 501428407 866378264 26783140 739335887 928570605 817711606 604593989 896198920 892005242 321228629 509262750 614948213 930003118 257057582 823074998 492789732 971346815 943651185 379127221 754788760 361240204 130202604 705783791 314820660 925299484 612785497 281552863 426497735 908772385 72813145 254236712 246689986 722717487 90902644 664599702 182383366 737402247 415903007 467902749 38619353 700495121 65063599 787822808 942697700 983684953 439957862 613285641 617776705 816375448 106877552 224653850 24619881 80948398 991829215 218161827 111305027 5729826 715218598 424237661 546161693 778185508 144143788 574185768 322627245 490507403 348211384 853755922 805392143 835615444 704742011 545786449 39997383 94834985 559367825 168193082 3943618 498089559 61310070 217282135 493189209 808529364 123984536 666479692 7700038 624935621 982474055 880901619 566601392 594339053 117040058 420716100 696511267 858826683 539058966 603827298 739107732 157758280 598505315 672698522 745577315 758344530 331727503 844160348 479085139 776070210 522280311 633516616 401509777 468743716 583353052 482227486 364784816 958265269 606712420 529954504 615120563 655866701 495700388 583486559 121884412 353953272 230549781 356349975 767345752 450322020 528184598 189273177 952589820 259561449 710571250 857545387 267239558 956931973 287492056 941813445 545181948 376509151 468301284 445956993 378599883 799752518 616007447 853920737 63412680 751435445 770962008 180917776 465020207 721262791 541253754 510394979 602472615 32175045 721703734 855333973 202736186 580735390 734541359 343816583 210328162 740063978 517427688 730001094 959212282 302192615 433957595 751459591 540272710 242690428 388032603 74748003 80881655 558925883 612096938 719229725 550349852 274051929 402330354 813971617 797115449 911914933 892659271 920845955 732285487 766501590 392668831 631550332 617090892 500660717 410281691 933533808 400953158 635535055 866832583 342180206 831654715 117360383 838446096 78056613 137681583 2866334 194172756 24827249 650401422 122676611 215768850 384534868 793487921 102954526 999741109 460230396 205236304 853273236 823866249 24061244 203321878 334865320 861295052 268381711 349194253 343007692 257821599 495440790 569062185 581463062 384355339 895041310 852149195 61291846 470541311 69208090 61066933 352095427 205437782 323807014 577159188 427247004 176748498 269306119 766149250 787300745 333927451 159876514 62225398 725724135 590708419 97661201 758963418 584268991 663590721 298010250 149687547 384772543 916572923 87901044 647420042 755056961 824608821 92318299 80770857 500063043 284027683 803608556 464817368 40954475 318945503 459061768 172962570 126544649 650558056 743841458 16524178 613591570 228311465 514655509 144019885 765461035 944264819 992025216 266465534 327613078 63974781 263879026 291094437 878893125 896779626 807170702 231872491 122021068 436306374 529715616 210084820 511915376 958941183 770684057 233994652 985992723 633954412 65656470 893763055 43439175 562000212 522914008 710789088 364672065 805950429 24350671 681874417 622524386 813277465 669916168 258528002 894960561 588905727 696324420 579220835 397360093 663097203 915317091 943532488 238351164 902190396 318199664 448044113 427558481 519215887 1657504 642240382 822502974 737839746 764017997 971403586 896444375 645054742 772870651 623772142 415256721 214951222 449133141 360006467 104806283 49833780 783143468 275146082 19201165 493345863 707732609 18346973 490115334 469012881 539645552 172680356 389542670 253085467 853133386 626833176 667297379 95823062 716120705 86745167 285223277 515726749 877989550 48378754 790178875 66684464 176554135 497507899 571383170 442488377 782398244 55395364 95899047 357930823 167885677 647427747 655788973 57281495 740101030 586387077 629260866 803176005 900034107 1645825 961233091 119363550 697889969 568133808 747753000 736337364 4757693 92205214 877712413 628386366 841348411 248886579 364164081 26540320 70527789 624850245 314793369 439120736 957790911 736011538 867058871 231077328 22451269 956936512 922633615 433013803 484669241 164635612 299110931 579656721 677860671 309684570 146369240 703123978 213169440 290497433 260581920 155138186 975473107 448347866 435933392 213414633 766117232 313145040 433027960 931538022 488022078 168863119 443204433 765878062 223284418 659770001 505423159 892021072 405613880 650802621 986115251 998031302 442698676 747589217 218798837 826522995 693454333 233342515 458329553 672045597 879916570 884092492 633050314 154886005 457203781 731656758 896157703 138957335 271197650 307467486 943383381 993437826 728200264 194775446 924825386 816219170 885944916 164305693 536623530 48356423 61547207 190416537 192008091 76658472 806826906 624845973 522707304 787495659 235858677 273457672 218170925 350599826 709604384 600585040 960023206 765700887 963165326 591002416 690730047 759116364 416445150 60190681 805951489 336256503 718792142 259619293 259342759 244972734 550064974 75922232 714866833 553853749 168557422 268525138 981621443 649653971 848003434 201491705 943911407 888036088 787597481 306295134 927045738 533449714 676493230 955957026 827803190 677801967 867993908 331148363 872698360 26081801 345408277 12455491 651482625 702300993 924009807 713544928 980498758 532997353 714660114 16999264 362012265 31512214 563807665 534922090 942270127 446760768 799856550 517762056 194679048 926492190 307123605 407013042 682033419 466667702 848629064 29494850 927973881 79074428 829259956 374487554 643246006 952964555 667745524 665987878 462809554 179641057 977428811 190930211 687464584 273233641 810994723 347636249 459263925 428209905 93148174 365202017 85279197 207075062 814475468 819031625 668433205 753637593 444990525 84081284 860094095 520429411 678509932 528331058 38244973 629441858 464166288 900873431 18054644 111893013 441501950 944348513 52370424 817764695 582104126 51513636 259095532 779981175 551779581 522148830 247457522 556416194 95275783 137221558 884403918 220825715 415623516 497591862 80574706 391515051 361121569 681518933 84670837 53626996 524835997 346755184 787813395 628045502 253429828 546465101 411088697 650628962 96371637 197857558 82351856 855494437 441699503 560854373 934393330 797895595 395063328 810792245 656515746 866987657 921157401 337616360 592998402 320383030 637402070 410468435 601598146 581308180 534815932 62542244 947919933 732849772 945301334 189676669 137764717 136472432 274331988 732021727 263568893 613807673 105324948 674285626 471683898 408058057 359786267 251012195 25430300 858684935 427577871 524590231 746954052 413883590 599296710 500499324 686475766 580819134 114712765 252352797 938106151 186608018 3246484 414954995 708840295 77310411 694686747 660380119 815934713 535799256 818051902 466301712 227967170 750445846 228445470 803163981 478560599 281926850 603013631 811797152 310235625 375499017 568307526 999155336 229714264 75303930 583228558 62693101 245754160 382332047 422878861 673349399 453874843 276992424 726136358 369850047 463845747 430137616 660925800 748420863 8193335 312057465 870545027 611979617 264285197 951786105 153543892 173292237 667243461 15599509 688870879 971743388 264238807 962178355 345155146 239859081 997161313 848017060 79022833 912563898 419917866 910735908 189195718 211715774 92087205 783464404 99642099 501488264 165468899 311382716 100306369 453087862 53628583 821497807 571095458 616742734 786659928 872910563 471522100 986742077 107186439 930661818 538862393 477962454 412217446 782979840 273593240 424171544 92146139 149838149 881382509 685445481 471900520 318413827 351211754 611679893 38131391 183129239 248727675 673183698 574787636 420325711 705204132 233022652 644424650 226686042 262928156 773182811 60366376 137376467 927122623 600226587 573935514 304238008 638058636 39494607 932416794 105034486 885501874 987023029 670156102 783457372 151264130 992785780 989861736 185644197 127573626 325913883 67849835 861171825 580211517 148205339 327443432 178626889 550961043 230779985 891947297 641706653 220234096 168925703 644896761 509600456 41466867 669341927 786530305 141652492 526034011 484905988 766250864 603771283 60505364 513008096 578513447 168390250 332428981 327706465 671660715 62380175 178665717 502851789 493873451 457770977 317387192 76367585 976446080 329479974 428728331 609742260 276224809 116460311 651468063 63127505 932555853 10003270 194985809 890006817 947053754 746896185 627692836 315775483 113968104 558649173 50910275 763620378 487231736 444623855 488872065 982612904 129180079 848235582 605806809 31783470 672651645 370782055 631841902 173778341 470382715 875766124 997553038 891384679 723196517 15076422 644519593 351223609 124235170 808108744 681111899 412064331 640270916 65021880 243763561 175828526 472049923 907296446 313485754 396499941 539629629 716617578 251499366 686280913 269646582 175483447 911819433 947150272 750716387 721824643 976232417 640583144 954863190 606904472 114208411 399756262 302909265 688673964 260389004 399691969 824360570 616973778 896776334 311361248 272875298 904035344 1685414 33522465 321683264 249323086 666068990 954391484 811912307 983992669 23889384 661284694 161445120 248196338 141819104 193466366 380820185 907166900 40134282 837700651 349257877 735394605 435397042 151290293 396256881 833573065 678428491 88686308 107044694 924050148 7123820 83802985 722730453 847024319 627069534 491512146 614501152 14939269 379667851 466012705 3836444 696182340 743075970 650060731 967097420 295772918 770593796 743065964 660119778 37143423 960188144 899055339 740202932 195596198 579762517 618085202 764965442 722977052 730209635 410577961 524112564 910158971 986266742 815821404 6187222 982643781 332208147 958072128 200732963 165381600 973202659 921280406 481313718 967544482 971718072 54563454 635232092 160793792 257358482 708712584 525739647 414736991 194608531 166066344 408454713 540593798 537285635 546299709 467048265 697738790 844694358 559903499 817540884 326639385 260911659 279527486 159646892 898585376 419716929 567585134 27509191 161461477 915744389 114425497 862521797 874702071 47859722 299204640 956192940 373496018 690887949 499622867 620653103 714674134 78005485 778791910 200419486 870074957 443206203 201801718 287767551 607150694 901789604 212219404 179655414 904841532 943033097 304136593 927966677 22198224 530338921 782230620 573036943 975527950 263362801 978513834 252427462 76583363 341905908 33773857 515218625 612212136 903192558 407406026 172501102 225785442 710956418 71254307 756852582 185462136 376396411 287092225 473982184 988174429 88027341 35278250 285257436 776782695 572028817 38939857 823766735 464215259 446657034 821954695 56955129 799693790 169445032 970294090 420957496 781262725 242463739 503290367 273833495 802832839 597019068 621382386 598263746 814080646 757074387 644952284 673505554 652541068 794632520 976958935 5441156 887057547 28517198 546654824 770854210 888890905 607715909 36406400 24056346 546155704 970883753 706350193 526822020 197616341 541744682 683116537 993219999 713688765 714042522 512927547 876740400 181231018 619194613 931127241 592187048 919849665 63219804 770211221 72736 852038663 270590750 378020349 829574996 289847661 226535852 585758405 988387501 836626385 262864289 854692125 894720570 387979758 398074049 244435096 24168626 31756657 703330807 160365621 322163831 675472364 664608852 948495190 802945163 856129494 877244953 676399308 991664032 89584016 84779939 291876813 960646928 644236391 699048064 169377008 752849876 922920841 440738917 320314689 522740634 718416654 804273193 649336105 934460845 475542267 705451730 456471935 613746692 876369973 789314701 741587584 855656512 380947344 739508139 37837521 959197865 715756743 361453988 8605825 835035437 961027449 117790755 811632129 3436642 688908332 713190893 575887667 174228104 593117529 726735351 690026586 796611208 377330771 438644316 588987682 116399856 5113436 553179489 773741477 229007608 904713630 77299310 884517211 900689791 517402156 724283672 616131114 345736715 754493182 664354333 437578080 805354955 88558326 113193565 600603830 970451095 860705243 750223331 749385540 58749937 199153502 706732770 911725203 198153722 377644061 901981369 463940492 536435848 831659157 545100518 421198214 450065935 290874417 295502363 299528515 89873582 789361216 764613923 43494881 767221036 479970557 91390462 855927792 341529595 975554698 407625936 904308840 886007854 389153263 318820066 448493476 479074441 220611612 266436523 133025896 904885358 986190063 204757953 523088098 775048432 576252965 951110633 656407976 772181446 979484774 871865361 714421944 594870865 512398920 498884168 901441654 819049619 356322626 449769421 406397104 660856381 461359796 320419841 815209370 79990697 82118377 393459567 592796883 549897429 151468560 57903820 719333468 91781734 136874823 480752114 683555753 911416492 981409163 494569700 771376779 250280610 34210500 203012816 38113855 585979109 134651081 683051271 341641834 226504890 614437452 720707074 494164509 88308498 781998581 863304296 216683209 313232773 297986378 283862021 230981967 229814609 456391612 946045640 65391856 195374175 295424420 565282767 896100445 127470652 938928967 105687132 173594792 199479585 299900360 712328922 533363794 171067114 421801534 116232672 111099964 474345509 863914142 987209509 324582584 21832443 917979340 555549326 693855352 110769733 914779510 128738596 396620184 13492867 555036060 241233438 801836194 32354522 130438283 952498134 614177663 33547805 145957848 162413261 486393991 759152576 780312563 369313968 753280372 268234468 778523435 70638932 470652014 724722000 352544438 435931569 586758915 309835892 926144954 786867949 232309029 499133030 902449727 982487889 765657139 17956581 251672116 415161169 388596722 691883609 850579575 940683910 60812689 610206416 582948290 88943801 120510627 673907971 159559109 599692497 102138404 154883921 371088396 205999587 591043455 554335936 870843158 435588649 200401787 246610945 376078145 380388356 134942544 478533738 672716245 193228037 670090650 270718714 614041091 962550492 512483168 906367833 334782953 414469730 18241809 564894422 19974018 738203809 464821117 716951400 312387005 441131452 853225188 158386352 432857447 37772298 551879660 695498994 539086907 678633224 619461793 791041057 471957467 345420377 920750456 730917072 377114318 7125188 408659024 346837827 415920008 521052994 96679278 973006428 798169953 807255530 534087806 584413870 961110424 752356097 454891927 680169841 891012698 165912561 108559923 396185472 145530807 744002126 375840313 752203879 672680615 640493268 727833334 951001426 289779724 92739687 194365987 90020889 832845233 395654929 419300055 958660669 207010114 738980611 360564379 62190562 565530974 613170587 188231259 909734619 837086852 652711516 859231597 930049434 230405663 366122481 247006351 727672388 222149501 211414829 48718053 791440285 709901529 930356746 105606907 681491479 748585556 884855470 233305544 481751748 474806008 252877925 969778602 702220392 683198901 945978526 960875365 953156202 513956965 482054646 433222438 679724503 75309257 562101043 33735043 86222951 513006987 706218042 905080441 601856890 741030715 964905765 694338157 338551062 314374483 900153132 893757228 171393773 997424947 441159091 306740462 23341906 683607847 99184452 898991948 145648200 197527389 982478995 808394318 330332789 438381297 967638397 10008416 815725094 501620450 872670210 767744089 16691798 431766300 757819216 413012595 720918946 288577900 390489785 914284373 817917779 757183120 265585335 697644559 728668758 168437032 570186224 633643024 592823874 182884539 530741807 328685628 246846554 920456893 258464100 700516308 738029187 591852930 745154221 235892616 524950089 754998098 400292173 391317611 957452264 938769749 372335022 617661690 927931199 951109782 736205415 71272477 30684880 246528790 486153004 695724060 78276817 460429491 95340009 441235891 341265431 955120183 183561122 416809212 651896094 841354833 553680782 338894458 529094417 544258717 500221960 883666975 136859326 294312603 362124179 499549757 67526044 716357298 526919641 886536337 148808394 761056568 416405166 760543553 984422418 820210531 734759692 221585371 49077473 145017430 493178394 893012053 618082637 581718040 530632736 75257352 422490900 516570781 995950485 410349758 807553186 179976380 964465164 696755109 893992966 575916343 879595859 909209677 978852851 785045432 335234636 422114740 863051978 514944974 410674704 182728517 589883284 515615734 538058457 382143432 199589120 729768591 651318537 518973042 375708261 298646240 728501291 145341412 204452543 243878942 393191923 994380579 407392696 788918370 653766463 110450838 108919968 680462251 797184781 284530971 810475373 405798115 255268747 816636649 992359870 452803292 828445452 5105830 460539867 531560271 107035404 78982242 414510002 722095581 390119726 610953872 885796830 284054289 333947967 545796880 984404123 379400534 509091631 766702114 146734799 11732494 856569369 146113403 666749196 838180981 25736513 603332903 909464201 128140980 798488596 764438186 802524706 525375713 389254180 635049959 151074148 590198766 275603501 768138284 552453497 445600450 535137043 654099244 900759098 776296228 617870556 857082376 449316649 30565575 236345794 514322498 716244584 130915905 470662429 651812554 300456906 878842902 239497841 51282674 963631559 611979183 809073768 767374203 153907322 61476955 25632215 179817862 525760686 36487252 63507640 101504932 602277585 261346751 510219567 182230217 672465914 501365153 556463751 1194832 312916713 974132973 763876912 898890754 451821829 650252154 731158732 207686921 873477468 444611340 60655898 800440573 174497191 585333324 271596295 687484889 110761284 808022989 794518690 442486788 87334972 501704962 82223405 595350347 908704317 235348305 182780421 118942176 614226333 438977794 392133048 874170215 55172188 131006536 577118970 753627103 244097826 209885755 948751270 46014646 966567489 540307930 366506943 103592388 998213290 755648275 901792367 413254214 23000320 115017651 49883403 518989792 365577356 461184117 640482317 782090654 810129976 319790074 684078614 54200056 247188897 722451917 413792503 396800203 398443010 472204634 56387743 645713499 211710789 440257280 994558507 517267538 47692023 527232766 34691295 239726029 338731345 678925438 403471139 889506627 534425137 517316240 83892618 916683162 414000158 730012975 238774229 668812578 885332809 180185147 856474082 634525326 122642056 314412667 110725822 306801151 76205659 951943332 258132894 221425653 418883049 754548303 622289115 569102943 931471873 163948283 108769526 340778387 730693145 621942546 167740321 127453516 616289107 9990372 499602086 618686900 911883122 829733295 303971082 900209749 528905706 328393872 130949098 647671589 311035603 803003281 301459346 759414143 912076262 637777060 483182199 1732397 630924174 43835555 471606837 491703127 579055578 8039501 942359691 637836183 980052354 138812235 163264104 92997351 315202790 677406000 722229982 163288237 279246603 642824311 185160233 745549749 978930848 775936892 36740779 235954999 242940671 103817614 306936816 379896271 405653283 401435099 226699690 287236227 360533175 969979517 497861816 869210046 854040329 767547251 829005848 54674008 77605393 842823594 564073466 853232780 134387565 511208435 82639534 1743106 118424421 11721731 599057843 982325189 964714983 759961472 818540199 770934601 485506957 381753072 469256792 374489455 541293202 138453191 57079225 789853816 173184995 409494108 319243494 954163221 306393608 484582642 372611618 928172632 221326913 986013361 108016344 669958850 13901669 68639146 446103706 781649718 110003968 373100759 24744484 202907904 500367936 118156568 395354205 483720664 586435324 552873018 798177610 662477530 557722292 549388267 56421154 111740812 824698257 107411650 54452030 187780827 36827996 764130631 738256677 288545817 57738387 740488925 905675134 116054022 51431248 39236313 179183393 518855624 613179998 64321392 897794052 909082605 434009132 149399240 648092236 471322473 410243537 849533930 905945414 616253590 582081035 140416964 628897893 425174079 835094592 940045361 340238914 535233676 741045122 849210611 513148835 619809815 905201030 944930992 760540273 835125466 682586543 505136636 235871936 670836026 402913792 318687826 366873037 327295241 543844907 802775312 647788281 98885749 671589511 98076801 831923525 684782880 711959824 334162644 191627779 972564750 716544627 460400420 959083121 446117806 903722746 310388 876987418 973078738 435475870 398854315 205998639 788664251 380604672 486687641 155486717 246223371 470357092 164840953 348051456 523387600 784876220 697893997 546059999 592962432 590336926 807611516 228741729 974001913 480737355 338626459 621176954 495055999 277867177 309792286 75764808 519340734 650839109 88178764 833816846 243778767 116049753 48414538 186483508 368520490 687790019 924351530 399210832 189722299 168838666 958612710 10267422 239821256 834205280 112063840 858795647 63808779 686975386 145209440 581473917 637959840 176725047 430971032 647959630 743699212 872676191 34392480 278119501 14364732 638148577 975384826 900022013 347320968 783241524 430412048 212841990 693147560 575679609 640408115 165990208 982157766 15526260 542740890 929941415 348174958 981017495 363358314 719364184 982050709 707046134 935196843 910568869 341725847 99397463 824326220 470558715 7467833 102782232 535123497 529188603 24687275 251193936 338068737 759184994 213666945 13112755 888224894 805488931 288036279 174871968 204254258 723050060 244423091 765997855 491287702 366445593 647204675 28613855 375675914 252680428 248296346 965558327 766014938 577986645 340993882 230475303 151642934 248654850 603345284 565895767 425050166 210986194 789014151 301862419 178281180 697908678 555061559 765989204 414714897 339125002 103561169 685963194 154429094 227817200 956701437 656982413 546865238 856909558 585588420 504967354 400455875 166177980 119030688 722418650 498107506 569684753 284527469 147255083 533456342 711321829 347986541 930817429 160474698 336971860 687883345 830383015 274832655 342013858 290864939 925190296 390930508 114989114 884765307 309445960 671993875 539917232 835230244 141393724 84974430 511890622 739411830 147777449 404881681 827400775 348530724 505759327 650066159 256602199 797571405 695817441 921034414 306167587 942364789 945463639 975324901 464150016 261377160 352653198 366020631 891405435 783477471 673077759 306383277 327318838 200369714 367528135 41017795 432961291 369528237 649590449 32711212 589978609 264665558 951107624 403732341 921253388 33419688 70389831 46335955 915522217 909144444 524417482 893893692 879044921 298827802 379502107 305710215 875416665 526320560 410951750 981305463 236208845 625035473 261219334 537801906 133477501 22553467 151804091 261858766 256800127 227511314 935432806 892913987 602433805 46005861 311789754 974115438 78363274 434895016 86888464 77718428 322237573 107893882 924511846 734475008 664411562 421937632 63390817 943343023 342802907 475473990 910756435 252248748 803546392 561799552 412312883 361982433 572212877 462502094 236992926 434675998 750408588 476488662 148191967 231716125 119226004 778350498 617794528 590331009 466053700 433418153 932235325 673551566 440232040 80037575 435564339 324188027 13242615 566820931 782811818 28053725 440601865 503185611 973955635 106052921 600483807 721041777 724586496 842108852 842892264 574358707 188791796 562658148 881883574 686667128 415715481 783146559 864283911 545905677 512127513 347712551 791507385 730881830 810057549 853899239 974681818 173158627 6647477 418157100 413516700 951302597 416238966 232225427 305599582 155868605 341943394 305457819 723043745 907222815 632643825 341046961 853746959 540888996 556152382 414157088 792108666 410695034 209797652 848078630 259437283 63430182 902428130 755758053 425434470 584585124 948315068 843323746 852029012 897038668 921822566 212540819 519739935 981420775 697704261 345368910 373205089 416948126 111339366 311780693 779978973 567669512 178515074 377538897 862083711 293663271 498681082 327270613 955326552 838824537 668135381 556724311 360885416 395080304 144412607 446907962 845427664 970236831 372745232 501332937 992128859 675775620 78345677 616265264 162268923 146442277 717116565 96693649 286537101 67474156 218424253 166031844 568717330 666636212 136421176 451033624 951113912 1220278 432114857 506295548 393051091 967806103 308273750 458615371 281396954 866948966 542878766 464094629 738541940 46570393 32245960 847456147 338593898 976828170 34677348 42514567 585942704 332981251 412780520 538725336 151073379 139774509 300501989 41305291 331316162 184564636 454212496 176279430 640926271 609683410 822652875 100035100 94074726 447083189 581883419 174962054 581145591 174887820 642715568 220804774 704971986 595857936 542194272 591107397 482085381 706407776 309776814 377965329 181007808 118916863 931009983 881927334 967394661 340445144 354179167 84730504 930850926 791187781 504662539 197645338 265012622 888958464 153006814 708247218 567030677 26084654 56011168 788564104 55673468 616733537 621454020 21837758 31906923 151649673 151935836 816329564 479774888 156528642 419061291 933945427 350848684 919693208 237025943 396837500 62690575 773363315 695255980 358840219 394805397 682552618 888770343 866333782 91609384 235446714 438334565 213805377 152833756 541124744 980295019 977650131 146927852 189854051 551037931 191186796 205288125 417312381 756576314 61540955 408107737 762263413 383695451 357541578 374580211 312363089 295938801 250814936 493377508 991776380 706496589 952882308 504538292 386678735 417694055 791951033 490228109 678191493 659595484 175555140 547116478 273204544 667397622 752589281 84937672 346144786 368258981 221895731 3351115 543511921 835232122 854536382 912017171 986415671 606882493 229932282 151261202 768809897 746911053 827154749 9299558 861132917 750205630 946163141 796940625 459875763 5544264 411265984 843001661 328765402 393075912 870470207 870423228 144019927 767647685 362546999 964099982 555992562 858129518 754197134 892666259 388858082 741219742 173060362 999934423 576331973 114680784 340246367 775938444 452234271 708100141 863446308 163772689 1923292 221510021 437131740 174103269 851323218 510612301 349635566 930247861 160233282 180479653 389148079 381678676 274720461 362037590 960781395 877943998 34920321 363108045 146597633 315725591 74897748 831338787 949682108 189850023 203315106 249413142 783452283 733089507 160371251 613852687 151514644 929210471 22524977 813761307 980053321 64642548 510784306 778793971 327526341 563417720 186791990 728187125 846672149 929208583 741725856 787635497 131359671 735095257 438331197 138260799 374450185 850762066 618548547 717784714 340449109 6962943 734499150 382926353 803062989 800504466 921906788 802388853 774307466 617023207 641468661 993933316 690295948 104783103 372359122 34701245 916054977 179767049 641635643 141778488 576636146 804913492 533499858 308467134 615944671 792941919 166037416 509716545 409119782 528575179 286134577 684867671 11616341 639223395 3042888 829920828 268964566 744946973 609195318 316845274 425897222 471268113 772315047 762442947 152559655 107763845 853744558 955212072 501636706 214982368 996927180 140355821 3356102 251641787 369631458 841511830 59544398 784248270 829820736 807712343 486569949 690738685 735301533 721892098 497790777 533510738 153194770 179496218 670751508 535798016 813961511 767457476 190101002 61878630 332609736 242139601 957316761 116709634 907152203 910838966 98765354 907847813 541453165 723107220 386665488 970562749 875754578 967121715 795425415 79919528 195210376 578387967 99325865 590849384 491682055 508721938 338917509 252133706 356259370 238607147 136400907 70843072 10788533 402850224 488693779 276329573 470352598 90438066 547550817 352948989 299535141 728629479 229421465 633707122 453047706 334539950 613674067 699954906 441793182 256115472 113632259 528179564 149487104 265547195 191870988 737228177 847676913 401345797 648419511 859013071 448236048 556415727 4379191 88304346 614814307 149076511 609631139 752030351 454293076 762595559 825724924 67928307 536976317 543670331 562895663 499135277 41497049 869694651 581699336 387828881 920538189 351612847 605709382 374201757 876669989 539943943 403894660 976536818 890778328 626550104 348712528 497783901 206481221 124613349 632321051 74622414 520908460 923154576 657387834 640806501 937788865 336922605 569367026 144728929 870417300 642441009 14229866 655199535 584742052 289495099 411253943 602896994 160180182 551312787 20142543 830813879 900835704 956055398 6253716 898856463 901907518 264471696 41843665 553807221 283820614 861721996 160168499 754372636 614848534 581728644 248999254 728868963 820749722 960054596 521293500 57547978 950686504 3668552 658538703 331435261 711600766 226172844 500252124 299256015 337122750 464199479 721559840 958965051 263230586 937580120 173458874 946292581 413864099 566787881 53086646 106630039 538551192 617689446 667425027 1059398 472165151 684722554 647281786 121729804 994976868 337412465 441556190 452127151 836353277 991938051 554952662 428392212 825780199 458798993 646618871 515679828 688585350 930583326 953225910 96838056 177500075 284468063 429117815 571906933 639789702 138451877 32220290 590666052 298165689 193010933 887205641 854589642 976884806 182790899 872964900 734185696 382076060 651804398 348296406 407732364 807537040 260411105 82168071 613987830 790210398 967938151 210950280 418700150 963795629 188288456 265229589 310049923 313480072 870982900 809967690 129289408 621108329 715037317 557819573 904754940 848135463 295122612 633738436 221184553 963135498 193023087 960541140 706760799 581155523 654984254 922517796 987456485 3747169 929816928 323086045 415609892 450472293 353940654 798931216 645173424 56288947 505257908 11074230 12683847 405111958 688439711 170612917 586160583 796695241 775627332 937716943 7452990 785125989 178471206 435074233 955005152 762474222 315492971 100524301 113836041 498798934 882726883 326824521 608652857 718285553 5790211 250619353 84148253 160350840 906659562 126634767 632797318 886254356 701579619 253095459 386476405 181408083 178391003 396646708 108432137 240308263 358435688 392064846 114308748 587120112 740725452 32890723 503837044 576132466 806977901 293314377 760031324 302274779 947343960 367947460 313952775 845054142 606063943 662214781 98288223 343539482 358493080 830356741 702355321 962306135 836318549 397982162 511330957 206688317 281389608 480430666 973879555 330060037 225353839 865847476 522111842 688235594 321626659 823282498 582775906 231451667 301548526 614085388 140506586 522839500 645192736 949718807 360732110 793018186 647167406 953469255 768220010 579889101 602163001 513022318 331880962 104161527 127557640 944300619 865845264 851596759 80824074 534146166 753049657 5162976 817390039 813041024 288536644 984696306 520802220 35990744 159449642 685796178 280761459 214338265 174079234 628120236 706571706 44565951 614758416 644690711 83669433 645599414 78582210 247565581 311202380 45426385 645067945 204482420 319542782 148141574 25783935 282194076 804367102 895700027 155768617 217255738 117604898 725589557 444480944 462195049 634752489 247495847 87652684 780863408 585141114 838073128 166537813 114254843 694121383 673155900 897410894 658405022 711480805 17465165 525380069 588210522 683960146 29618089 467288553 470959698 161644984 979752333 6712407 120324883 755246725 530753045 200886355 14191507 848797135 48345423 414274600 892897071 665696600 419541803 952750155 766797740 6114693 563019905 403054163 670334521 593939047 570377747 989463046 788662886 290493107 423931275 734757968 430439223 448815306 350538361 742588482 738038287 87041970 667441495 881128984 315218361 352858652 639069319 143237689 223685994 605799263 541113678 529629739 100051907 249965176 929860837 315447715 469578695 385303315 406301534 108484474 719773154 531097721 332805823 179260089 286935788 916727461 146924015 661781382 865136930 448513333 463435198 780737591 840668969 141796977 808204777 270841927 912309515 476228169 477773324 742802776 457539904 930533715 301159094 106061367 616720294 364347341 84027989 596359636 171860609 987423905 856556611 905101389 582624639 322484316 653528512 374955493 902325939 363119161 144059128 870559241 206065564 418196754 71143418 755565127 333973537 761181809 89373631 736917855 613303180 655252871 836919082 511355443 962218389 728731687 403648515 181008589 270073174 625384915 64845309 811184481 511000664 339258035 679672751 898537291 830170502 493930132 182175641 295075341 783979062 635435503 510721320 372049490 17985828 668270305 201504684 879707889 477132152 172085812 507694943 688149472 68652476 411151959 371341407 463991623 925572326 743004254 508067254 57560172 520431447 385583885 843098714 133811401 850417102 333193671 609690142 447053042 666270333 950540700 558789832 159526318 628405753 949422151 927080704 582719720 278221370 960960291 708677973 163267765 725864877 627606074 553497410 662550094 853713435 269965112 617957928 542634261 348506040 317249145 716807251 183281048 375177252 804637686 959123439 842378377 327360355 795946588 535361559 858504132 624876551 603961849 152111566 338427211 165803640 478640579 361531645 593506378 931450720 446238808 886267253 29638676 191774529 857658113 529187311 898058532 114936614 691698351 366784266 198855711 997985417 102930676 290037331 705988303 917938752 592812820 181389113 782962471 305611671 51256567 501705238 616989248 69817654 473863207 386024234 565886818 875337783 371665633 626163105 860002549 952742677 216034046 270243467 333599119 429176501 177036556 3662303 689348839 13326690 375509303 519455105 199096546 411260375 383295060 336472635 897323151 571076653 153587428 729143995 312625436 641400041 569061906 885401754 562184423 524640763 875900072 866816351 937410675 529589685 708143649 502313325 328937322 153632726 510401944 863982359 7265187 941756036 334928088 339027865 412902419 621031245 587755345 208954897 904101859 449970722 307207444 257997449 923660123 37946981 656649192 951201011 987274990 294881752 78966321 5595174 556183096 977165738 450894332 398977254 24262910 364204913 49572355 574438109 399498283 933621800 652563108 886959515 118234320 939271988 610921704 56407446 862729514 985748325 215894396 918461236 556508058 190776815 745174969 498561468 899664814 423795053 150407838 228894816 682454296 650284264 308904401 322152761 600452789 447377611 372997282 893426246 29653893 619329514 221515017 26053237 139301814 66051719 574761635 53127826 774086040 796899651 367160762 664270429 802998442 586236460 39293501 280501102 120087695 482478008 734066368 871310935 714668047 595883461 57108868 513275268 411983390 524513429 138659701 314938960 453586138 394626008 562639642 773172733 214638726 628804517 124702641 323859634 77009547 690963317 193493525 999925379 433584765 859248942 262732238 210136679 246517527 529276961 232358925 806817088 546247996 704975873 380449449 696462041 689095929 167931369 941558048 788760289 436698240 297152352 127647640 310286320 351129900 799840087 669636069 140980363 844309632 304362780 111082619 62774809 347770667 970191728 623828857 383771114 628298746 699637115 56215972 701851707 747042029 540891589 632332146 8098088 685578277 928377670 68201972 407717313 352642286 728575068 888743405 451548401 404553914 220680138 279456449 622366357 748978216 450475457 938447235 874377836 661896182 93156051 951927271 522641187 643731989 640033020 207839567 141253958 805610643 567381156 370844606 910575698 956154031 336261529 116777705 461608358 790569928 719273996 659210019 710339982 558078574 644700062 72489580 622641210 392198992 298298965 960381805 500515520 95653966 149258650 213259890 805373478 966625128 629770567 272009335 939273301 952427464 506671253 25395222 33857819 569743047 653095724 366272667 807121714 876405465 941444632 568880369 122837821 190055078 491761872 62842547 508144836 709542902 282989103 111991583 525017913 890197696 446184316 871301144 508602101 805547551 941894499 799349044 434639414 777171283 687728889 502647464 183795757 965555400 919279293 395033681 639790565 973111058 506746770 463685304 50395480 20183023 50356680 925320717 141846632 412874558 224231443 406523687 193240031 366868493 561082511 711884419 507447405 916019597 980560321 679659848 321721772 939932699 775039897 599825483 680959774 919793209 810417258 722047228 584461099 248521619 483591666 953603198 638386725 111060987 466868313 57618587 480973125 609511534 939435815 52081338 536779179 38285841 926993491 943857403 639295328 24643370 867514685 656913177 691910232 362012720 879366055 588192635 49212268 12386494 873754302 888394289 384532317 1639065 70667802 289546738 313414096 448259238 827579064 957062942 360857691 170088959 153043963 680372412 998518135 865699035 804422834 11355516 357896579 703026591 403367955 656353458 922437576 115441108 86204601 704174435 308947322 745642289 700484520 208269105 807177907 667679886 369347411 354836843 156719983 468756211 433213064 526289421 680065180 492897924 253531019 311923378 456408329 52705691 677865212 947039651 648306289 802087342 431891693 68133583 621412979 570895973 134289361 661108430 316644248 338763913 24986498 76455390 162200148 707206922 61554763 80413415 803508222 148547594 826572756 276671608 996057051 719215046 833955382 977680840 967971342 701054894 413352172 122193335 582805165 267761491 150576094 975990730 905695408 520609646 888855639 457555252 997185270 909551847 290679820 603423690 233672015 916445126 230105114 154405132 113502563 12249152 690755594 572637984 112247250 764583343 883525829 986751959 904791835 482580374 332426146 628531111 587504295 927277219 492452701 515963055 290638790 994615205 466915613 344178614 466176694 383593112 405180271 780473133 117350802 940031397 219152198 223267371 736969576 619093519 505124611 659224428 840881960 137875278 645408105 786927709 773675179 637407743 964732069 134417928 705850290 270798049 871368012 589752870 223380710 417035744 602395996 148049432 906698969 670960401 833850682 622102499 835355907 14730158 460317364 750604088 625880775 383422234 111482368 178158701 82703981 290855907 533504184 388251521 371852837 725282488 701409508 624505115 433110283 970380664 316047346 141930892 799196704 598885413 578937268 837160907 146998602 469799401 317614952 57592436 695747681 829810712 247881911 703914195 2400279 467868460 797385386 772087253 319399182 630957517 731671737 879877392 144182485 169322432 640640956 183406022 40600793 315821820 643250944 561534429 950472050 965838493 414359855 305957091 309296868 55878627 437907802 707137809 692692568 650754877 165701124 273479748 953889503 717452089 912209939 523489030 889314417 266258838 259506124 794201989 613714159 790243385 217086959 108240024 931790628 988173352 693956241 798442175 951635393 524240029 624212538 486315808 36070495 792307693 282663128 395594891 562193535 85331612 968700097 605307512 683661962 909135449 255386543 867762692 993488082 648060148 864784331 407395067 173243025 206468970 473385630 159173318 157079781 125601503 102883362 585712512 637474778 395613084 955316658 288621289 127119200 694289429 554909970 462938982 453116498 191980005 381238643 851499783 691236720 786903248 817244772 43933826 564438114 187068353 667416809 333897273 523972284 43768266 631691363 418287923 937591543 583525674 818205600 449977371 404294001 723469888 424756183 972900428 156805495 410730136 463488419 815587527 521291319 752282600 843428872 631742254 153067468 629033224 182163833 175690964 955378233 34619134 929417415 416871344 847900770 808151029 890613297 19212129 745206558 238514236 139626072 447557676 951708708 84319570 695238990 174227970 421880085 645309661 363424649 942717821 20755577 728339360 403303136 219922134 917399236 421623446 95408031 909701371 46984013 415625688 400032111 860428916 453355863 641209769 809289832 680238208 369487624 356545905 114217476 842686969 472225398 147206856 878761516 751530601 25533592 425825383 859492396 453201149 262114383 778900275 35846584 94537101 998216546 826766644 989443055 532558233 971361158 788926113 893337682 801397575 581954388 351622865 66017236 466485352 854178635 105470795 981000647 986661746 322020055 375318712 763369194 439097477 936917316 542015470 742918240 81505382 945490130 278632677 318420152 588230024 156297631 284707266 32135911 32257793 209771187 534788049 736190793 10740109 419347201 705327747 775040677 341653142 771886177 571306613 651026726 564958508 681044631 805839976 208729957 235171079 461710921 677574218 221717340 335060866 669625355 299420719 513007986 900267688 592025427 201639759 683767667 475231271 611272069 66350862 23895445 864491094 916991720 734487033 499995507 827181877 111165873 884415169 255217431 954701162 804056821 539827523 896632297 41839428 969523640 248201088 310508483 596101567 250556898 760371369 807089630 474007411 147188036 706630153 178683874 652831660 914668187 296224288 451112155 395271001 530390146 505296787 313184832 792110094 689552006 852878379 410572525 416676111 938560023 333663704 764763172 605929023 160283537 672730554 139180696 762316593 613852465 989213460 44329308 459889688 24069666 570226255 413650157 541081814 239135607 799007230 461835312 593977330 618413352 655556574 578889587 426078620 22595861 293188562 641810795 722026154 822736904 143536870 303333938 365322650 837579957 851266122 688263251 332323223 962264240 242029151 392895929 656309101 903375231 94998433 43699382 804083860 444317576 35406272 517695245 150351917 797604128 857519247 834852061 756493309 330700157 853964038 591078841 184410994 461015999 486225487 96133522 534164647 74288114 635601069 458568648 866478426 287500297 459696792 766715422 875693552 464536281 855025581 241949124 269179517 521150756 974090665 195157070 521191347 347082390 269849981 429946553 148621812 5002943 484956728 29056105 969746503 505942550 187136539 315896876 977243994 192625408 787611522 200780091 162546310 563394243 68601343 395736621 132756171 222814867 609079617 463750154 970871244 88280710 860828708 782855488 550793438 248211616 865363370 220997797 133377012 253027787 468212227 151603828 790590127 969954004 212722558 820644179 609779029 134240120 473027479 146376528 3291095 489271638 999948275 101848798 362706635 974841595 50571611 703027167 558513262 261906130 213624515 869683861 838227885 165565499 398020678 717501610 394181907 622634098 231675433 699178554 72995801 507429796 927789525 385278654 926058717 719120865 169111262 526181916 384669092 754362401 330335742 970093985 205946724 562851652 651471900 478628100 195930095 50951449 23003457 400499552 992032453 751594827 875196319 986398778 184437774 12313719 384196754 496499842 634596248 504866589 208632736 985580940 929099230 120070308 5942640 42471959 273619707 412321378 305271512 3679555 916809144 713230479 880878034 367521 472679557 339479881 634340481 950971942 623712887 115418013 757607987 278235440 130332238 711386232 847448663 951083394 964356978 412224440 219843978 432416587 60613363 484627738 875605648 512313631 52442246 295719245 378243414 874568444 647028109 552502490 61360108 855512393 668084749 19233090 947617679 896130001 758223286 385173987 603687328 337819336 722637024 862606598 221853868 613192654 310754184 341424861 990920040 591359718 489352281 180259456 910435756 729534848 599084959 29256945 716540798 2549105 735712339 653080091 128452102 190309362 779659539 711221706 706096283 49557164 921942308 830666430 726023606 751908525 635908476 497141140 525530106 574051174 350248365 653320662 737966386 15951803 224573174 545512182 766406485 310373610 312697155 147007822 969493368 70412708 979442204 948739356 492076260 296383231 829699520 674818959 727378947 465698679 281522696 339719601 700416868 782575086 387106177 790530944 363813063 368327353 229821011 281775837 243642895 852405382 536787292 435767438 665583683 734492021 158701334 468300105 861332634 82113548 556046510 871915682 230031217 495902775 169042158 683874337 937462087 586760269 709279568 929522728 880614856 561032200 442628851 924667660 707418313 270054288 311313821 253761545 200269637 492484723 865550015 315679802 971113053 947386531 333948524 157929388 120564318 264716158 910255723 131900497 203325372 642012364 943688477 75992831 529472530 680174009 164001938 690847352 245698338 436364760 233372035 228267112 759564761 283489320 510578767 548843616 447417670 971456528 526111741 81178839 998298026 658189403 543191867 932767791 553827175 138147903 876999520 548711856 660656133 633138262 628472686 937814671 182544697 278295979 202209036 248363233 729315295 490156713 307940745 502214824 537384697 840589859 108938457 397345488 126688947 121794137 583423132 615725611 285778784 939868142 777849119 920058988 241868925 225380081 165982281 46637370 103620520 922265559 810537145 624943386 872636340 387348093 257719975 776873090 660119438 259693864 501796608 646930633 619968340 983053703 1473617 987959086 281481032 998282668 572542416 446887390 938325208 69129494 908337759 790106859 150350738 95448491 683870083 174941513 618470967 591263414 496555627 345614810 222599078 609008110 861862129 198025324 696116719 28441715 279995025 320282286 39847742 365578180 926434676 132999993 2794741 54388947 760631146 308906637 965227157 952596723 32745707 452041236 771541702 900418274 293003283 955898657 476019808 945982407 203325353 138456043 98409823 481905195 124367391 887053970 153920992 532667142 959449741 590040100 294219571 690836662 649342895 989746577 453489355 975911422 287882476 875469486 472318272 783206670 776610136 216947008 637533019 829929592 380766886 519748078 512199424 820506172 945125944 43153228 595478091 462313663 683742738 623480019 893602926 528244684 280360935 390910947 198038226 275812763 162162699 954506435 844687875 705482697 982696575 859537833 724899505 221446233 62285288 685008299 997823158 964402872 884702360 867745737 995876378 934255293 737431431 613572080 355789319 463932327 734961489 666179568 652762061 505436439 71516478 774278275 820414443 141595167 895655487 975635526 833351937 423469614 100070890 751128264 450612445 660503592 174607743 314193271 815643504 171314510 524729572 536254125 939656662 482275921 144246187 842565290 480463701 384964161 128706568 689180312 114668117 665741727 552467931 114485130 752661867 184296782 508361132 446488952 846259281 59532188 897693610 651816002 231870184 294966592 624379055 915032242 265404993 754412631 429306164 442878332 67528586 124819813 98931300 162313269 986667299 131181142 685813008 589189216 21590410 430228354 844561580 16954982 687087726 817094308 710534745 425057946 954712994 12636643 521599964 739865141 113787936 449465034 196626601 764609620 648336138 678799186 64477394 431820037 607495344 153227988 683510811 965557303 148662144 110563096 907881703 767990469 723278104 650431308 173667143 115018095 704422714 105042690 56375795 220719068 178536658 486334264 383476040 316956067 305113844 725949782 1445456 947994422 696598490 525940264 790429626 292455164 649337320 745586400 531955931 937959487 508307625 928484897 138932916 127799851 7660496 764269805 195838186 705629403 829021752 155974062 120257232 328577619 886372069 455099200 352655452 228559736 145711106 718246877 679760170 274752799 197368291 569105960 880918918 50989313 594182656 624087090 975458140 425070781 531672576 130621038 147529030 75916508 349727404 451740349 867081601 357591507 817581818 241880925 309236467 844554486 74105602 813428737 950661165 730489228 739247370 344571069 87968873 570988986 610289787 951601423 848181376 508114322 525945577 862022360 982350846 225902609 586166545 35954029 508802579 865179154 327290322 518101626 212494995 972803939 77327674 201805093 869324030 369248178 310074239 315525869 756817788 889298330 817194999 520160963 157409244 65627549 499184169 820692473 348929686 413994787 384245438 209954126 104442825 10256766 196665995 829907944 948585018 976666855 478541194 515107925 558522458 785557374 976396255 504649606 714945859 976340046 29755604 973353949 403293103 721697862 482200030 445394458 341171464 190122309 114570134 479790705 611962975 325627653 148614851 71285618 443837287 305543730 651578700 938737949 475464578 36043102 789842247 386193367 358838966 758101506 859374575 313040747 107360437 529664385 242013350 572518414 605780949 185949728 52542457 109286242 551541779 270083090 297234584 288787817 160735254 938614388 186895968 933355919 892494899 149758018 815940951 7486378 275712858 828692841 854325413 345808635 143598639 89024951 561183646 943461667 998558199 684623847 880749758 22418734 841486242 120348825 940329127 701826199 831586505 665065817 776719652 790676534 328917672 795457943 752466988 759939924 881514037 459690410 74899158 711845018 495951321 608394710 207106150 182994723 853915377 437583173 663267656 899884390 215621710 170581252 785250320 967419981 558298744 593560337 787293305 805408802 616588194 40042313 516605539 416067485 701027487 482599032 823006943 211008219 171651569 946909006 71404826 928932959 146653373 137831782 491215220 730251798 882296273 721386048 904965230 448215641 788919977 892405831 336383926 899162848 134114911 696432073 486109980 997825495 191904447 23217664 350425501 455073477 803996980 428817934 536735834 534163875 117797337 738457598 570946977 265913802 493074026 809762239 819776484 392168199 843395923 586457130 353435838 460542078 48437916 414483458 951487474 746879949 980790531 304503536 448200814 221045226 235573986 577958531 939573058 720976446 74684230 417786678 411951787 773440405 857080536 544009068 822075658 932439844 727976692 71434859 281753070 124536203 834053785 89063268 58572039 251734476 296267627 47490165 265054515 901164118 884009146 17505178 587317106 329993726 195298433 200435134 106650609 570178816 584792155 6161845 66086658 720390660 921538192 655296821 330363429 456040724 119885584 371345886 279650038 212320423 741679731 237274174 197943367 341384859 449727736 827527362 10816262 185154867 195017092 599007940 171143505 804755996 663953579 737511816 503477099 25789295 293240736 178100021 993959615 659334822 640536899 102716892 510853855 492944296 627362589 351936120 236993161 476891073 981341787 920655336 169539229 758780582 390174933 295094774 746641704 269803382 156553226 577856596 792493663 623937974 257256994 474355613 656417690 566315601 573012206 811056717 561615966 279830687 574237411 410106834 595556182 915717979 990516767 56757114 868021588 145323434 643583339 10066306 848079447 513877533 124094775 188936200 484969085 746693031 390805657 754302999 769991956 68384418 161284687 422301342 160661906 775122905 176237506 470752123 373727884 190585717 619537923 434741353 904118989 187855884 478492359 971172885 426853433 162288030 647043949 653298449 740599012 602082444 477855741 402108627 183439886 654312104 638659109 187586238 626749721 543065635 549603390 755880221 265941133 988795036 109870662 13309982 435409183 499106329 815653606 707709150 210457259 878612487 172032619 219077211 686405429 474392120 89371599 619890815 614983141 565428719 732912044 431112477 764575249 271969485 212190544 638993130 368259635 809153505 713330087 731633292 95789806 581721758 228333639 173217675 860013070 292700644 862203505 734682966 706234760 530370297 565358603 116977225 156318837 227452039 298977446 67476131 806213142 904650149 975869560 266833294 754676956 895040718 286540128 710706719 928272726 234896621 800808935 634497608 150807360 420688969 796538427 649844209 367605375 864953752 907057968 396276701 438524955 314532092 243655501 1657538 313814858 76911350 589511091 839100985 192241254 787490164 67373875 400266690 104088053 736469711 904295237 16641991 579491229 442084541 406117638 432510615 686843191 791660904 900692543 724467564 706348985 993359454 288887393 294670698 33176137 927694227 572501375 204352663 105741619 893916258 790589786 981870311 367919847 149422226 769210461 74341681 445602053 968687955 503521938 216566326 316839756 428687415 540920498 725623203 309094056 829444154 287957278 666336516 353036337 426743493 737397467 957311190 571841562 985210531 334605976 878887802 746644175 931229449 497872815 196522040 349787091 947037334 559136028 636006977 199054046 591874639 262180489 699152814 209893581 430082718 699641668 873855619 454000286 105132636 723474757 203505063 709467264 387737029 358589481 635460075 329187525 258614655 966617657 827698441 401645288 616228244 971853157 279000736 132074125 856328830 522778688 395933503 500242558 135288856 573340432 776527699 924574641 739425958 705727160 607621171 241548862 776925656 966570952 902816548 782293099 781514689 105666424 363093072 520646561 429582814 412531365 31148998 578439541 5545494 799433944 305846400 803688609 139729335 157379906 939842398 913146374 95627379 583533495 461221932 392726967 782197608 41881527 161656472 732512735 60024863 45782378 246602046 988715485 47824257 798794398 817032863 913768755 881871077 957121999 409976865 164984973 393091846 45992725 172310808 799490750 65011470 894003516 748074942 31915459 723886982 84652211 307966002 731313596 898926951 491742350 320038272 507695094 878951176 417243025 722812566 956286437 363088693 728698655 808304464 834741795 23790105 647201864 455385452 128924021 62301766 555735750 391088025 918821315 684092863 714191863 432726114 143963426 75463909 811308512 971281218 253604047 78072196 238639157 148433308 672621610 765508566 134999368 729038779 562715587 981120887 263854362 406428106 457937991 788797035 463128148 145365737 542083988 865124383 325196101 863168018 674832817 29916263 502228194 557363511 567403972 924175490 964991437 901140001 34426146 30997529 396476745 809782159 733219911 577513522 794389067 445512223 448616917 926822982 37324389 370819931 704608665 345856818 93979864 514971316 346121091 618754108 648926095 52927623 303872690 278873107 971596307 466663697 928597094 395806662 999791265 891215227 538282766 560596438 225079571 584324310 349067067 190809899 93825010 690232609 369094825 500661260 52644208 501319223 791500088 701413684 267287650 231025891 329795065 226625727 588685129 247152598 315036186 123689774 211332426 623902378 57039865 826987636 395255605 20538082 154632217 192383203 658278017 748478692 525219364 792860217 65506381 383843588 371383791 942584476 469772385 960396921 266257013 311740823 996310570 225494116 314458839 297294627 188591557 614830289 904644962 902839449 831741165 777738159 364543114 155976128 649048584 391230935 784282602 165195206 698427175 794466317 739533125 779686974 984730371 346718711 781247365 185637930 427169273 392508199 345758142 945158890 207309072 991624214 413815338 817663824 618505976 323333416 398227249 94570636 800236296 416477092 490240600 372607809 192827969 289161917 40567638 216361583 395976265 992910984 405961479 998333573 182077548 20082443 269046890 419965018 617835176 556033837 44194223 63540264 865261206 275180481 963740967 988895384 847055491 279549052 697981004 121856439 476904534 657767685 422320324 161266679 235817134 455449569 610039641 882810678 189649865 320699264 862640381 366174653 664436875 653792576 835917772 229730610 229575046 167097443 701448716 84566962 148064241 118889228 578456868 622705335 846171305 535101777 862387370 330268710 854033718 295282217 88933208 271689036 673209544 245575285 169225234 634477023 363125048 264530432 933418723 171734268 170181635 512643196 634831359 324184105 652916561 572208257 640163006 20205649 130662641 882541710 746125990 118898379 91808091 650029073 951667813 499415636 741535915 310789207 789967049 231662097 968862124 325789082 144359375 352122513 686783181 658523645 855565723 924657863 134588197 814947976 506087801 30156559 238935921 671054894 314367705 998863410 229617433 550624455 951990874 731353690 124814638 553431571 647089852 959826464 381903719 6052538 805336047 59429758 915143968 858383187 595705344 274866906 272401511 378420051 216521775 781199362 794310885 142212637 18661343 228443947 147708659 298410998 351405974 522895344 644861071 353158934 1993743 656666202 322197093 481687698 372913441 509091284 738941630 488258412 439816909 359554612 851249815 195835276 31302723 825006777 165330058 994831046 631715026 281705219 539075043 746790867 834942714 654974499 743762829 996127569 397061467 292749711 771332898 199942860 372958145 390225443 668444641 396386228 310145054 571782434 318671280 529646692 926936977 16945468 445669920 159968028 46297432 193406344 444049256 540110085 853031394 416550014 705200484 628436273 985871296 859851016 299389088 507372952 103616176 234038642 572960584 621067292 225044626 727515761 750390324 827744649 234268788 599926305 432614374 168131722 734135178 735259400 389988737 946010813 102203434 665886484 653358549 495016355 81760477 824405144 780764765 132659108 142768972 839813462 643302962 7109904 733113161 289076078 956144417 875378469 44529104 327613040 826158742 961574655 184567814 260328529 302037674 919611560 460561460 547741806 316511516 577165335 170072783 876546701 639649362 253097501 793215857 111395288 785607260 828913024 168755164 249708520 854742003 237003240 362130689 526074299 302502770 15710953 327099370 769710259 74140644 211719414 574531802 938853788 188842488 430734967 11302451 687303088 497113858 852221619 691148671 210525578 547358726 44991705 545483374 409725998 533845671 895771907 174661089 522460172 209783351 694833461 825216217 66285561 931915437 561699925 738555774 929988655 652450724 283592503 924699688 569209684 707269995 518710673 697341521 840866168 716359658 834974470 153122714 899631886 289119677 346080800 289785554 584696820 174041888 693230417 266698473 38078064 456008446 787745262 862668282 246463022 286403554 187102527 47018061 886711109 705698569 893253991 996784456 789684528 17436490 954385017 243181184 798174164 40160307 434978673 843163825 481443969 969161969 37649197 849471677 283696874 635350363 124041078 806167728 182286382 570374384 728941057 783199933 397813713 954066392 153459554 407804992 969722046 548058083 803146270 38146749 925791312 55984519 623587230 564552411 394117953 530832098 782379317 358029682 661469364 551349951 195456790 809411707 847406905 262525320 804277609 597930008 137482692 413170778 859379506 787242393 218108085 967600113 721494375 339633260 403205838 862950836 252129757 49282865 915073087 608974517 983832150 961072806 265727386 515572902 513729406 565277369 334571743 838892 401866212 429355903 548793456 648905611 862515458 148528688 902922273 337498675 665312315 493904432 192431135 225711421 282658260 448701453 873483277 166765733 814053378 442510455 242258924 496390419 812575709 813838666 557970221 374067928 446826596 917320331 840756130 247316202 140500460 983702371 691558540 864487401 273776397 297872164 578373007 281939227 26522550 341916751 320400308 963450225 662843940 78023042 45804663 605579393 998136284 796941962 107723440 683133834 234540629 605310810 908622758 747440245 854905826 543550734 484529673 797874383 857715400 728853225 636923626 292400846 751012913 246391636 54792393 845163606 165015338 44367078 589888137 634352620 98463664 525522264 479511672 41057216 732779426 124165774 436394317 458690726 294155725 168891794 158963491 86766371 6675678 489471384 140022400 448095318 746296945 103173884 911810899 773913878 972328965 828266050 973199343 526405336 180377603 689872658 322001938 576109241 995687102 633883970 283240928 319376515 819470193 634525132 979937002 671269795 719131448 328966100 646757153 322208305 256914467 914665895 615966693 508801516 978574364 873658802 108065529 422505279 881972739 756531095 111343500 283488307 407278740 540613911 380675379 757838211 893420925 170370843 338075370 878008716 818872907 426106552 385324568 923572059 53883255 338919980 88726411 518623126 161124198 138118103 85322868 684857244 130735967 358620482 709849972 279397994 247237781 663092262 858003345 456723366 383370524 366048602 580833076 405899424 373455101 772645860 177141558 543490897 610250013 100797934 672785363 71840084 545225290 997281226 827955631 96815859 609431109 738088692 232848088 893138974 673246376 466004240 262615495 786595691 973574658 120145642 783903827 17034011 722859200 359258997 120280260 801150481 436218942 338881224 239617227 466008801 726736314 974060332 453851255 8577726 331487587 202079243 32750409 266737805 275572547 892849399 432275237 261107664 267401817 27021481 168149847 391148473 743520131 483725833 771374998 748785180 66374794 496835356 159301889 605101693 956465955 319634461 235675416 17654526 69157861 976190563 136966350 124908917 440276817 267817328 689260406 820869714 269781710 740212211 736660940 962054073 893845427 820271290 80656118 269401710 545581106 889277894 90193795 16357604 314511475 307717433 233540196 983109680 238076283 901884507 681123325 149538576 915108924 986038432 449220364 347334382 83875986 278565031 9403330 658263256 846248507 763332399 927712949 330521735 638484961 675608613 857880543 98112855 10704407 878001052 988025768 33074001 99326547 944174800 723652061 524196387 201659896 545530658 669347507 112637991 536183120 610009890 544011206 709275480 755277453 634873726 427400476 674243683 301923014 495368212 241176100 284973457 166255869 2225382 532997808 685798879 672655131 441885985 129938433 226230246 586592498 50809367 484796345 681197301 790904123 160835651 104416486 779993077 302499991 107965513 465402111 890224255 760877199 786907122 842094814 740135890 351942293 617532727 370078156 51935703 814534401 421564717 547219573 558223899 446678548 85619995 646319595 251301590 97159930 65971049 779368624 216567787 683442885 279977644 249023910 918648282 443388265 343655073 868177180 123524313 745630922 553896745 533781449 789070777 875264434 208945488 750486469 956063999 650741969 398071881 916671387 251096526 130914754 175139440 474473778 682098425 846839813 927972934 790112485 94593524 339597314 833299322 801216622 753865184 620426765 66187229 257157109 975387267 529171805 577361512 380220163 38725966 471726868 580943427 148438928 192263254 920315197 987113398 446105338 485588316 226264517 763492151 398782214 983591113 808001928 854899804 789259489 762806953 912999241 133089007 116015645 194431411 567246510 32229847 70276538 392094281 4058955 979905063 958956833 713280879 23282070 741720605 258102041 36762583 420783092 761047064 287189208 353347798 615255468 887810985 302111999 380223855 125639662 163912318 938294929 539587397 66055383 109674356 53911547 667035050 117805668 421794192 98178066 855977621 759283074 386923260 518956311 619925410 343100161 755678732 575932843 48711964 822530713 97303097 129658843 46452979 152290284 581911849 225865247 94460344 501465475 311979941 744580179 261454259 225863121 680602785 848860346 272811972 592264236 91701305 914738437 550681214 316284377 615517358 821285193 761136407 344827644 951499630 337118464 277245039 380274092 490985482 237099538 244409357 149600481 309669696 913434061 576624926 445558648 82279410 909542371 448103807 683576129 490253866 819607411 970726568 116552678 916929565 321803267 437744326 314229254 609736485 100771454 379443621 822772256 572557508 146306621 762818494 195595164 15359403 770006008 147291951 8781263 742652581 307538649 755060929 890854639 525657522 561624429 588021472 686683420 482065654 319511716 495095462 753447268 209916346 608908003 604523216 529575093 696140661 950236393 824615627 72790761 301475004 220318437 796207519 57050049 894154838 644809582 384506630 311258085 892787249 519040639 787140193 988742632 783833179 135177855 239858101 90801987 17625616 475188026 934053554 600536409 639891639 183154406 505900465 751184494 160681686 176863008 844669612 190788793 43575591 255299564 336280657 518140240 815897983 979633338 791375083 52431158 770379747 726430046 346047347 104669267 292565376 818146581 388308101 608529014 969786793 947312515 447272813 140163167 178400982 249802679 143215382 478063273 252066735 361115943 868957468 879122142 262750716 478406316 14494395 418376821 452410803 977952145 183025115 179775935 486137834 349484159 991481352 100655874 604863467 354153101 442268543 477976935 316685341 915001912 895564317 319864317 107559699 277697127 566252135 69378240 597565064 51810146 290990735 616588688 837676644 375185892 31941994 561368887 359392173 601660937 138889595 866135652 596509081 796244563 899629028 564459189 550988930 865162931 617847162 81349028 772083436 989789562 578252720 34657697 638929025 629730411 810297255 157795579 400536855 875117479 781382949 468200169 914807205 961021628 414105 78921358 272316754 738232737 509657884 230093300 618188392 909033905 878728558 571037452 847449435 338712755 81906930 196043951 360467906 481517011 888786876 855629727 510566759 910354086 669042818 587672451 3136817 653271082 766700963 787986925 335754293 708366279 507482147 789478230 806720172 800141893 514934454 292440099 1251067 692078813 966893233 285653401 543303853 541062184 54331155 897476331 915961207 69468467 760497028 682419761 293938223 313150563 633586002 396386159 512356830 174630032 705041529 742400906 602746029 136196090 716858513 94508375 802295020 365333829 309637604 745981581 50148892 963842685 968336484 948904142 509880798 294301207 513747622 829542564 954615036 212832241 585906923 84386943 210173036 621280846 139526678 736027578 707122759 348750561 767011516 432282517 344661199 167618490 381469711 512364088 470605168 418233944 577455859 598918582 256999361 678044321 380932331 566868233 529186936 481395681 649524007 113020689 812288636 809306062 260930944 355158933 370880473 421352325 918491509 717047883 165510333 53342859 351228205 200751561 911718534 313917901 103359607 565983376 349080251 186276515 101388235 872920077 985041921 347727301 532356932 556647820 770558255 142834780 953003952 823887691 89417279 935236853 720783226 22839144 688498519 363975812 723544508 704922348 770724796 152481128 665916211 548698316 223004905 102125157 312096068 623205599 299265906 904012713 580568836 990463205 264212512 448258504 659383334 498728841 681793242 639367361 101433355 217299803 888599478 53985527 250111674 156042194 951961584 760708152 1085411 117865559 843407592 358944443 636702171 886685997 954720557 315483674 769396897 89833093 751252335 819969119 949058273 457368955 273448840 445140722 25178852 167039247 625326976 983165869 471772070 716350248 899891328 284029897 873405892 660712348 162274267 543959790 533932166 569119522 690350603 319502889 268259546 989199963 764106679 344165103 910082138 770531024 953546407 162524187 706449987 408731123 893941454 505366260 735946364 568708125 813268297 319805483 355355287 239182222 674404186 883535055 349778631 520106865 444737903 148756321 402604782 506488534 320880153 917991620 166080405 318247864 734951696 634461000 748834023 427851767 848686142 279554976 772273085 249853532 143922346 651806698 587991191 663510936 299892105 841994922 908503709 206490951 444506420 196741072 975834266 653309669 121672240 816147888 83452941 536732384 521425960 162418695 293749773 420445063 505974001 552732923 640855140 836527124 987088256 926419478 81559172 986787241 625420032 380436817 936208514 293997646 746258872 956558856 115079711 610085365 221869087 969704961 310617534 458819444 602829771 886830694 471465843 142330259 297894529 200717009 520358386 950856180 178780972 669554237 727808925 435166254 159571682 893078541 922257785 39699639 795910108 858489107 58533429 376045554 68353663 920803969 473265451 849020199 408784467 540736756 190636374 435828614 437652237 11644274 92582499 486153514 856537995 681393259 671658909 803816982 111725258 775423151 211867901 449450800 153191675 74297471 936643102 674598220 459218542 809080446 861464398 704010785 91919523 530284733 655890552 215818577 159388470 425562543 589721653 713467236 785647862 365509935 11755202 827339470 877294808 637536644 563357962 623517929 699933428 450348636 384863128 77526256 213160334 431812557 181202343 577582866 743804949 174013776 679775765 755943264 507800599 433104593 757128294 630174416 803145808 665849751 716798927 163094087 201744296 494884699 428551714 667209610 542274085 174961462 273481442 723655247 264908284 578757812 139228724 67505962 14065801 19668156 662196712 941062818 842438990 30731431 691468919 381249053 584054008 44590896 187229692 74062571 158479449 907496831 453164866 331882822 769638252 656088095 832405686 583395155 223263317 897922053 277037938 137224214 683069534 64436623 581697586 303561860 646504700 382645634 909513825 405389428 631143624 349992972 202316040 446320040 42583688 420105152 200481255 185242827 316783142 782012577 279571031 173244522 962256820 900278029 66872927 120206340 319308912 596058324 13672880 126652660 849680826 333894190 869897380 296303496 544727584 685789876 115168567 339905521 380356692 367767662 642466830 723350853 655460915 552220875 904253821 158278790 178689469 377402267 550026363 785873824 69302303 929382940 777163682 471798883 943820460 74412024 609489471 530893702 630767584 58932795 652774719 521574319 37541469 528814678 265505849 870429283 117021166 153496360 820281963 866328339 795619977 237526010 619457472 395915803 468000071 26960758 983078341 679397307 359571820 160108721 693501102 646699805 783836514 778308648 121544289 142419280 741915581 933113026 89999713 660056145 142233144 872082124 275386846 959597566 308446392 215612669 488562351 855768352 905328198 31753069 110482516 391762028 273071640 587082917 285033459 584049529 16345222 773580433 723689053 238153159 577116693 16150919 181652745 443184575 875462256 655217986 906418963 499014581 31477608 37829100 350825030 220566240 63224319 502057231 781368848 168543844 780217680 721377440 787139721 375135303 948925354 552126975 904005998 237551229 352074624 504027885 138341673 284911578 81382001 143696539 303902152 455679783 559082041 705131162 440986115 518752264 482103753 261906925 855764022 506169872 205736496 224451060 108368236 548129721 831672748 809585537 388085845 987603808 822374048 755560388 166007877 48187474 856470168 647970654 241973308 80672195 704636740 677288275 642624995 458163653 314151812 203562001 849857670 922258015 357677142 389577325 469499425 547824248 561773546 904618658 887517773 724899040 247578768 243411802 818827606 936969557 296888774 704800414 568592173 572659059 638065964 199064295 51624546 696370118 103580049 561934860 885045565 791299774 708792802 207791704 70216348 558092214 54209602 508644215 879165719 772920300 111985904 774464382 527282143 172980622 924423001 822539240 780144599 654287017 441777933 461275807 841371780 887257145 298416840 143596781 869310742 738058525 147622258 442328711 136995172 591368993 876394770 832182411 484063471 467431923 194592732 387764349 117687259 759332396 618649899 583504204 497018872 916254291 787176578 781205581 129611715 236843467 625656462 97189950 326704979 624789993 779051554 434561091 439521139 360343267 736296761 130548456 444176531 823290076 471069171 572434212 358200264 531844318 943139742 279840085 684409298 11247067 237404078 379725886 882509338 586632107 115677375 997986319 177101230 100525580 67705232 623909211 117490759 91400622 292042768 300610080 833600832 680723228 84382291 240427204 38951589 364839380 510895505 557370130 953656353 816611124 823727406 715087683 205672974 582401926 643180982 34376431 797089899 673210108 702055388 366689313 670122461 383709870 567588732 236074561 979676343 200608158 923568792 854271272 192476653 448175030 383161951 955520019 220418592 596190921 41135646 149025957 286115481 924412810 513602645 994952171 520120898 628773025 5643685 388658012 901683894 479052179 110526937 210404313 453869365 589265874 159655653 611982495 87200674 452500408 643002852 992002657 841090448 723411337 966913564 510134834 316831031 427226216 306921460 514003601 641304180 832889194 202776579 427519586 405461455 301117064 656153091 571873779 614814069 227814821 718416341 475259897 484435008 458559366 565382276 883969678 377768113 585267424 68986696 7462973 792368107 380419915 698502264 801114353 563789502 857701446 707638938 498145532 218223266 198211647 813270358 444995105 444988088 379179394 345712259 958204543 491264199 873696077 111719707 214779816 44238397 722642623 117004350 278315920 382672175 233634273 202899517 551208340 49358687 873837730 313383301 956482937 405695797 29868513 224314807 863530605 863575743 636628061 906993298 192427524 315283561 939897275 936558851 276226365 355081585 507820946 888061471 45542267 31775746 363927129 513829405 880607117 267390740 730144878 981597026 191141544 420213247 413456161 538072445 590015336 575793601 177597852 342961692 919091412 452224512 896508927 532241950 286032728 620834320 519353416 646396037 537953739 547974115 809943902 41564539 739840617 101376796 943769623 187032403 484399573 761751041 412426280 617797002 605041697 2208382 824535350 902772162 14829500 461975856 467702215 573773001 242358923 876507733 977686607 843167119 325125327 890634960 639614500 563204144 515865138 468635444 643956875 601467633 29161169 979672758 915580841 445277498 935194659 108737080 932559762 114698403 823571983 678005056 272296256 539692515 911601633 701585660 677284755 704650205 7661394 276912966 767130197 45341343 225693052 853857690 96143157 192438877 541527524 625616930 87521999 895743598 861903739 691135147 926696354 227456088 452344723 638662572 51958043 82987207 753757930 679167816 577695877 335174797 598830244 510224450 830261278 516303781 186693968 222197516 236216328 886124083 301520869 993895615 38126408 527132545 993669307 709604370 65281747 994303235 4470941 518907510 480543872 731313492 930583986 874942196 276636178 796158267 225248917 994528582 914179120 698913948 251909952 959992011 740328815 653211024 613281306 528304008 58955589 206481233 983256304 657241904 323704595 796979520 833813494 786904601 142966051 200763884 179730633 883230782 399424935 856500228 155663216 529871436 275463608 775363943 503795032 75991696 526202456 620510231 520288343 544580608 795602286 54028604 746227111 367280446 235054799 987981359 770625263 830276497 204989742 491151720 366574909 726865380 759418675 408737163 360727045 678601172 974552676 999938144 274801190 278933661 773246003 767308257 655811300 526469158 86836471 331085092 457175788 520001023 182405876 130672493 182023509 427010655 457859922 856361768 266733211 603116327 710277925 34100969 7828385 142736602 372906593 411025002 681331385 33021357 194742506 128909199 221332628 836541555 95973259 95155043 422818641 94600109 125683442 380252440 300725111 916355713 775020732 570357514 667247855 361403328 959382118 930801599 511731218 961747679 102770268 537669855 101415581 509291776 214023409 974207036 84965554 249156114 555353945 680059095 664211939 677079303 315971257 703508940 960980512 876303989 886522137 303994733 9820363 439550958 996177002 618500137 613834150 9506783 735166344 868854684 259323873 362715219 720646961 572636554 164679439 301891587 539717903 854131934 348891692 353932621 524416691 50483882 40663202 450430774 134812825 593040684 950631739 724678261 212313884 342844103 33023786 307446361 40550797 214852866 686659347 422952421 119987993 878228885 143117812 55483072 844540890 835634009 886429248 171989560 120090577 273620305 903684297 309318215 546542567 154421673 465050572 955442315 855314669 127500981 850274289 352695112 723625116 817448431 899908416 74620530 635441817 99481851 15161396 319001247 43104105 533072035 268739753 999630349 444748159 824941530 203365091 328545698 422793267 308701887 964272782 645457393 504181447 619958161 449070530 802960430 270128485 848736702 924173306 100794170 636014108 251687640 502269212 444134045 386436585 441738650 730197622 773982085 176459179 757820648 49952189 231458761 689858347 558389964 370642958 370018535 284701208 575745914 613296366 646401288 830704401 834721361 312919371 942986237 243198610 235650252 229215864 575118393 875616265 287006111 265130806 246472158 759503043 798080407 556107432 516694452 450098427 506886320 434044762 405525544 740584658 361798416 870125636 574835282 601034067 681701377 344139715 828098292 436667755 816244470 928341656 981987184 77625078 224385675 610793718 709129435 584346550 634405762 961151343 899175655 846688852 70026185 663013377 768944372 648717665 436850543 779324177 970285326 637506644 416534448 362549869 234104542 780474000 272283123 910370889 871155904 352356961 28550336 242428485 647614643 115253746 772818637 815898720 953865050 989960291 162906096 604312080 342428426 842282161 408969266 224249123 106605236 735086791 693571773 106995931 595963135 466517106 28766945 513482457 102482218 504827506 825260828 732979247 463296552 119477095 927989777 522792524 570930578 360759509 959792010 539114516 461823653 560221234 949579132 9713352 977964361 913235925 934091522 975851288 644654349 941580289 623880542 756399638 295643174 361478110 323824380 719795779 74437241 23159420 705315438 332348032 865887369 485845976 351226227 731449629 462260357 699579857 388251625 367984847 45631812 661628721 344183519 473274803 710404424 840029351 148852102 65076815 78550456 615122895 111289404 600694927 357695840 687713832 674301314 48787657 715487675 834333724 429433093 164496056 793651686 512946174 683708566 710340229 187960233 342128900 714838323 879834555 111859827 41023058 18621948 259586129 15576667 446819826 97322303 576517537 356969249 557733843 381086060 642818418 448795434 510273742 131722274 35063029 996569736 201065381 497667875 474250681 308041202 729709057 715723608 358118588 364536263 645869429 744132568 815386984 168569101 23604344 177789148 150498953 592217203 680482156 842612937 668057423 621970259 812665242 765773606 278369372 518857384 367092277 933539757 225339063 811629598 723014997 538199346 384081095 904828162 665137400 803419324 450901350 320180554 353253389 221051512 695565520 939499161 810272099 16405687 290967467 949705010 601092785 186413298 200650755 749037830 343250330 403266768 503746636 203362989 525171881 745434394 395058280 942398565 938785868 139483846 47777943 802568470 871992288 71972333 639179401 577200462 592745123 826383059 79967314 625578566 967305919 204934880 102729587 953418975 96928327 117687725 770569163 321860762 926816305 918291955 970330797 408720557 598676833 510784147 119336393 558726378 360977310 956039066 593308225 643869906 183951005 690022715 567899542 227784849 443512050 234134226 876561594 404350959 473923365 903303648 338652414 248370532 903162008 608933140 271598882 355155220 2549409 388367679 264728139 14973381 553992055 914447964 673630468 908601316 772915004 750382222 54631493 445512329 851458811 319845667 379565672 673082484 171312034 509975435 155013685 688295181 163995917 91039328 103198169 887954271 229788411 838138475 610409961 603635494 758930455 714934162 683241056 705266112 459889395 761300461 899657129 376218419 511820549 458131121 587713930 239106863 675775919 780693831 958553661 190416907 431769916 235184183 363724126 697098694 73202142 390272052 179923187 807905546 656858285 303894299 47354982 22702114 793280168 618404592 926005649 161767944 592252861 852179677 744379311 139046237 314954681 445149235 412739684 557285730 222066519 946690928 716198078 944899853 151612729 402321208 584326196 926230001 898400998 495334229 618364835 562861388 199300560 185296313 784297039 127645451 52069459 552464256 583358178 703298235 353916076 700021230 993347192 27609230 327268873 9125231 457550731 175033963 26610038 346167445 210845438 374168276 824817905 939862298 514022690 707224061 868551768 235287269 170623146 907012790 895978613 792199420 982532535 297889158 843237370 105744534 701257926 252373390 903355520 679142926 782445007 76339107 474240904 163848169 391232799 17009975 696051067 388947917 467304053 727138157 892503722 909434769 587426296 916553739 645837393 461110319 963908405 984727167 226102671 228668106 636824097 902841057 874382442 536656303 210980887 127272689 969530074 802376529 3667168 227578644 929428917 708618569 316440487 345323871 756696504 311177565 245467651 464919682 538890901 931915380 724332780 993598689 18920919 740709287 437043663 123190145 330401784 835920685 451857268 556642066 856953690 786386282 865634578 752091372 468865352 110056940 478018374 462319630 75251441 671812197 844259094 843880478 329203310 952780204 460406510 144510573 502691777 749744330 895055269 921122543 483636692 961271782 109557108 328407879 27302264 631432536 268494598 984224699 452246117 705708694 559187556 621876795 264334399 828501318 236103685 40607579 572887435 74442292 276356551 367667551 691071676 711324243 626041836 864974120 775195951 33396154 526444580 713940301 366534688 787373235 779196548 789620991 875078075 454322340 445944970 990453025 363634705 485205795 464084507 266312502 907725336 221948139 23625345 593480308 22199478 776297692 577519476 811880621 500090292 486422278 231605266 629494624 171510977 771295131 780708321 191424694 356953717 351896564 803967433 722522751 353152340 871702423 450281764 493451057 356642503 528651053 826120367 836306669 76385310 825163145 964028301 155146871 732979090 713279657 538251852 928372289 484894022 693141167 723514852 295304030 848023109 975721701 150864046 73776789 943809914 731471550 439480690 698748742 74011843 996334809 355365468 492149381 945353185 741583861 822753283 833893383 538570107 974414846 473554018 426982186 883645474 552629003 117783006 779610617 469741908 859438673 51245128 260459038 495044207 941729080 572642257 79758836 219038139 448924746 867343385 23475580 292156778 455173180 721002786 892613977 391230103 360025830 874937950 633997276 370907202 717063757 387055006 407460349 438017620 539603866 137336355 562830426 31517854 580133412 716136846 722638908 832764890 565697124 958942448 849536657 54945962 201429759 416183228 557445870 644712598 298801085 558316241 886155415 664684817 843804821 593216882 34356591 461504112 446522526 497497166 979181318 528850682 350339359 967089275 783112598 860684756 791947907 486063218 819674367 313058833 353848154 744013086 180494275 472753577 339523426 592363721 897288722 373105790 317452414 917382695 630165704 635469147 917018040 149547865 494567011 366434031 129715271 780429536 227334662 549434067 620808833 123717292 66202244 586178696 925734636 93834516 947597651 68989051 305647924 753006032 491645842 984792313 474551595 741284107 599271690 296988988 83683787 20409422 215222568 717623913 389601848 136759697 833463815 626086021 215003328 764914734 41065312 537623426 223283156 246136301 793729952 164545083 533449487 420658171 442500307 524210543 352903733 234357741 256370098 321585865 911372336 888638142 891098779 727525336 890452500 765570518 615140502 681494808 594644508 368565251 117663826 170161384 559070895 565568630 850990887 355817109 695578450 239288275 467281939 167187276 335388092 959382297 989999805 137268009 21526214 287819446 480628341 387594283 244690807 813493634 37711154 226993979 674767863 995809720 389974678 149783852 248794777 765105665 601358565 540373945 3734747 789918821 204171788 601065600 827834975 788359004 299997865 461870604 723424238 169251524 331378423 870089932 73212031 166704353 601824732 48633373 841755176 914016608 650566635 537211197 619301171 975552087 581925463 547337813 295311625 931503427 477469187 531369848 17265977 460194313 528061045 609391008 419412946 45073910 709913819 43398062 685776328 947590337 926009102 461514089 737419541 994829188 997648525 41567365 92836507 890018761 653535100 79068566 154445238 238297208 946918833 201679141 570221035 182994154 397772701 195247254 234565091 164125147 803522914 516942140 137213554 354213489 331530694 665051982 388250004 32088374 567365946 75999987 140961133 915673381 947238613 745342764 882083140 900461204 731842389 673605873 377038483 988568142 608943651 126555161 244564974 54131329 319120459 400644709 818645532 759993788 140174215 237670013 196366601 575329794 797183797 736943860 534917831 968784310 568778588 556902212 257287314 977411236 870279087 361438924 34339789 208814340 818996863 938436566 867973888 568007795 260783056 598674583 945127139 55711476 962393160 565047840 183444816 90388471 957929527 392619899 791338568 180464461 6462608 660449931 353614074 384476727 168365049 113093412 634102967 542348891 412012980 558273534 340291064 585881282 170713779 744651197 322195813 161181413 811315852 974081513 983071943 826438559 590179966 378506737 912593937 570361911 281695344 614803503 114790492 375850330 319469556 513033959 235438320 521242652 624924478 434516799 480769589 2907899 16726064 20157514 495421120 774823644 161627470 847811584 531014218 560389133 196065482 683321925 950654649 476885314 497970555 144277470 306004759 834216603 202381791 526743937 460384406 17060505 335773468 498815173 503307154 999613229 99296260 688347432 933566097 452753577 831876622 429320475 417750843 177436364 294266459 759260902 793255781 8544191 828479149 940676041 976534534 893468422 106935412 77167331 176409160 904589472 918013388 374416956 484219507 880505317 82410608 145545672 874347257 123541658 839353035 543780960 520128885 437324270 586052841 116210370 810924973 247752564 658737539 510034074 872823434 414358063 432726263 800999800 721997090 780999036 829758538 319811032 470215598 305617456 620321331 686264345 454166160 809691514 384482817 745348483 369324886 648005628 500511415 221423431 305398194 862427833 340132348 896346499 104661121 820177949 135980319 559655987 20422851 885582593 267884566 438937666 889504934 64813468 937847428 929139330 343746683 565583003 591468717 275085484 689786814 557978630 391005313 621682787 924303380 529246292 515157654 323613228 253530695 701738851 163828526 50967676 487507275 530014070 274122542 405040811 246343480 990904891 546773798 684358136 47645781 319463368 113569358 855129745 826313738 386935707 405751173 701872771 815167470 806698905 831217232 279379145 407422650 39515916 593011682 93427269 441021266 144217516 531784209 146913470 465825728 543663256 360818776 465266662 809399354 405061971 812766949 274141273 237524504 43903177 92788610 327836823 798106336 229697617 44706472 403981829 14705466 841207462 976494201 266793977 252820476 228470003 771718073 474009770 362059040 51342784 971382487 631709244 893068491 762985474 647556331 364998583 330019398 301527067 673623735 217356809 620350724 760419532 36660124 718425871 548171685 820531267 817556145 741199497 801632996 454878998 26484647 686723872 128686261 2865986 542365662 492544358 732831013 918930732 896913762 503973589 826198386 252307106 495050717 412773066 297283839 134817752 212699561 720439188 578037847 292079212 399993540 654983521 995490858 980082277 845044695 756856139 974192218 118739757 829312304 912573522 108586215 450750106 203991493 923481186 222688505 278488556 889906743 514425162 886865385 171434181 931381196 56712130 79323692 253968435 355276150 422928497 771633773 73194924 467714763 416253145 569175153 671645710 637447942 359336049 107876394 532536476 287424021 823027597 44838074 938854404 204536194 17955442 85420385 172414303 781718406 847745611 523299977 987103522 869043714 982648869 377252548 537829434 318055804 385816057 604689362 55907059 510951971 233606061 300029332 639902207 447602892 791611909 594935572 618513789 375587834 498121140 895264135 955265522 674903764 5069398 961031495 823988045 682380839 391817579 530820311 345524703 520113515 801453401 952520162 576332139 975299008 721543285 316991549 497799696 518211820 469852660 2039522 540397921 288138337 914105087 513444086 537341774 819812402 979471254 856038083 492989754 200316963 503461808 323731130 499368167 650594967 242129447 931354747 895828353 467908510 141876150 961781703 5595295 53503474 461637647 853212038 835167039 46481392 556574394 474625744 145388740 537388193 814467640 307028446 40274429 982608561 656905958 493894933 911797790 864666491 106822158 737132540 741385159 383140858 624153827 931818058 126115321 800511963 14390653 242930394 253176613 358562409 297441755 487500977 11436575 905165723 453138152 482232309 209530147 837984531 942537080 111228156 676344534 877680918 323776832 670730051 770337608 180984725 642216421 88255082 639069420 454015781 837842414 205920065 324547489 689942535 575213005 175489717 147668395 216268578 652260568 53903591 428076727 374445317 674584661 466357268 332294874 278580454 55052908 24206255 292561813 109341608 802628397 589315908 994192582 42580687 21127568 409698194 724832193 222578570 822064763 101212028 543826488 103080882 425291698 777219855 551318347 996951236 409818858 122021499 536060026 673935082 683486906 306428698 746964662 867953652 294732711 673263221 403394390 60452436 764358933 505886515 484854037 307090478 334382167 137532967 900218647 58111561 780672423 637274444 803344361 140587795 303365415 597917386 858199171 517951393 154247135 770496999 979507009 250148535 668418240 105609240 174047976 56029112 503323556 839726075 245064615 161855924 510158925 621896783 382950417 940135 42414946 328447232 721848355 492547368 491129208 318859298 595875394 169588231 128583685 592046322 654050880 185427116 715034218 707080401 309466189 147872114 543241457 884952138 57428998 853166169 119888845 230223378 903773559 422806022 871389204 692045828 995637765 508296392 571435210 682962978 264577417 180082584 788203993 543706520 702028097 986395415 195872015 757017018 805600462 581787782 893286694 479150336 69864261 654107354 648293571 935668242 857929748 121719208 698507627 298268345 354491933 674006574 631357583 806185702 586583200 413161558 373612682 474046904 628138064 29372334 853223329 898718832 548267584 384735343 815475956 15519101 539888365 923782260 83067292 694170475 268059963 415141960 848780689 870145531 995600760 373515291 326286515 360976655 948522587 60608702 314159562 469771696 155419646 164467894 391732105 901225239 931766506 124889899 366546312 428514200 294710027 595684584 842957131 600791482 811066037 995338598 894836536 246769448 479508903 819342790 553719714 626954167 778513411 47893967 53335489 362322015 119057755 191142636 732845241 652756548 563232158 487702841 347011216 200014260 558283313 866420851 967413560 20188959 339119315 637328641 880390028 669057568 969311413 634360052 456124493 981569150 337998184 75417347 551464225 528714016 678304239 14730122 256842140 424868638 562565546 875413 42695737 929485486 770615147 507454929 501138260 300548662 347065442 535377300 696182844 454135616 748151089 201621472 7308830 634122114 134734555 820201562 704010007 834901461 153888716 619512403 423851813 425470781 672543962 256224190 298231600 369959397 2824262 571476033 413909518 774388766 324556464 798182430 568567157 893689702 475148841 307466056 984312073 881069410 648422692 137769042 369325903 760983257 988439934 547721599 960780474 737349312 673000319 647155637 616687782 651045684 617691347 121623938 629274194 699510391 978205068 915730462 781110246 25743856 910145836 477162603 398847862 300372283 444456852 14984170 964777464 590570251 599460375 681944017 73610323 205979721 734553188 569237492 850692681 536030461 941879708 57320403 719394191 293089114 995393858 384543123 554479294 364021948 594852935 595367172 233910359 803085992 558853116 964740256 964977602 684668872 614574881 712126598 108785386 347930864 255216344 187287930 762245699 325126681 806548914 408868844 520299954 452816232 185642146 633899767 937748904 302752809 281038345 445651798 176087833 105084365 561578151 934197362 239978970 220714224 580057771 680271195 205952435 340538455 190170794 866213319 846980935 701507050 668313762 613524757 558351144 134852032 779617018 27566410 95194325 357630739 690990460 796100125 49376681 430251844 904171104 686459868 249948654 226504890 603120451 749033103 238707673 224052891 706351142 882396884 121495166 45707855 520096893 427847426 776253157 299525118 969612311 599122956 202152688 181948633 839840308 990239892 174622325 143605802 928055931 327610334 959392811 866321013 774055415 992587484 676353204 159143513 903119901 741290790 464249242 709078946 267676106 730838520 616361038 471629890 872073287 444626235 640063275 878003543 256708668 743848573 74182252 384414754 27783872 629577206 10225985 434442511 552982613 480920966 578338486 270753968 693665752 701712823 205291721 935436483 990231965 469174448 440138072 346013480 516284503 342633296 535563055 374436590 640124448 582708245 554554620 74889541 385303941 441350178 480157786 39772298 79998571 396679135 996691658 124273471 40641322 65709058 386257079 335909649 745984386 435680364 634961518 854080465 402549655 211124046 347036975 667654267 559714035 231280151 376035859 137941044 133139343 593224927 169381161 365711172 523296967 217817442 420589665 450609699 60130401 334040076 747214482 863447656 800378249 674972904 302439040 176133590 886643667 54813363 10453460 615765340 971042367 705287621 392056862 629193739 547925555 367557930 225991640 211287070 596667001 241576336 643628386 524628473 411280455 576156750 925620744 224766247 378985531 734976613 760162043 399602010 724407130 912625017 905918545 729467249 571345427 884595418 40661516 983750248 23383353 572473474 259753753 647648370 421190411 72750097 683383365 45867488 129851949 874251208 320193867 303874605 893111978 247591834 26444746 261111544 170956028 292236833 369786961 866998547 826650365 589270937 372388682 313092461 31305460 269140712 330402836 413425699 724314253 478849696 477480431 539137399 161577439 98096119 283942658 445120212 862905444 672492493 232188769 235806161 630077444 384210857 737490945 167713571 233730572 138999481 260799944 152333746 55851569 891701974 234947197 287207817 70176143 427062143 483899346 262497497 477845932 736465113 870747233 444390655 726962550 111572662 872463015 762926462 822805058 443201933 200495635 115631360 410819788 202904444 473445362 349186651 211061306 409091915 503021696 115826566 61370141 324216680 196814813 485338278 721081443 613706477 506615568 66283787 444781679 218351254 887127824 780676129 655752194 951458253 405302193 961537159 960822604 394512801 494418102 286990591 924007653 387796422 199932619 203021174 481415363 333469599 797850747 682092031 361210705 586039088 565288260 376076755 53945435 505557548 535194759 472623191 850699797 544703719 171649164 56875028 731071517 798319458 74352517 588955075 300109431 534262852 593969800 383113016 520847507 395941340 101484188 891155580 254773317 718655776 319434150 342441654 307413705 228849843 54376315 572861756 713961924 247914457 173129425 445852298 496482886 809686913 529095241 755748673 7041989 400041285 904230253 680080682 994519320 112395361 862255534 698955327 279895946 820944573 672773992 652050325 169858502 350146026 723716312 178257522 851841763 826533919 320124202 103300930 690512733 455570747 233572208 20043927 543274521 781404610 279807392 208754730 159633763 987900905 939933599 178304484 968809970 423047810 614692404 452338381 689524197 277202448 689882128 340574740 335104956 692535737 877529293 926906397 98947435 775215691 702982636 92194149 695421761 201828159 329018839 595098008 297630975 476866994 880624860 507330187 262138057 345216880 992283707 748437817 872675885 19911139 512070924 29194947 208624926 453176612 986646883 141410679 538057980 555378930 392942887 880932806 651185549 928623543 636426040 515051343 654740474 84892543 888629333 529717713 556138973 404462338 857014311 17792568 281976879 478027423 167639104 863754649 128061529 79330655 4544792 674403887 680424741 214709230 36190482 896059484 953601994 119440808 583842678 631923116 844604133 206529929 507798390 446841810 712768893 484735800 655936299 133342635 566218235 753671173 494495380 49518646 278275383 408922086 590578847 579176354 880904559 600918142 968932889 956961347 582799175 42226704 864883391 366109072 155912908 992094863 143666733 127590702 931375732 7085710 547848432 742700524 103670300 742219856 680885115 140225209 788618248 18885818 511414050 295679920 232675304 101607516 384955691 266759958 49720273 963115118 140380604 817172056 214726973 191443406 49923817 873977604 586051091 80601092 232367528 988997597 389482401 865161280 101470943 578501053 248680349 17955416 766402642 233010359 234274080 316882890 310462903 810331896 497919413 765805248 103902626 358546400 593814597 817030921 3351192 668840178 962720297 84036888 622984193 933295319 776117784 773746451 905315121 934168674 865698111 788570044 3416669 399069587 570824229 468857221 875900326 470743174 831863747 720934275 628335130 18801291 430589557 501334646 474560166 272167188 770686207 733876681 811430694 390931644 842835345 701301893 157588314 920436808 714984127 317214822 927997932 76677024 61105796 815302344 978108269 320127708 922777416 212577716 736089429 368910643 735824088 356578010 297497860 227967496 933678953 202832016 905368777 557998571 743233686 916816599 524519631 237488010 648147048 282892883 624357939 470270147 299540043 614527317 537265652 990805913 611511314 211285717 140989439 338875191 663474428 782459249 965981217 401279726 259741873 665995889 368719636 1741118 660138553 468031684 3926395 168923847 239935245 544467458 134364893 429493589 70618118 636718952 913527471 760417498 931613807 36566240 258394438 660818034 683230963 166091257 149810916 617606498 893020836 359294182 711216822 16808980 38310917 207142796 529932234 993870109 757224439 620813424 384769049 336497716 907652297 692621248 947789191 869476158 512207662 734818388 838662360 126379337 60810055 449723565 728668867 812601732 132611476 702534641 637634270 91445839 34018824 13196012 799330988 814139433 230073078 399939867 162867348 697061567 67961371 449823642 22773995 645404645 641975197 201661489 228964583 903475349 251611398 229744206 225912232 687298033 332624463 577371658 254111035 774757961 722944724 922876709 359788943 536904714 741807707 913455619 489055614 152160981 578666511 941257396 990941128 105100904 781250950 831692274 34717723 498613170 533006272 188337690 717184001 112783814 901902367 941935669 243192824 530366175 863785843 12356846 737795169 753873247 993610479 3175330 726380162 127933649 169418032 224540493 582318992 271794411 729025852 699324310 717100452 53381252 339473794 560460751 249059516 990406818 974717653 914621930 519070151 349063539 750518131 748812684 263063951 549101380 96115712 131977979 524603347 243814804 466242701 726849059 537663536 177729542 115257741 196221852 528257330 665159525 45304539 226629545 214974282 756836004 133636287 257152303 544694737 781097950 330620644 688655034 693898761 593136985 869783907 440213383 483640344 195464315 852230069 265763443 946603538 591914202 389140931 218473219 19396848 729543988 720578774 576146024 430542229 570021481 855643304 737794171 148502983 505377410 932787283 639099063 513229624 385148857 782715230 402197319 590467204 658274660 127888053 376633848 688485417 314391814 898414509 129740100 10190224 390769998 444769028 213975880 416999949 896841485 579996129 353588429 299588057 792831038 427895503 988933697 234816785 373406469 627615938 513703096 267043010 56735404 450076187 321289464 857143263 10884776 722655133 510598754 817849917 997511571 684174708 921015306 864380832 548401201 933334583 727664550 13263025 85777516 488922085 25982098 316423166 768454744 378652895 500908250 951142149 217535794 699885813 836240426 707031845 510257245 877960284 864658651 254705830 208725601 174357169 644485354 235210683 409905651 695076856 277006082 44338044 693457644 879016867 559023470 190816495 519375700 752025472 873343272 293435380 474871893 786912976 286181585 575581799 244647744 943706939 447979434 808117496 547151506 589075402 815837352 56624204 460253421 414319093 275361633 767588335 403817503 932630164 257627408 901175118 178527255 322293493 839208867 30408388 116834290 935202750 23101092 398429843 556423925 595349510 205590095 14459872 937568648 702887500 27741823 355225029 134579267 848189812 901083069 577910833 954108637 257784268 71972918 61753613 680523065 495894026 946103494 599618847 407479911 404083785 576400872 837680406 214397845 180069646 617105607 106270864 883704096 948091465 644518447 69487884 319380876 320009293 369948566 764316916 235170439 780970199 545892896 919592601 995476447 278589455 305859473 691560755 890932881 80810879 720478554 308650467 91174336 140166942 470694801 103966388 511481784 30106698 800231924 425131927 82546926 994248391 245414125 323164517 462946042 41017795 226785931 100786910 104738720 978260689 47939970 854613421 51211726 735997169 734879285 179901794 199816341 99190663 64710057 405335672 49039919 572147040 723687566 352635727 515638016 482073523 617173052 84767536 513909398 758254874 200418737 722467660 559528610 563767452 450917013 999655870 803931646 505633960 32658489 404898950 792189872 530180627 602472079 171639436 969082337 709709078 143501115 776905380 661732068 183650397 97099906 809818246 620028984 499712494 100991572 636894162 418370941 470588994 317267786 432781587 260230014 469894968 47636897 788331195 729222960 655674643 49324097 662939679 332977324 176347519 374012344 572254340 18003001 642413205 435812159 354024467 521953598 563095500 229838261 483673309 624909136 876465937 805675166 224954330 985117484 491495341 21905199 600154605 162316723 521362773 666141500 683254493 335873265 496100647 142317123 351707229 404349721 391549094 270859886 753918214 303509894 453171397 499433355 963139929 743401405 181404370 236980752 526302401 259892838 171751825 586384928 420705419 128669270 295311396 836635775 846386420 605533066 847787801 355272602 998616093 288342050 508890467 752186510 543120141 596131693 375795553 808428057 411492534 474441437 968672729 924944799 350356210 729254152 742439159 126854193 339655557 28149435 691573585 328561543 344900371 282157529 278032100 786833663 44747824 14899831 684939284 537258654 631908437 41560531 261805747 184448027 232661218 51095375 851189488 328040901 529317410 980484468 939608683 204820897 918294598 416848121 188044075 138860624 551385702 258055607 72602265 29531177 875484551 228029362 670402702 164492317 831119757 991885845 568260167 59551951 67432010 986197555 535747943 276078978 387990652 665190022 918472954 874134314 238515904 761707956 983451771 457503581 664697504 228392327 909236420 100866393 13026189 844780531 896264472 800829702 418806755 572373009 324950056 615995891 281030622 789516069 633529608 817580119 488540332 557862812 862645301 755314192 893320541 601634825 729462420 418045354 54249450 746328613 236128883 427669839 175939123 850322388 389379718 28656601 537569538 817138211 380200171 226963399 420380939 998113861 142650406 918741054 715305442 993740946 855432233 399427601 712885005 495455634 931569986 715288242 926006002 681261292 393450805 469120326 826869223 954076793 488995873 777255827 682405663 47956781 295812504 283619588 538915772 349498927 17599374 651177399 165426637 287757771 483585888 548844900 956788031 81435761 941694163 24065656 22611179 544612289 941399317 958431486 416595347 176401995 66495418 889255346 484510433 777235593 845166528 751061742 461383781 207680514 231556748 141996478 819283096 130485790 661648621 960497870 292575710 29046597 112038935 98045814 998139261 930708218 737134245 119417526 142920872 195041529 459414942 389877300 29598073 199994904 468815217 522128192 308295150 570393948 275246320 800573394 489281268 851003632 141271644 975968136 616621914 383665959 470308438 716314284 156154586 576899965 312349936 267324713 406002453 55398803 556926618 122403224 418930325 23195191 746144054 493772859 151843273 343369819 636001544 63866354 903501324 472951323 460338107 584131412 885945505 240133560 88356710 758900118 178277294 777969313 616961927 213054358 518641990 38520423 507808257 734546652 592053346 409818565 678861856 286111382 327802338 419905437 770433953 311450269 828021650 194267134 36043160 978154609 313064224 825152280 964223374 558803509 675660073 372774472 534462066 808211900 832052779 848029456 943693208 827302781 993436558 592882717 373871551 48252822 94130856 770484288 755532294 34561742 733375921 263298423 707532033 261842327 658731206 287559139 507053475 952395013 833847028 972791502 323025478 647842264 339969327 441032110 468798903 44334457 1710920 592472351 849688602 878496502 775167240 65287651 74692107 842468359 838785814 697659875 543178628 252902921 562443265 177040693 549056749 112479493 765273924 589900562 998058512 486431913 298538561 173115616 421629731 915589454 577170752 132348202 427075013 505740020 171638386 536913056 634549755 975066176 509941488 846883106 277119792 869424515 51381694 896140974 281991997 359598513 793804483 531369588 200135515 815191404 161083344 280060869 326877488 794440701 603569057 596271386 55917004 338449486 747692755 292832539 852423330 379772411 671903473 448313745 50309779 967565378 912841068 928042092 421033182 386915593 170732193 99323599 903551028 904027105 196469963 149823989 355253163 711783678 308269336 747927118 767879615 459985989 145684119 265148012 766165843 160547894 985177923 447196685 719519417 625343239 112632570 558595343 934138016 667891595 807618696 764356736 782158637 894795843 176298142 404876180 805618912 641800277 163429077 220278949 132648871 33365137 857128623 419016758 413636569 103753838 287407251 855954932 712930608 179832077 485362898 346974129 282162645 739404338 129508523 180094569 364439379 275477328 941074744 539791676 863352734 761463932 34156678 797723771 648747031 776471412 941336711 125357205 338967168 454626978 667901457 13093671 191056392 205457940 354530791 443365874 845255237 374779010 768220595 597433828 195147824 24146504 934116103 588189713 681566004 941536370 310365785 82913455 830127130 650229676 505663500 289618470 267620376 494010704 730791786 337402368 824612815 332762203 525249956 81614832 119259199 659070578 779616466 405356242 756240857 944650986 943255799 358175657 830535022 389780919 771431162 695130270 227519808 241237112 55786928 772560392 613723634 311171957 555624655 135294816 202019216 353520797 986078711 732972106 915341971 777982086 892074421 618253200 724712148 647681907 693236857 33974311 157530269 324053575 851967386 771951145 834387863 641119123 916575836 917223898 670643158 471733903 59145961 524708516 4659934 618267161 564820302 516450332 904333455 551722937 360728203 117111036 921135158 777120414 88322936 485842985 381339019 706926750 16545254 829822378 146401706 562660156 60915589 812853176 182306841 669268125 251679978 95430059 579281347 849407631 374867098 129542916 820330495 634882952 458356735 89341557 880601483 320776108 552188006 623439562 105164682 457876417 137076236 241547778 15416459 547425330 173489937 633070144 267096451 44513307 13525119 240076496 17656526 148793401 791185222 768275746 122431282 700174836 580285759 462907862 457633502 727678554 479752238 965490603 587261541 705607975 27433145 252519055 530361796 442639282 215120755 101178514 959425891 491847688 425079764 80760050 188235021 921910233 606804289 646264596 619301110 793117561 650750461 383640447 694820545 609011433 470069310 718056680 924636779 237116623 80953117 404177709 209557353 537209210 995327895 382508619 74478473 277243877 588730267 732859250 536985614 360208042 103234294 518130678 409753243 472337685 404927076 671397454 130185279 537517074 898440325 412848417 87707243 805473593 431037154 547396153 187167233 333350347 551405804 708852105 535041091 827828140 898237182 868458214 973845473 411250798 78902105 830236006 219268589 947549254 735413539 58518946 730853095 527528726 239013232 203308915 425442227 292378466 628157499 259153044 227653276 35176799 699735904 552880362 443091037 904031708 992601516 347697534 534215951 218096991 442685906 105048453 627230520 645769485 935914854 70563158 57410246 284793266 524860911 836075900 636212239 87632074 985014225 859366300 968642764 929898868 503755105 899491722 869730598 440471924 98161111 603471429 186145450 787110461 706902610 988940524 455830863 977990114 991749343 195768269 522585708 83812900 201028460 286548824 922403788 705134446 606365910 3939628 773126812 53288395 4635101 821845770 556634223 298451443 46576678 11535840 294008385 564536900 437479753 762002109 94708603 825114569 431131577 734148063 846424296 464111404 355627995 482876328 605781436 908607946 35004662 982483366 290495129 432895646 607855680 852140937 749637249 977330003 8982477 112454189 325877726 720560436 529599905 660105367 729778573 365637691 602424995 242025198 743304645 259014663 724289445 725375371 962595629 968098526 898289251 895060964 427897811 751683249 334921338 695318433 257327658 823243285 653064310 159927691 678852627 566878538 926357704 544467091 114744273 386951481 599097032 499505366 81549584 560541809 712129978 495944859 373423080 861837351 416529349 551648073 208015830 762949947 293889784 641955955 848590524 457247542 447016019 799439060 697581036 476243268 652617392 762477906 808025452 19428161 870175709 750651896 971323740 235538088 563977606 423266040 59583041 677864866 455882829 528090541 635959475 194655742 667803307 398828955 26852356 568838197 865875468 549383530 201317623 758358627 667131843 645552629 590732973 271385425 610523656 355448111 151108020 803628399 96769788 76376894 973208322 221031889 231431081 841421681 897733365 724067642 841926396 991300407 563097166 908738319 792500950 975151916 910007616 550819936 288506610 242511892 697291871 359199463 179611132 325445593 668053412 459941372 45482628 312010896 186355066 543721390 651618309 361650549 911445930 662659497 934503902 200295911 386447979 591827011 780085339 742216820 693820251 840834941 635692456 627920849 239273596 629773822 152585447 830971351 68860735 654280724 930393360 155036809 526099318 749157049 539261971 976664851 163486819 766141067 727095229 572751558 449368998 783151822 939673800 520027170 350985806 115716727 241742807 320279497 387477970 441769238 242743922 468817283 333597455 316092403 816718861 684867397 798879048 127841518 282254077 106715690 859351338 345257370 491169669 941270903 555259343 109866031 827359439 868535189 803983279 916669064 48310762 213993240 275564977 50723633 88370899 254066621 480775203 710888533 651149159 359766373 921114040 89933007 61794930 655655707 111876754 818973467 562413221 378100755 595900209 204309091 674281368 262042793 919025542 747427189 426777294 802264929 450814437 932870087 490547888 960525283 512039944 277799035 436977551 374200324 173369370 491585364 99461794 461464769 551520676 772981191 623724301 411781435 417259167 541552617 507407064 873597374 763037283 275749751 614943221 75523260 940424378 648247001 622103868 240717778 981874894 49721886 896731505 745737924 382951480 517686787 106218042 98251386 969979889 227964126 696853800 168947723 56699745 449073084 769869496 80929713 431657301 706578764 834886473 52748748 193140993 679682788 638546468 624133099 475590914 728933762 535781498 688366528 556476001 786186961 153857639 532455463 266950022 73341468 703714280 317487138 566550859 198113119 44656616 239372767 65052136 41579572 778278203 628560300 566615049 256983783 589305750 394764553 841700277 196674402 227924125 275127190 857674594 143197250 939519191 19022882 81478898 1449410 421881017 347889567 452931238 233725132 263240087 915075622 757282348 101752302 787487414 912456699 153323419 281095262 646702655 296535179 591841391 417914111 502764098 607400809 644250252 656160083 33778618 498030925 29675329 270370956 138864518 131723039 513629763 659154562 576574321 684997861 478577327 780793012 829720362 339386583 79742987 245210443 758307151 307237454 115167553 348284945 834873434 145171151 820561322 12711809 486994877 70692611 197811714 851180473 906767041 676320190 320658798 464134018 84158373 298632954 326044796 997955913 730753671 687639263 72502818 780091431 705721456 278597810 832044219 700181722 523379796 775872490 773726989 698556619 209686540 522645282 451605829 19341063 872197463 249407772 513531896 17487175 360595679 875017668 175207206 682176743 572163894 454948654 702825264 601847282 581175252 108223124 659469801 366933016 336670748 814331224 596501887 15431084 971580502 495427083 446054292 691187376 86162613 252805465 31391277 101142476 238679121 589200672 185233079 927483727 426926121 940035940 857371908 602137644 355206185 120535376 777497174 917606153 632257568 763580985 691205201 323990823 792187084 110478487 160825345 999934840 906058443 412690703 602255579 949603221 332831141 914604396 754263484 759373499 901880013 773944225 883306988 414955730 467597466 985576136 476123670 366975337 720319824 594543657 845254481 617000630 608832024 955983912 682551831 791199898 412905474 294117726 815994705 197523356 976172298 843552644 570508617 390618092 318498573 816349823 64148148 624736865 660478678 594940761 753126837 823197047 464860952 992992578 792136395 664478297 507143019 520175773 788248036 937750484 998665041 880780772 810979161 149645154 993908527 547049674 135243493 133807649 246604636 304570654 206842028 448615383 21912846 878347228 572206654 291076594 355824999 353415210 680061461 406608526 805550193 853111887 381340154 611387750 998486044 791768769 922449734 41115364 825404226 77190425 123205283 468268309 994399397 121367325 68937121 244708529 931318765 165457335 353382722 793815064 314577578 678093816 485469416 842638930 1824088 408530464 908518242 937460748 540443737 522588303 129046500 287769246 56655090 87907025 672985358 291854600 990255702 800247960 359327713 771402993 506275488 806207681 201854159 851535783 508628433 591824462 487798952 849678626 796120785 645948781 461211564 977108227 961301105 187222639 387696771 623171471 290731115 152979660 725884725 858619063 635002975 943876654 331539003 285300497 15761624 528275292 468359025 897509595 387320903 286268234 679789850 909013246 279010821 916468756 737209576 588020747 764684115 712026108 26813165 573894455 812906075 818273903 721495719 738906464 515503917 43423485 687076858 477226001 159749826 833095269 861238 979087988 841689597 513625993 417859855 271498341 478760614 487840882 895842720 786468195 641032814 664409943 450682226 625964944 195302384 878528913 567871857 950400194 664929196 517286562 210077937 543062893 739037450 782175034 573571759 902498224 325410143 772355622 274298834 278435411 934227169 514547558 233622758 430746053 691763632 795423004 344308450 913362204 998818011 683570322 291839520 378522394 94393165 575846718 129718121 154371876 190641891 658705848 620273896 386655309 299196763 8593093 596562227 429393989 482496867 369503824 282417223 709854834 960563592 212650092 811463304 492474072 248084804 275622996 585912261 745294630 934205434 966019437 763633203 482190774 548792821 689470527 284629359 383906951 816608609 487603073 154538367 304837181 699908954 498624266 431087566 576365864 410702561 304006369 330580019 317280833 413334496 251386929 517543403 954612263 885207590 10345034 62770332 816575521 642838128 811067819 742365523 792441628 795264349 226435830 642402178 54280371 893557364 875316724 855010826 319852069 277976875 281886876 432448560 181017940 308223449 681472006 51344035 112203223 272022717 179038073 212021875 841001439 11642629 208423260 322639902 768252237 970758588 468808772 348724366 927854762 159702754 617179116 710696461 196553253 59025492 676470331 720480080 929769106 631467229 241177141 846172279 451026548 16622380 746893075 868783618 197575920 309294301 960493359 747471332 757182166 603598704 755533578 660794479 491477406 610158415 806696016 692342113 133910630 370143433 952796888 385416415 341859063 199823131 625774488 712260726 594524862 624319330 857469881 107310620 652228052 58974634 495958913 538065713 554011638 874078181 693693285 499919219 304223631 173390056 975782654 155811862 874869419 659710331 437051924 101601450 704886784 832242497 390459280 885663794 375197682 659371468 947483271 870396431 21072263 178756504 632417073 500760336 239214443 536199430 495171568 854098024 609499897 660440415 700900436 896955577 978599212 59149267 168641553 857717507 622848431 855290490 833407995 492254132 227481040 564845913 533596444 580694951 329090951 161525079 598481821 520396561 26732146 962268999 134679505 79708829 423610584 42026206 917447472 144353366 430270123 214127042 883692900 396095667 212071038 823004283 907925812 37088143 843419284 455797111 940278167 54336816 752899027 946820626 40724131 600070978 547683528 580782480 698325660 333538270 870141102 193990164 182889713 994109055 94890594 251719606 540469554 765301514 381974381 881329003 824839197 144288460 976858364 770884626 478630034 998258042 625577703 937419643 396084385 112627251 335234223 196484434 170889846 39110780 438635640 880248370 626341746 907379521 693416981 455006365 42802456 646816727 620942329 365515258 709279249 343212283 489037383 914590108 709957936 652645333 661225412 153614781 334141555 648168177 147010784 814744698 978549245 927281984 766296243 391321827 186388244 759122727 804262906 571157476 284240178 868365158 433437728 60617561 584921839 163442730 922335280 634453761 561654543 147702284 758016997 603745157 404798330 693197575 279261340 782723448 338159689 77820799 917304413 662170196 39124661 804804931 362673879 323941243 152181279 964423302 995372640 990637361 899199765 605506792 887505659 777447340 536826441 615496302 137815371 693456901 948943253 339777156 205410209 865215802 11602174 968363264 508445429 596477239 666339761 883605793 60441060 668625868 902128381 893077639 696287161 258066356 287681374 331197507 668462432 800777102 86844284 40943050 424962160 614202086 451063583 873456122 439262253 961319723 464381497 380465687 973198457 583250102 350988772 884086477 301301474 666601418 862788457 511571765 978156455 62708622 331625774 512099782 89126560 725184791 953195979 806560620 781679190 662461531 623877365 777008755 345368829 167183674 345250452 738873740 601295716 452288640 369473971 892400857 256441873 440606433 276274050 289369308 389962278 681859567 696610400 361046917 440862329 661482288 318512335 96694052 66696314 582604558 165425784 469055359 957366605 71734230 728899890 96836787 214760120 395232455 285466102 277436497 100231210 617216765 576679910 136460877 540572091 374676099 461355345 37536774 670431015 589886796 769315497 234572096 92360921 608598574 517507463 597786921 150225120 200098798 817329582 207666004 768849392 565159474 709412364 550480067 529520238 276402318 244265396 42112214 501173082 328804216 435943649 443777117 9942379 233331028 421615605 560213645 903430130 917005676 626498683 643736579 449260017 186648815 102099495 382871490 914885390 537305077 383182295 493378620 6722202 337579138 912967816 674691141 17104522 412915582 522232426 603627030 895369345 517884347 975147985 236744280 172114624 157627123 853095991 762583321 30605119 569515716 263622461 220351179 300201100 798593466 897830831 765818188 272866540 837903431 190289539 757738213 767911748 695325632 524365776 775340351 261901350 91094381 754451932 754397296 373140166 206088048 86602773 358059510 829700101 498943966 647904264 846614456 118340971 581105075 371049076 36998401 861287971 855378379 694678078 969765767 34227208 929874417 713118060 550723175 802193563 203716054 299851318 85242661 835521023 82770452 514033141 58637998 474817028 337811756 388134957 642034269 591892772 777792648 798096776 643567336 102141308 551833979 164980954 809036152 623800788 881526329 9007649 175778457 584848026 350322407 724431738 213967168 479416552 199575181 556333111 728424909 876942202 804647450 564082631 978280706 577499578 411688814 192441028 1977103 828647094 248906309 388453879 41261702 820748836 459661129 266355014 960909158 178992486 137832203 612731591 888057365 291701379 629761797 110806452 663865441 288552743 380699288 359126897 727285371 981455275 973563919 209157769 484550658 383712271 726765977 923646382 351346432 681012474 873525839 687680702 867247837 752820923 539452722 736957370 945706862 905065545 215195695 670522830 37491700 402282050 991826194 106552399 73551377 702102003 952546456 536913844 243842773 127905859 478852962 218800290 422996915 445357774 920299767 661710055 229687688 432666836 476402891 836407411 284183450 1113658 688433461 899636323 584551577 587324048 172684406 654019067 779373460 58918415 456799674 251493282 110676240 729872019 146393616 691132401 703684077 432608932 935678834 371942044 315093112 806563954 353107393 145443214 880317288 308981463 899547079 974182353 713364699 877984845 306112564 357283475 328991060 80378366 433423009 721495602 34135234 787848379 828918416 890943282 907064699 227861495 678688364 628180801 112556346 907603669 243318404 583604267 79137829 875637017 4894226 78374131 644492747 908635188 827628086 772886199 864130077 809115200 158726396 277946819 13278333 852138745 431291475 785704586 661511341 604032708 312390932 263385773 440142812 859456948 630015490 448086503 77290910 439987841 194353863 47517481 692942066 848425864 177731824 384443779 453911357 366671312 147069688 961827633 864985419 639805451 269789508 592340118 292170832 243317133 712147224 239178561 610110700 347837268 693901224 338411231 888678949 115405580 883173646 163375185 940872805 670188034 509776202 717219989 290305664 880366639 507379012 353038811 194142394 553256238 550333904 70223475 475699634 704167754 730401446 216327643 129037177 950529137 891900262 783490483 733667971 529464123 766317213 235930312 124584106 372363749 450362550 954807309 551646776 482221401 117577999 652328350 53945051 926452773 106219752 962542526 841223843 580753790 532157548 514165209 704075536 740506696 401025449 994516863 571696135 515810823 857277339 593262 295673558 365758954 47790368 959464073 789604659 335034826 759637509 603609819 302787641 698224934 394059256 341547158 120217453 982953510 859075991 784454422 958235070 755999382 152181087 880020961 739715714 814603504 482340025 103381919 982849652 668415827 811759862 542001957 737547962 891118727 634570837 79270509 383864291 507038967 896400112 188955545 537132769 206392766 57072084 432115191 825534485 719241116 634264562 355772665 498881600 752915959 392316708 721195323 786971539 862736348 150331177 748790654 91775136 337549572 111754923 698991024 61505895 693159121 369927740 656922597 591771213 694361415 274341716 884155732 139499805 856844311 344654167 310927716 281623567 350381460 20856459 702858399 640489151 619060162 958836514 541106103 991123248 259594057 390452281 732816009 759040211 601102452 349808842 52873496 949679997 599535165 804699332 668690063 33031784 231886658 151148025 550531648 965523261 628319435 615414557 852929704 168201479 294849991 244632789 285463147 713645883 332453837 24854184 654746961 663958199 819307549 192429579 761284430 801558208 598993054 46232915 42988416 774580228 828391135 953936066 519873835 793176470 818362646 744557445 362328757 579688953 128913700 470975658 415446709 637330955 848813456 526578219 796328110 284152349 685414026 255105513 709421867 597752037 537692904 94111916 287858317 792443005 417460521 599008039 144092227 354839918 572953716 107936498 537808037 414620578 101750170 417424275 172962872 101041520 980940818 964927341 539649190 931845270 851967226 911994578 726040516 992503608 436403226 614058750 163282062 211753699 744345824 86904083 137166885 378685325 968357223 391658774 164825813 472763026 674162025 979735291 188326159 776709563 32815439 690776474 12643442 335718959 21024555 481132982 663035584 640347529 256372145 828888824 858628834 38576835 257278786 851354352 443315185 558678340 792771300 894966297 332794401 382797785 775245128 418683091 736927193 334458292 57727430 275926630 672266405 495462774 582762328 78499844 874659382 20095013 47110060 692770761 990494059 402153002 91893260 881466802 225178946 229944415 547970675 540171948 324308971 745533182 13014653 739147654 971504564 884266159 910577266 718126586 381245470 121379706 686013509 958523816 650687177 299164635 54573705 986732317 990872704 465519016 823937916 36530375 212797497 239481646 266313226 875509759 229161996 888639508 411612864 424297988 124420671 597683317 593925335 240710919 978982459 593750473 478847786 697362194 237306260 752535543 920471877 436289826 898760967 999991372 985515603 809811478 560171378 145669759 148538925 466476475 538835175 63052714 98124372 657216445 74832278 596436823 92663532 532197048 978914011 623688815 442663369 485255471 112641079 825098824 993535325 773097094 379373654 599501728 346646474 805170708 744125455 233902492 551983574 494780945 843904345 72635084 881431026 945917082 897878104 681379360 464741685 222982334 211294296 696918010 188589149 554324843 720422093 92247836 489005265 186703483 169966161 651478453 705404320 882689966 451318696 326375002 134029444 998053294 86756029 862077702 969275612 221540110 341544866 607440419 788986541 165198660 460295060 431874938 924089764 733968310 732751350 68552514 657351711 350764713 93122901 753363736 433682456 824760398 70337118 264992512 433030711 550818243 630981874 584315499 586097356 518668290 791445268 358417707 808861393 798246141 123931117 474417277 434213601 628415100 9321168 142922758 171806277 144434496 750022717 34010326 976907243 527910374 550060752 211476066 597794155 5778937 617925211 389440389 811885573 346525419 801373386 171920260 686071713 925942032 563992384 557971215 746026445 221812401 524996347 953393465 714262719 452999921 517798504 811201153 920705111 923060963 988718618 154000331 541291294 239282819 140755406 193749858 319374147 936205231 808348516 334671360 325050779 285097264 993383403 735234497 291432102 481606587 861257362 435097895 125599629 276942567 646290358 590168611 70225693 197261363 584393180 379712774 276646095 372748810 533051055 846535058 752289728 801952448 273931774 298763242 483398587 852755339 389420235 149062557 656655404 292262797 149575730 271539868 763990317 192176334 287954052 863244872 686398072 274518338 552396850 156626023 474852987 287047104 673169112 307846178 858453825 650477325 524613177 850397970 460694913 536128204 876094783 486345267 535808924 362738322 45030653 303305962 60327579 620489432 209260465 507650052 54761257 321042432 364009404 533975737 157150369 266136402 176789162 600752545 576056831 304932865 486977070 652748230 255398122 530226723 200661796 226079635 470535863 557781949 752918158 807209948 294267734 812236212 709711001 713992418 313350763 350367452 19565463 642228553 276193853 156497646 480802050 200774941 587395256 902945165 902867584 348839635 573959798 987220287 118810842 931237960 62440374 626788468 100977924 956876739 947023198 85897357 707687195 34266865 871050751 499270339 369605471 839011303 568921294 7860547 674981695 480700960 200813229 704826396 752957003 352579973 520727329 379813963 452895038 670297952 411830619 558045111 692575998 707370347 450087215 287693583 541936532 827839165 369119777 239205665 418237749 248190174 348238932 211747706 438859069 374606013 23388569 418184350 169665322 55383982 334688872 270193142 788459951 675203693 260563680 639446738 274524568 675195424 989756870 151789420 651181285 611623764 27668367 269800422 986063287 473073921 246406474 974141254 50279769 941317504 706333116 286805123 927221569 111525273 610530381 467034481 577795078 740190584 251556359 977483731 863471217 762745781 989580453 814369874 872035432 541728329 308708231 671010687 403826688 557103003 952939184 778707669 399710325 62209400 782092756 441195445 37199657 750822423 581292360 129913959 810332840 463641875 172264716 22029595 41698726 705652338 14060998 729198316 627408380 342978467 568845255 15833309 324583856 481242232 873777157 185479891 539595757 678880816 209867038 183439011 328562178 161193587 24500316 772597509 330504816 142384712 375663278 576074904 774348246 274915626 997152681 719419114 557210114 819854323 938747534 881944936 238720743 616114153 194731332 282782318 105986462 59201466 907081560 893898300 735126380 420792954 140098310 476623867 860100797 59616936 902589483 211750076 191158305 413816616 427064651 273395322 262789463 35406920 711358104 977542933 993323071 456718013 823363820 937227607 71208935 928781986 370688194 223378414 590714241 909909630 239570243 598051960 307422057 821878849 544709950 823801970 863714337 425680957 369284139 150731850 880838997 188906542 664003367 813828172 244555993 340606014 206044156 479258039 304616359 578537974 848708120 986799015 18889955 193949005 963891091 884667432 733936343 113935774 131316264 549462827 951660534 110962357 372060740 441001863 774008287 802448311 578291190 202483201 985772625 70659645 428412401 888607294 472496184 845307204 977336471 133667797 893165227 343828528 583845614 57562425 231650272 291300819 962181545 623513297 421381694 479903069 568304667 137076192 284155215 247617901 714687299 403555741 920342215 224678150 571188426 428691996 589364606 234433178 108338689 741971301 926131322 138237178 586624731 10955355 960865769 285942886 715225338 305837010 403320856 860558723 59780773 236567939 868079238 798738012 638218699 735683342 136466134 928316778 840488197 311940863 616157651 197528199 487667343 667198916 235630705 590783993 622530896 772603579 631311560 155769196 542997468 371589918 538263840 583116024 384706406 605712156 153912033 539735577 225382606 96605895 587512223 87482036 339145118 536990482 536815126 658710551 88801024 395988196 981691176 356713462 329715409 205883909 122533091 904594287 474607756 682108453 129597301 201346569 509235291 873139164 93754942 722102957 882409482 181450159 144897727 237548211 730611732 620460805 123223460 462640856 637422742 8480049 664582081 701447235 481329752 920904809 608222992 294637950 741946824 585227472 326136244 310032257 948466689 512546161 974909691 399311527 788306877 439680314 965047380 721429942 834896487 60853255 170714206 859627740 660528909 561763222 611087320 160852141 987189605 10848916 186774195 940501288 517375697 122286481 162989310 53349040 397746518 327498756 312185332 442857748 56378021 517260114 996821756 922370699 284593939 40026051 555326111 235411629 513213601 964190087 995684239 306670466 630625268 884553654 196492712 935995001 633527649 536197973 711634670 669242215 19507161 581720139 477369484 453763461 811761660 292085352 501722580 677798013 541672727 119336552 147013445 506594139 127966225 633092844 448804222 774476691 999963783 826777466 468500045 491139584 420812215 508323720 144348579 216881647 950883206 619323244 301354653 465602566 880391558 304346472 424082556 218040669 912561134 335601831 51049390 890466929 906144925 683869751 403044550 567456295 855405593 956763154 669536127 521836749 557739152 795038746 32562106 191431961 129684702 422313754 12363909 71254821 919103358 749595587 955101968 870737784 950798235 345513386 940672442 280949760 589854720 359948372 597746951 742156562 517270566 814280233 724894365 132936810 797279534 905087354 264297555 483524656 549597917 57385859 395416867 412780527 447303843 121137506 742862384 60092829 382221463 359831329 528096198 216902294 627283576 966565554 179546715 770028193 709183152 228694764 801000837 926388969 601187147 788097172 977349898 466882311 950042368 126713683 608432085 456807412 490313267 1607351 539634425 309644056 431239141 68353337 688658609 217139518 665755336 200402238 345441122 881514400 981242419 489366028 155080340 299906775 788631335 101815000 938904575 985494502 78667592 535386038 69789304 578196289 982021097 952310956 159487752 219133880 297544958 320733859 389785047 821241226 394217001 514939495 911754042 401546591 643827119 167056311 774625450 699199806 736646014 934152240 496771532 893902753 150741043 379888736 947727212 430285412 483322887 720905397 791817340 779473357 427376101 925942409 380620054 801074054 59657304 539566875 747931520 566972330 445886110 362757272 836951332 547237808 597246353 132400399 54458772 902680451 923046587 322383738 4348815 619435116 494758729 564478139 661636595 146127395 369961234 511756441 181204687 672657857 140734360 404966601 174823508 512962256 408606979 449195999 872037857 599001661 926588700 200057441 520090356 902773080 156288096 677305268 293947452 936577765 139741421 252926766 345235595 542202886 478533512 725035781 511710685 694360393 292763301 785822043 271173717 701126561 170055511 458887481 949740861 582343533 993616991 378268560 620789256 367678322 474439459 403303484 855277397 657118687 844482739 760043770 791419874 502294343 684270277 866393208 802149791 740136361 144983227 367881539 864922269 630917990 868726939 221736660 36670997 417805394 706191379 719215761 541918574 559676575 284456316 481002177 898369331 152411623 698853077 941748115 330165270 222998068 753866437 453903393 502191602 156354289 308626330 163223404 132656331 425851892 134609484 90269537 607600586 849130105 928074620 785648078 712273478 990049833 364114031 761497964 630652601 819810826 213423125 538480351 553396677 553147801 259639812 827540397 396103988 610100656 273999231 171995977 318002430 988151698 126210153 534127627 500041275 165053425 481146965 433186357 414537772 709054942 101610871 337575665 861120834 641688025 87632815 272758609 494145549 577166023 60077957 362526539 184182342 907962610 999190824 313684162 805957589 407091988 3512176 557973120 716026307 582014278 935300827 512677173 955082560 450811408 119455889 769951868 84098732 731116897 56274785 173704149 93884555 316433288 813185730 964865961 265434244 932645960 464927189 799576649 568647276 273358274 481502302 707343598 727348543 207254921 23542735 522863293 149510687 14824845 555841597 995463099 804419928 603992365 305369962 333700057 117946718 65778220 5643195 863462386 630059979 157910461 253372225 893936843 89614434 246582129 759959217 945679364 575210001 623503940 85828716 621616950 726356967 640833439 315679609 739678426 729371170 719943757 325790343 51247949 942457125 650756485 578517741 429684698 667840634 752724448 672428458 483472818 796303318 576386664 276196456 596090608 715887122 521533320 282406514 334878100 467725364 839502358 552799682 302492808 136620134 179777616 320905206 952925341 422310138 570276057 475182934 671778186 720521071 237339072 635205074 571315445 328113509 854109560 284764672 499069281 337183142 107419107 416131615 638077253 364798760 23112001 408591127 93500918 606653957 829235522 446320503 986481848 646922882 251759613 229577335 215087539 374444552 231866601 183209204 718673656 938697258 417491443 773534838 348092802 519387558 177028705 662915120 350096944 465059166 870320620 798620148 540799182 77007197 942113204 117955397 183137547 940028372 982373689 3034185 378801537 322413603 19054443 558303438 775970992 616297929 52147615 291324749 140965893 491296627 741756562 883375587 180337867 766594548 810436456 216149851 932897600 106082121 607234737 33176608 471336837 193424275 828219233 745498444 368055458 338441244 594394067 145801118 183054729 802050141 118650064 75800189 145139218 237523178 252912259 501541623 992016896 368137867 49673089 351896260 474488314 367806248 384854473 895087941 685280405 646032088 395998142 585625216 326430534 760015063 482939695 245658146 450879857 654214274 169378896 512253574 897522525 237868649 240730817 65994152 942300989 803847996 471483525 679167026 320960555 356732125 689068808 387054195 884444455 385851719 314347553 692647777 559723545 180505002 816106766 760573338 723081940 52278616 719327090 744733801 482500624 441693388 409033308 346389688 290124401 317461674 624338753 724150307 385790335 853619390 625378558 87183334 746583209 878085882 566516440 624131053 702788681 433026169 316951932 986914242 607725218 378392703 410099712 292922782 535480028 170341749 611643106 356138849 917370378 482056178 796772100 740234131 770398242 739465135 639329976 740303968 482161416 120069774 833874094 380172451 68909444 20092831 713080073 811877080 721498184 551125009 534677579 559497256 199022831 615504449 537690718 727278434 81892084 37543598 974488478 473335806 120085190 461525259 375226308 995914522 217719990 831371046 937974007 614457470 926739963 115749883 667646147 72180635 214083511 274931375 64895773 85972611 906500083 626574730 889525603 41319163 755690657 898119939 32185690 614141287 954120857 776331441 867278385 382817750 343972510 411362906 17892730 16636672 58401881 252155627 839564341 40290630 294633305 403330420 999113158 143354286 286598683 450630195 596831994 589071078 522866938 226777990 220697862 929745479 603021126 270654719 603778698 514974417 99186223 705097292 629983368 726496807 511945674 650019916 469791089 363208092 871420958 432512001 138348053 592848167 903595024 860250518 113465525 158441572 591622258 651736924 432186868 65059233 303307518 155527378 469526497 429182663 477479766 224189850 167879920 657938031 372080131 578131582 768806144 968463575 274498933 177017973 163119703 68671723 798355205 548472725 880751775 694109492 982641141 211248162 388695532 807827695 434021999 645016459 582193090 925599990 288149122 532693345 951334913 805887188 962471722 633327199 889360886 439558070 626450248 434226024 485385049 377278838 116483236 946808969 295449927 790821266 258873583 199271924 279852354 23109678 648187074 591531268 888036922 872503071 968498849 483298623 18975621 999306456 747423219 433701706 585774047 617388410 313431049 406978046 639356523 924031434 529843485 756931925 979924922 530349629 768671568 202897777 813397696 153491427 513119659 733845919 89804251 282500990 162184480 633549647 794042829 148439161 194014089 41190689 386907847 792205277 25539237 735034835 107355482 915436900 167443743 873133908 59031433 266247793 528414086 781514167 266347957 952164101 105151830 530343478 865265068 822110930 11105774 11905076 700910500 211992624 812184986 191472190 658602812 634982175 899696264 212686085 940797557 885887555 165058004 22666854 829763775 825501164 606532735 878530148 331761646 880846101 685511790 494709289 907394370 775456345 40301944 752590602 135897181 401830145 221121621 828425089 341414991 104625149 850237860 648731698 103477896 175629536 653592814 573885672 998141932 124623089 540350375 423454100 698737085 684798479 256631334 128858967 563541160 589877710 92482734 467112303 358560706 624926311 999915112 147270729 640905098 526328757 83805794 984439926 92184805 797080126 477756571 307494326 644329500 170091063 108037358 82041323 534169066 797185652 526660651 802720285 377411691 615925109 1501436 962104192 48649763 88985183 756888833 230907507 676594430 360156676 985277876 603629941 455411028 8584155 575965575 132624947 678613729 651903233 646322372 796620926 567136201 385403200 69055654 134808918 322372507 523235844 485855312 63813596 558308941 347748200 12537293 826115162 588882745 34670891 753042184 620170565 164093478 712504753 947282655 223362102 436398659 863579403 79256082 331974389 961283876 412339696 965248074 567892583 140478917 613127360 88861467 530686371 318162316 405456002 148823291 758454498 494769479 274309607 18905163 522372234 246042666 696014913 588564052 101300772 940745428 208951444 915292746 855727972 409727050 116016262 210794565 642819878 480218358 364101989 531227207 696863855 698357682 141613866 337340727 29619556 95410361 954913140 750135784 225374815 205064367 937813641 548418066 869151959 164286883 230024792 659398489 517346928 586623496 708711805 369371203 812962809 325702078 345316913 833232707 161565791 382168842 52802397 940985266 135582659 17826713 196270482 145628880 726537827 480315775 307120647 787900617 397607855 50670651 50141592 980566445 677766966 164883375 8779728 130512499 997188535 584138541 115275743 333010942 750193170 758982756 701688729 328217113 948775510 326797944 978257535 170490482 975982261 707370731 844683958 228998052 45281926 533430442 49586193 902816307 241256786 896916746 678496517 909547907 50684867 658184906 116040113 393546982 994960552 264190223 25046748 827416217 247041536 410996836 975614710 211368634 779476465 230581185 6381336 792825429 478601663 735442816 176107007 800249944 420972771 264358505 307467027 134471839 919699958 271924905 431852899 274344168 175534013 491792597 184753316 161441760 185989665 598945001 449592891 99518998 925474101 440726348 735913514 955671814 522520631 144201675 87434787 737500684 294283398 864060057 33704059 603459446 495415986 524687190 520649523 753396596 182898028 970555399 208197872 452997918 239987344 56536086 784836103 550298998 806976545 534968668 369892712 130402406 138259273 806951191 371615670 149155775 123486044 123652840 647744568 994055737 600041685 746076639 450824159 159535223 64045657 677442417 169237055 569595393 57629617 389219450 453728408 720447046 275153 823528002 280101074 924655525 486405332 156789618 106391164 867145306 280361727 692954917 760804302 657353107 239960509 881173458 575757990 45835869 707422109 790184035 716827533 117207218 167874654 751525667 771164334 461179744 887476709 510592711 78478566 418888814 50728249 559861103 637679792 864127825 666188176 490490266 299895094 723070642 316772677 605709119 737397573 53577238 815389912 889869482 763958870 502482405 566591993 252253597 28276105 919466608 356375673 242048573 493585057 514474738 417049427 20016660 589233425 584523916 360401322 995413277 70224110 891984197 205565900 630112430 169386491 124247312 633570856 518755477 841520797 325301446 234192988 28621303 82415840 816258343 47879212 58870382 233376641 561177055 329511041 214527221 678898909 658131068 686700656 933164786 786193401 774689146 668412979 704472885 216377222 649137464 282959404 183140079 593738459 153999104 125696488 383585470 851220729 715725318 559350045 861975467 965367173 407949921 864917665 810611230 407784911 169582607 231492987 212387057 577315791 74817023 402202581 481703005 142455075 103887102 548502016 636853513 912360979 82380487 888220027 641392901 911039628 189692154 318981609 613067969 580159274 717264420 251440656 299975199 7083048 882694323 929929451 605212001 1238640 507939328 235321489 793659956 132012687 979027276 438229316 712071345 406693822 592411332 429570160 598824018 277184219 761411191 995175853 631920895 955894127 433845083 251925423 211288065 5853351 576660564 963888990 850355473 21009498 61916462 548567236 711217483 662966795 623712662 953908245 18733109 386436572 50293287 508919977 654095033 543420322 401189730 517901831 213386800 569473489 997623985 988441305 878773590 717508231 586744676 756756466 551865681 117004429 35207093 399452493 570908845 534286930 808903109 532793615 105520736 630175471 423069855 742607489 679249095 241254687 108102961 207765783 372575399 950944846 517507413 216030572 542488621 640416137 218032334 540875845 530632175 982853252 432133189 813462922 83596778 431254180 795353672 460740947 979789443 118617582 805034070 541605591 279586183 547880464 563221452 807823739 921989420 469733732 206201589 36775369 909918992 811811302 490656256 899481717 592325430 493414465 396875272 309589850 568674574 759648961 385373199 907292285 723123307 185285213 122587135 208891145 561076363 254550965 637937572 494413388 797160211 577768979 263804348 103428299 893321488 31215714 643701481 209993503 895006712 965642300 57859761 606604059 283060392 116779233 399385734 955299500 61631591 137764404 481527490 572558579 361193438 506660299 549125545 478267185 653817895 137652182 581473887 895434702 606367162 926282297 921940470 896944483 669381505 160628089 48573034 981246375 741758408 240240070 61392796 571283071 139264834 309396472 439828564 468496630 855893009 312190092 107843909 510530113 49914548 198376620 625838084 787330742 965387549 224369447 351541783 245811421 929654175 737896306 368687076 109620832 688062968 275295406 406533054 772486418 674728526 324795554 140202207 694620144 962464303 628399804 753011815 839203354 107231116 867835156 508804702 695077341 501548996 962634605 33152182 666703276 93650592 837421094 67551821 480901413 818936650 631151959 198737373 995837956 53122903 710799793 998934803 564230460 660087751 44858775 944184702 169334748 759791099 554780684 657312155 475568674 136309443 892390340 469588934 469824110 299909458 172605972 102753102 769122895 864273482 1906685 870928738 925131637 393956011 619401508 564017179 116251325 251938023 950674648 887509368 206152489 415058383 102412562 853048421 84259043 718402465 547175793 273660339 874737218 328358661 42808379 265506075 930003649 582070788 370732385 418969151 700297726 501259032 419462520 848654245 765775051 976862236 637295296 80380355 932898838 328650580 677961762 752590319 534128638 653474417 433369644 462351210 568755397 900226946 600986647 88404063 417608660 62125578 80789694 643960542 715284162 36400621 114441643 600419810 156192326 673011319 368807439 940213324 73554760 259997533 298948541 930714083 901404113 656053693 682017334 869487194 383728659 308996381 511791012 837638729 97119082 960531049 31014868 351752754 190331228 384812278 189297469 708125057 703230096 640244610 743878140 397323139 339666908 581021492 571625694 227717232 275411259 621115030 466168398 918027888 109729997 924837024 935886692 65556614 967106019 910858668 438421217 513163175 466612203 372214403 541294632 870492075 691236226 213540689 980585549 503613010 803013999 842447528 188067588 479303239 71819670 432797323 932111278 880599067 609446417 926594906 465998419 694351174 82216982 353474789 462523040 897357610 150545164 437823841 708012270 813053969 9233276 606425195 700807482 275175979 206868509 588994057 63280174 577151122 959482565 936846756 228437528 556804168 123657595 737146649 766695409 27540276 641518439 117130143 601175637 271387946 213992926 953013471 872200843 220085984 255412575 525485538 706132870 886792443 941244038 125553184 667829979 60113154 50327842 13960823 258693065 286115943 903608617 174529066 187567672 778943873 923500464 383599083 905704886 881068181 588258304 643068617 146347134 461707977 489510530 171335491 504309867 347821361 596962248 430538305 692200967 538763202 475623310 877825548 898204031 784696931 487025594 745568095 621569963 190800857 252020053 43443795 588095240 998011094 901062542 137386348 854940356 327801078 785979593 946343068 210750376 590687159 307185026 977873461 283642159 688409987 558231401 308188660 347262068 174880428 565210188 260108801 876946243 969763434 108706092 671765479 631281417 410687969 281265961 7326619 607396827 692759830 743528079 223811709 597042557 170749950 996804561 619500108 608948818 599214963 735189643 592947773 674567788 586505264 871904382 890072032 678742656 877073893 407933080 907310135 183719152 133614110 365011946 677150368 643765443 597922138 652937394 113314286 334344869 343954935 644319570 495971158 37630446 974507837 846934356 505406324 296657824 756962908 892505709 574279500 496370019 157267317 144515446 384761677 834124418 994727553 330411893 262629453 283209974 435762796 51477138 553656453 268652639 868666376 656740133 152346783 935129860 305827599 290755236 99177638 602095316 473256737 580839604 477718801 447202406 923652294 493494308 200998330 183918073 57151090 820304866 570007787 160473206 74631548 288386060 344581707 476675179 443037991 811962596 972103669 518089486 234908058 266708440 715829091 968367425 536527593 806217335 164294268 426059913 445142538 988259201 242001549 237692437 994022882 548845522 710038857 844097471 173418552 331421054 339002831 855497988 196627645 466891442 834600868 797831178 172472331 982001356 764813753 915090084 699468451 735711057 91431772 317334344 432490479 221252838 655466830 311348756 934168894 487605348 721221815 764740558 976468685 445854662 255354401 604016361 781493946 518000941 678196862 737095290 459907089 310012898 371295282 831608640 319810495 219937118 79207424 664664227 806865312 496443961 712690707 569931187 834924918 31401783 428353795 521042468 700785643 566745152 946773707 135419739 95868812 733398383 844434896 908652888 502532054 467112950 170002914 115634641 136538152 966752062 306016052 189738265 951886543 637694931 888290660 815240497 46075383 807755365 195279481 953198271 789009597 948008654 273042908 44709907 335386656 590255895 998446439 627193893 887626253 342024806 434113107 23665555 691207761 838923793 798349385 985250212 977781156 851288723 586339411 960078153 137703599 2983052 291837416 194873880 434206962 327869901 979071463 990219603 205781479 239334469 366495632 45837018 994790879 294654735 110755733 121041988 533792544 497711985 804906250 702519751 835207380 627172309 703333995 980035388 666196491 451499215 585098399 349691699 70297274 299662361 963847667 219793876 287618763 477758869 978062106 339645436 359194878 434470480 502024757 678465575 455792651 774496639 555836359 3430267 300056969 505415034 691564477 941471434 470068473 850076358 820177515 717261707 62437058 296961806 617249171 762394330 237230395 34741799 743412564 383140996 532742550 669921033 382124352 153229298 614647549 459693783 638909771 40216385 641089393 600822753 718580947 68314156 394555111 860918421 117063579 300039452 363137593 656264337 19243216 642761761 335951397 869772183 985655819 86026737 631943257 115089042 39133254 561137898 521054816 379841176 564828905 100383254 732976314 603215842 329901245 558144548 971601861 866326229 481628411 576775273 446227656 601597176 381856318 483685351 507230968 387825668 123902348 599529027 291647087 327599313 793134932 993087178 535086888 812367968 863703659 690122618 682681362 328842979 567383818 611529198 213282814 836659878 571996635 421453932 796932258 264810792 367537896 700758247 65094051 669127181 478998184 588582389 317980553 414442012 751218425 288375251 413330626 500384335 28834847 281224040 190908074 103259835 695223750 962946377 244457602 889907111 597302790 319883943 506049141 811535483 607594586 3093603 685665426 7000781 843339946 315850757 348342738 425507160 323096640 399774396 383347992 315767039 784506580 407222881 465607213 331667915 230812034 149198961 199936192 73315827 594267087 886001938 133252973 837228752 579565735 461769751 496456373 609090021 883531618 847638004 211048959 156729310 639911612 229578443 644408476 185702799 434124251 145577824 879686856 780176627 308548424 575588901 519012517 793531434 345819134 373022256 501100856 900213893 133727321 168353344 948619127 158636914 291000604 432842174 607918902 370798990 548478582 740127160 801804859 835308958 520139517 698382308 239706925 722139021 919317675 249632164 538092190 272941420 919264743 599362300 195441159 8097398 843545215 415656864 504025286 962097171 214513320 659705315 227599659 394308297 451305983 236050884 430527331 294468940 97731720 433764332 555739271 622416761 111846324 805760684 570276761 469480275 611345748 164343033 490502274 155012612 72600744 519132017 775796500 226487522 742977363 485815133 250332681 625069671 320855140 431405997 453000705 177643826 496074065 68041719 184312965 966317335 485641972 114680698 141896965 325453825 482545300 890690591 573779420 490743055 252145888 926095731 73153869 353298306 864016618 94685615 214613119 82319304 589530421 587570864 446557314 252405877 225879710 346185984 83108179 809655617 774296440 474748108 969509073 585578511 946176119 271733487 608776131 918448622 622787511 720027106 389891294 883632655 389195711 722574547 228426171 118340812 945615482 653522058 644028888 684858027 943207488 750918790 929350562 939517271 901307086 962566112 313320808 389868704 491638854 319826533 205557858 87476100 699123770 415053182 727087031 783811367 79460507 272410438 757605737 413408209 979429577 816453501 868070766 53980665 290015879 358223496 607711390 593778999 847341829 768983670 671387579 374025550 498092501 715638272 795885162 629728047 578277366 607717764 107271234 638589414 523161294 455333900 396466618 308081075 492124458 664255042 638407987 145606390 589847614 882626435 171253239 776230207 580136105 156528330 201386292 688354364 3492206 825664448 328002825 741989578 551218940 696236981 60621169 939541486 317436455 367991454 120490330 700192208 890751278 214170141 918912916 905499846 791879860 176224374 820390359 836953165 412710088 667931035 254298054 803431427 405086689 192905251 364774376 285386935 855176663 257549386 824148145 200919386 925804787 6316285 973623160 171934216 664899810 525893829 845781888 32210183 897257401 813509343 693104881 645605310 96208629 240202788 53093853 914038211 882790009 33155619 288912186 374484433 272522647 855536132 91687406 591869640 519259649 844741539 860261314 385127609 822906581 451678845 470792293 41765843 637519767 421856953 935722094 2809202 500908855 930123304 929993317 745081114 943986440 448174912 599225772 652532599 270363592 273170465 160652699 156851545 992956573 688119697 262814308 67526846 686623763 162496001 726227502 931166152 548661535 246362247 110820867 284668868 821683744 290678752 937244879 762583591 685900248 629100921 419854444 633314181 941598330 156568668 990666913 322532521 612518039 99137605 957372944 301647225 374450731 697305230 701803343 637264905 867199391 917062466 4880342 946655126 210555580 314304014 638761734 579994501 90974141 447712589 401339177 132256861 781743675 87451896 711506543 587919059 443770426 498272189 606313969 738104515 178462506 511895525 466058931 823278640 900915939 669234796 51556506 42784836 674098844 486810095 339878779 971726932 778080766 615164854 206027788 290776283 166401559 493219504 134985971 728111227 753589337 164297845 742333876 173278975 834486691 640464451 452368325 355208285 119010107 415962113 857781626 135588781 598182349 966731585 342995226 850541618 347617900 486814263 909073355 259045469 450778525 955001539 333300380 562432698 528755773 198364524 532225418 111706888 606890652 35442788 56351862 581303594 31302003 211977857 40078889 586563115 587365592 354058303 304559442 503011647 62648152 814686920 757029773 155282623 883803355 489471724 874068056 470243121 114604982 238578723 892128800 489676349 757551530 124400008 230046004 867588027 504375002 407679717 861648590 189170337 650052306 878780330 97742352 373591060 995983243 123756012 832562947 888636003 831701599 324737390 41825686 31247869 62780180 415009426 948806820 125666940 368085207 500587373 11647726 386505641 866600766 183840944 56600095 954215529 990700359 677717185 898642884 175130068 215780437 303678112 478770778 918125091 506585398 676797698 917277248 170318779 444520738 531234108 68862658 942091810 677754035 541933135 436304145 630134035 897921263 135923166 483940163 573722980 865319490 896669503 779166042 847793690 944618885 24990818 952766016 237892448 666565875 988409066 534172362 433687433 169801008 519142687 502551210 519731216 493051467 138030830 396749193 90354329 745498296 493078257 673031658 612909551 324026452 630502755 321148480 739835653 223870824 126091567 552766950 317788151 395580829 764173027 443918364 760037639 753756426 238354870 844252429 932375968 492733229 930957958 127679684 194119512 613018600 242377439 470390851 320719592 878136461 990395885 108154982 982651701 961229 26216836 915533558 732745287 88669638 335917864 187087272 50308179 55650048 534414080 310717712 490234548 235577703 945192664 396053940 287263470 266353742 560824108 289728764 942122924 764930164 430832151 513117240 843629507 12199166 89933922 76969376 35773738 427651709 410778749 576256859 655360520 640924127 183909245 527901803 879766438 642192775 484908579 768706503 530820984 144885303 442736597 508198722 351926813 723356701 749082019 114044581 200938064 550493137 157681988 230186131 127251458 998021450 764399129 737338272 784412487 777857780 193583654 668710215 923382103 700024986 207590686 826454244 103160726 835533425 367023446 11795140 481649299 838796308 219367628 57985819 379028218 892899211 314955818 116401403 81691822 629727810 8747967 643885419 142836140 704312336 718480512 932497489 948539685 173164080 521963279 204681601 39557222 585908809 900087982 620753841 620765167 161035111 271446100 63435654 175676001 250130688 433118099 645203591 565399945 946070513 319745450 63537701 799208279 144184702 98435716 943887547 790846699 831301206 744068013 612765318 473941893 773480335 355508062 835336372 388696975 48227237 794974581 9576022 161446814 909311357 25989242 971240802 250638704 610083171 69254810 360643004 365504229 606270990 156575922 660723759 158599945 579995036 725502779 530682727 885057295 624040592 316386144 505477887 905615697 43776219 745741806 978515064 644882517 434226381 440230495 802499137 369291716 905391142 348174286 999784610 705993075 651256077 781551622 520774362 192876125 334091021 133176439 912020491 137980835 37883931 667298098 852862525 972062610 241923477 802153470 243308892 335551134 60770625 456715071 167577675 49990755 534142026 199544578 703740354 859822753 102735432 342090753 999837041 831690820 702786103 279246491 479910631 42508387 117002109 945099222 495942299 223172403 273450212 543549539 737429233 357345565 701381030 453457815 435737904 710700456 144241757 721011826 354082444 307612810 491651601 324729503 353581340 827050654 363448106 632042344 65965795 862989031 278639746 603600070 939470537 644505998 869405782 51145817 322843551 19859690 473219914 73505384 987429663 345309300 17139564 189775073 794578154 116062160 553045297 436556381 518715275 892636105 939272309 962456858 743546736 101848400 176024444 94224899 554463220 763311748 229785081 481505696 481511001 332316584 671251964 709263663 693596870 902679077 298852613 788998026 214997838 952309647 46427894 569851452 233601259 978908320 519444769 753689203 188245629 941952063 358040889 646339079 627232716 904885362 842293336 639327348 113224330 446368115 682229256 707500519 306229588 668818583 100919605 884844075 434807974 388462946 296022834 922021817 661193707 796651652 413611200 34029740 567688821 716824268 27594499 573341650 889908349 761569847 221605508 479040918 188468772 649489639 967359039 255800082 26919541 210557992 191736973 601283843 333552732 332265325 779608114 776705742 110131128 593545042 87401313 961083785 102207048 86983832 400704169 201918692 862279863 881324335 777967115 771108933 381544851 332748581 980570093 705500077 942456919 996948407 701370391 705635535 870031458 783157323 919774917 295262208 993137154 813368166 12400014 884733250 387243364 926536131 795687548 535513402 458316709 516209977 44184314 5355064 242130371 717351369 909494494 680679733 241213865 523110562 354199909 272165580 127757094 943747865 10094132 940771913 306139383 427653027 474956889 567397015 183993273 420539112 494622536 998918481 157073143 356381360 213778398 947970994 916400165 898076914 58064739 769704870 116796824 409132233 235513474 152309435 788751763 846787957 171458129 642757926 705770305 102618466 634021197 813082823 643505072 69645604 926439002 4145191 588459738 661346936 174163401 367730546 92483237 636763968 255624778 576151426 514072530 795632774 566355966 843594968 497265432 711430527 521837416 517558935 770270736 929171586 504504953 531830160 431500858 495767579 163311491 158692155 906781182 399327212 25547842 827766965 682706864 69845452 545084641 640654278 708753545 845119161 990716134 699700705 633316262 595035091 365765195 611414296 81268501 999317860 948140650 680831279 566390468 50425315 872839950 722038921 113170321 522634985 600269663 381678902 219906102 184862265 959444210 285186544 238048357 192283841 212810952 125482260 210346918 963128209 632329282 581847978 631886971 292541669 612021810 476718690 204529982 903506719 118180299 823499920 774246204 930892239 170322854 988980536 845124518 484597411 271677648 311120892 917490326 256035449 984742834 163154993 891814410 569397845 262543137 290528714 936559344 100034142 725610843 152487526 596500500 162208493 792773381 526969937 215547700 215280504 566098477 115985269 258099694 615435175 691222857 744707178 444612812 148846147 305152050 980560756 876808256 212516924 529265459 359462261 51529635 149069234 102567925 833410301 448995383 326632168 845261966 594346822 112525859 938185545 28778620 553158956 566873465 82649189 417055654 158515768 416386866 992539896 76875094 18407323 664928306 104574953 700442436 712431401 957618752 651154241 320562826 712908899 310557454 365459251 341380786 78351726 218109239 76790040 767584933 221430812 564926775 170350201 990467001 161733861 459735162 557212666 107981484 960071141 297410643 377861751 617538725 844128228 586539259 601061859 19257902 542045523 388360335 505521254 624923711 827616073 259853852 792027977 179980594 183505027 989227156 823921152 743487441 657690731 294775246 4057384 59150917 560673806 421608335 35403138 202266914 43215140 993014907 133742841 423416941 652761358 957782820 578146723 537908866 631953361 907836167 26162873 326087989 682988316 988989826 881679772 405694136 344358219 596686560 437014748 884000425 250214486 631210320 849129771 134405901 216779497 861134318 55529571 592911184 834923347 465035194 136605318 556767564 680268937 392820895 687787203 124716600 520767275 803869802 286530153 577184702 42026625 861282266 300981751 589494507 695086458 848945034 552904718 765382958 820279726 568796937 311791226 51673452 226168412 59994564 622048046 291833065 385088875 227520022 950182214 816022094 930988137 133557825 261727237 962985139 774018958 149754731 602097109 43804309 961274555 510364840 985622858 608938712 671764595 110497778 25970208 470864845 175754474 306682155 583155771 974447655 816782069 190834968 186501282 823255041 221234452 417768557 102067341 306521570 993611374 814359746 323472983 477105081 212627920 104761242 508930687 665118681 30946487 409595231 860110002 819421694 492692027 234018910 304872135 318897747 368177704 678621653 591022516 212706910 843598828 329612001 569504 771930651 507684766 208275854 143208919 640674018 666369279 700490189 877549511 627038331 966282357 919513640 499622926 551455248 716665868 379663437 550522994 480600380 61708929 18399991 296832987 501009144 101528622 667847177 917799260 209031338 941815840 866130426 733242677 805485343 783000321 711271213 674093507 922577807 940175914 24410859 851501714 138230419 265224861 164299874 874776410 715545905 538888188 532747696 23776499 440747993 955873178 874269908 870835808 333381470 96725871 347335863 635831246 182712831 717037846 612967466 788162959 159323232 690919643 794392297 319769884 632038542 72886441 151889041 572721695 184909567 492820249 789131693 856144730 46581648 497412716 392396462 376310729 919604359 964593031 732534513 505698178 439980431 581499130 261525426 980890312 692939968 376403455 418233629 778388235 926952853 885932398 431708995 608929754 599678452 113240790 2911514 414139889 603401517 392290147 817422219 852123701 300380400 747532522 375010391 420642988 301586012 762029806 417027379 963154321 429564155 789199252 926594744 301675578 166136244 171092654 900631399 363702316 58477535 794417841 237012649 623235603 350228536 608892346 211510737 45424833 811372520 792056981 497576727 549628975 363918713 937445294 357744283 825557125 281137118 977711647 554687335 76992267 697004409 740217506 448601709 401441588 761390860 126407845 795270533 338015135 753992391 589420851 253869170 290932491 344587581 958327301 659800541 964961636 724430444 217124473 607007318 947118784 392419513 728052887 92370263 808553048 166744562 937854476 818506305 688633230 839369805 469443381 810019677 959760115 337131875 927664651 949478621 914210099 633604927 677894457 349548504 711604781 66638153 335211787 163605333 18588642 27689306 264896636 787847991 491485057 942585005 463167529 284099920 389821019 744028393 582060891 561283166 391197931 407681306 524295422 57341180 511317460 193589430 799639213 497418936 153991908 945711260 838385572 950002435 148547082 668252172 263754188 803070516 404955749 649922489 702002871 846999181 551223607 551896756 358724247 403382071 95541481 732871036 252846412 11552067 737723409 898722041 921701729 78553258 887038057 683561330 293090563 925971793 702372820 491066272 417561351 557583357 728567649 630101410 346190832 83127136 127672892 399511035 862778596 877072660 755985096 133118105 786233523 235385498 659893635 634233806 748412115 311181404 380751386 281463644 24400483 66783914 494561376 27881829 360458537 710117568 625520976 203455352 855313561 817195451 901944337 560767883 612312260 849541542 137447654 919943416 369945966 382819444 887587915 525433735 386034431 231317244 654538196 145092197 558602626 759874049 856351563 272488230 895178672 297199402 994194838 158227656 989031915 624828939 786886091 737171633 406302516 445023002 943386149 637059500 931979329 716211901 84138756 656371953 636092516 392192567 471175161 22734621 152664736 845353151 879272626 803849010 525221018 712679530 521652748 173237664 578700197 208364349 159720716 637348669 867305394 781676063 359663068 679239237 42729061 455814624 904576208 695824730 330519555 26416188 78069601 888654480 651966076 819023058 351080245 451450967 709966951 858017838 316389141 159855758 829276165 719118014 455591413 245976442 915226171 133767646 622685680 679713994 179956632 61915855 800440650 963654288 902079831 305318329 912591727 761064013 13727312 704670893 463535598 441549283 64537618 603014818 465148808 822863008 645967305 750692481 927036190 180500026 536986957 724242955 250460858 174083536 505647643 676049654 473562769 683604194 525103709 789982171 90878972 170373730 624465886 202906935 898337408 19528612 638126365 41706617 673644234 636104550 405626417 755542255 778386344 399679691 71765990 160307922 71051546 939192928 926548650 556421188 18750275 585919775 559241108 35909711 798648171 955108702 703722340 712461284 811389193 480335339 688074624 71204570 810220213 571325674 593446137 819364087 827031858 839735542 946709381 465469665 462556785 473669645 366453378 894891814 663302782 408796816 941923835 101499206 610047640 537986127 302674332 640521887 812580898 425695102 330272191 57481594 250193831 626707389 742153822 617834505 958676954 248508686 224031783 906554211 486322839 318949600 506869092 885937292 479819233 754621702 346058512 365134701 82744544 858213058 660737991 855338966 885157613 779043253 233640659 358132867 907083903 494377708 557124898 275126800 142914620 652699615 203281482 167583243 585353709 393487723 973222797 527075811 366534534 402551507 549106897 628248562 131271715 424922821 572841891 954637432 584988423 461235286 10415678 388672672 481807004 928922119 196609662 236516733 242753911 437804214 900078828 332900612 836377936 76556985 512448441 288764697 451027984 54041789 930729401 147854978 380098749 766337765 979702636 811423220 416844429 254952372 428161019 684833030 592770522 6426390 985494069 108254524 943350057 355654500 426606991 768025340 750239776 307185753 839979304 360446105 612918426 948858905 479221963 828272973 82268045 7162418 68560354 978221622 482739742 556898971 664963722 868584289 594212504 789998767 224854144 236587709 590367087 779609141 224169514 83812642 41999931 620531800 64737687 952052564 730618053 291682480 432328576 375019261 712206321 187981369 142593605 12080556 949280472 166655576 900324075 281880027 568325556 541864923 939082273 315637227 696501991 49858036 398151999 290124580 316324861 768956742 229090116 317064891 609856682 397152467 980324826 38604485 70724038 567223561 685588557 214361925 617445979 704067771 690723991 4814117 530134668 476450857 913082963 956917557 375679666 217186294 385874891 51868464 368835140 141785648 548236527 557866677 152972010 488679246 369962580 213916751 992201069 704123693 746639932 701460079 853424321 869073936 322620812 527773804 937789183 271100326 168416470 809689483 361018987 696811522 731682636 743353331 418118768 449021094 496673748 576989109 777892004 11556723 835933168 724584908 817332673 821439415 45583057 387299606 920090793 456427303 631013967 407424864 277342056 919313122 217599463 839223898 500666417 403624045 736000451 322813085 669242974 93878962 165646257 348932777 543376246 956392714 515908137 299014120 616529441 440750642 57913159 672009132 654790962 85268301 470656982 539750958 318669478 611157226 615991877 809545102 605929122 120379391 549084587 965293273 688276589 537972454 70237892 796243707 197312380 8207462 41811707 788737488 393436778 120135854 42526559 113886491 876454396 681294416 473204133 570128258 565457434 364857676 438265644 955546008 371423451 14146566 106183169 516152022 556966264 705846860 823992269 724517021 171706196 692740178 61025512 850372919 894465788 728831929 493622099 148762837 87761187 735986303 62932406 559925389 310364577 35201047 605937246 135415653 287210621 543430740 129807428 57972548 249338593 122556022 897992199 92391420 321707550 163245087 143958252 469759558 516785333 955766879 150928868 563796674 775285058 845816999 181982856 668843773 237927831 494173656 162039316 890237538 671648675 410064183 569418355 993025873 466956928 412230513 164583729 9181190 243754358 408565144 817061509 284546477 178477294 281364014 865292881 59165526 376440700 260667415 98789659 177696508 53835480 326823836 411613457 961134206 554065131 783757689 724615434 591180455 576800443 14009287 97112457 926353960 797220220 206965005 586015155 419796120 79245708 172235063 475950164 833995132 382203245 368265371 185157867 894026043 225964745 873030388 740563599 300064807 551578997 579399274 959078154 136037241 83962986 491649674 671420366 691422800 808015052 558309707 580246257 105299129 474466025 524727301 560041520 351899299 855660851 573623937 36194805 142629097 604131651 938317290 597385804 176401995 590568156 928514010 264635377 570097776 278702828 84780872 430405439 646388463 503559814 9799583 643453759 386010170 413291493 677101479 522232990 850681528 784690539 847984280 16851640 576546736 493230754 973920017 875442315 534475349 505995072 388750357 300951993 496358591 41348130 387246607 854146454 90374383 435539014 53713880 190116890 740284876 344569818 96407980 224184033 322543146 127053106 229382193 450499125 918084548 949188554 738594162 439730690 363875897 89450818 856837606 800544483 105401872 223781479 109026155 634237204 181374399 60449324 190468164 260855680 42969755 339091628 624784417 129785011 553960 197280811 434864405 780327909 180857294 942234645 30952606 980350967 107816030 292530682 779206816 665128556 30868117 29961881 175418989 610105977 655419213 731686100 483499443 104586224 562919510 927440053 299976597 214995029 83755357 386208369 409981332 346251211 655379710 2384225 423667362 823029795 803287480 856915211 771563025 143454165 111022326 528897049 62041247 759869182 400506377 601023837 391554416 891706984 526085931 854858965 207201557 45104769 819230329 94842528 557717119 748361825 230286080 286334990 160531980 819890372 394402227 533024400 904725634 889961239 341246567 580044480 12010512 200552549 19227872 340424549 803072842 495156324 339567558 340218471 573675564 462651000 878367659 213845465 575799583 126846628 893634055 133450488 897674219 231887003 705325628 763616550 919893190 509544626 855352469 697967856 921699154 854450921 51325758 656061705 245373840 286829029 175232342 352615754 571612911 761786873 103478238 545297337 209497410 6174232 748028602 418272638 639358411 703230180 925490115 558258673 897884202 952708005 201046955 647297417 859345262 936530249 32637204 593395945 439483662 369983846 348541324 631269855 68131814 772484415 93798530 880614495 938338106 75284662 744647247 790098303 203217338 842093407 269467955 845641865 820592251 469711213 946813528 541854691 930598903 365859522 631392977 564251682 263691028 672174055 635276948 648937218 782198819 962344200 224320388 755599973 773073876 650125564 354886764 213741913 415960650 237680198 448707579 705544973 793228293 237593608 332109770 209751518 137380087 648853270 469484380 9490512 279830897 566903526 719206682 123651600 377145649 280112789 708425557 41481454 570306142 669969901 882680133 692023782 494202500 245947994 11977739 40329244 362575771 175334390 965004722 498020314 49918203 868232833 405370410 830611861 252920943 142492254 238561359 572476136 79670047 322900387 667778271 881657237 932641957 107301633 287628675 810051720 714515448 164959449 299827150 747342549 300041860 269439027 793425466 42364084 450843413 663786431 890139943 309645964 684709596 867694290 298295775 447031785 186923130 447532654 560668560 607222904 833320181 155198521 729705049 792928540 811402934 345516416 210072630 903026898 248228502 702279742 806729234 399403467 482876625 426996240 737459904 121523796 460022283 131939644 417692665 146194415 816724052 901023670 408953178 761059896 227225630 463100945 46984049 401516544 475068746 869746831 56754862 117047863 123814426 38314514 304793192 712759547 393247804 920437553 417242596 582530189 890686919 206474525 521193288 651820120 148561975 212975801 491461288 587286000 786341744 144634251 682131708 2053139 644448960 802804929 351149349 769785758 400623071 285944370 475410667 445122723 270285286 319496544 113108993 371486544 214986847 823046768 415882497 823806722 146787888 589957429 496557161 535839550 460513462 61582368 136204198 366219438 399425706 766959445 505861127 802763302 584234290 310404504 736710087 350658976 206617821 978927965 583654660 53700414 211872926 672740279 805291723 303083087 600578259 717881700 46098955 51631683 480926273 290562000 38233247 510693303 759598356 605770761 814784581 720235372 162570213 845364677 397365673 372122961 706547884 444569186 39780189 173123446 903880660 24617962 449177815 103136024 873100582 51438090 205321083 314642843 838374106 366873373 756744592 285193607 974498445 632797981 720583499 687536016 506494017 52315317 714038722 412156820 5597543 17519152 577112567 829140374 831127504 959233165 242131923 535280319 162211518 929435234 812014887 523984995 376677844 405234431 293647534 304595709 685277216 459369805 506101513 322918193 570149142 106147557 520467903 735260873 67869589 994321671 119356995 17348537 447518944 112746393 987257068 845642526 290316199 303957035 161743871 429344312 687320828 304671988 677090467 378567028 19631455 318863319 51343848 780509031 43358130 489119573 114419661 839872459 32355401 999802784 467607082 809882240 285271505 862648207 421397457 345869460 657900652 564835234 345522542 888183613 730880671 117426433 187018397 387665105 770150997 468409976 229970143 536645591 422320101 349875074 829976216 909864950 220282125 807587131 3863586 183436550 622299632 214463341 643660977 947876355 94830110 57731974 522212196 411740170 970832779 552922013 870685259 364695405 833570705 735752561 729419091 312758424 384578555 457487210 270396757 508397358 969049074 390655384 589211923 529792239 26201868 39377072 908294711 411666115 594976331 683944725 842589776 416522178 813100813 665295305 386972122 778472996 282805282 670780798 469702455 472640079 107104449 588488588 367118250 331389389 507625349 275155187 54278253 742050897 16212853 427389782 658269587 632625335 388280063 515328011 133499166 139201537 891319540 568116995 220322811 639854683 471646101 896139231 461341431 212435991 798099846 152431846 250407373 704991411 277187796 457459723 511765021 796552142 833553911 933708255 451222642 554137657 366639305 966623910 462193980 723034850 633572239 788507974 375450583 584191977 600350713 482198606 27972992 868607885 450143256 62998260 464231525 191194939 344613743 737765915 268625043 330454151 996065758 170555718 275411716 391472682 888350390 812659623 755558555 623318792 586416043 97372436 636154657 4438830 215194073 916683533 798158404 707932881 192848583 228508601 78468770 326377799 261929825 752201957 596026555 356458517 599204605 704640268 129026036 534294502 843349079 470425163 660944292 404607377 200966807 407747946 995593219 526406412 648983622 944364246 738722095 28595327 199319133 380716461 921613364 976546608 965104440 932424868 167456259 364263574 670508957 784229676 215902324 6554957 656992184 479962190 376389960 315193366 486679583 70288324 812907309 936900829 732240079 362962669 873036461 499255732 978935853 184048078 203560774 339208665 652557828 671128602 212230232 279839404 59375758 249836583 744932398 859616957 958507878 859962864 659640054 754995897 701001363 520093730 514424780 806796415 297552765 501684491 460387758 101748754 657048062 627354017 475356299 135000733 147822931 463825536 915474476 125055860 564792097 500150007 105851730 843439888 713246834 308161006 916686490 187162646 877309119 93184258 944222095 278631506 516899555 802390382 775144353 706723253 807407652 321887517 920993066 939440989 228814643 564406168 67543147 1512584 228541215 371911453 614790287 682232745 961303654 19354504 713226403 198575948 759450099 353332576 879774372 834763570 337831949 974282967 726154867 499371322 215332717 521680576 790801622 796016755 686337582 746559391 940152963 93709 179854550 605301398 537235727 775213154 891112789 993313914 414643199 514404859 487030266 795567806 370016697 238159999 363476104 825798787 62571150 396913088 598370595 890709391 730694076 131151550 615378262 47744848 929684065 704047256 203937048 589615587 221701252 12516252 885006792 552963843 233937435 248352828 277955367 199200021 122336763 621529620 81273956 855604781 639031014 608706791 33347862 614337792 129930379 828191646 85651002 787426287 210736754 727443791 425826098 713108989 25872667 215004213 605229263 773909982 630674148 333210290 413557317 853403366 191781657 459842130 688475184 791628822 80580841 697909448 895769494 444026135 749025901 898820848 217713380 803772722 749011366 61368269 338012915 663211622 392720769 359926665 99053048 330915916 322297549 520577657 284953760 717675310 433094977 880408598 391489270 871700733 77489792 535328262 909122927 571393101 766418194 229991698 317589478 490634079 768982892 146042414 836546725 487261976 523720933 228599670 572042067 329847820 848754367 178254638 209126410 286379373 257190175 885200574 463961158 260828703 498116637 80848316 63436271 532528037 733933741 545646306 699088973 479932719 487955377 29040917 742673174 994945686 973176564 238800477 693091690 606239577 135896616 864095985 998774991 388745631 453400549 102075944 60833328 560481079 625296043 413739401 685746403 211597977 981236709 572875933 856148899 365032417 253793507 621540250 600018841 698013147 563473887 741670680 797637456 74410227 405307128 575753821 746697149 515792451 136743740 875459762 525499710 76033159 691818395 751408011 287146139 86520103 827096555 246623107 300373499 429843252 755436526 734225246 765218808 850037348 981766735 248113416 870391951 300298775 517518239 512626834 113725987 874179668 503749974 233582392 498314370 813162699 462085337 723367009 278033890 438592465 857133162 485102737 726449633 712059237 556196419 810163328 932699779 744396337 651613047 853314057 907909940 985078405 773567240 45817134 148583885 72118613 257610464 561249564 14213510 646957377 806907603 457643812 768645643 530624401 851821975 658849732 626568291 626496819 432700364 69760925 991011335 807716801 756806400 338896507 100561360 335306871 525193888 481316432 800916747 176069439 712444168 145232442 115322972 929216935 766004857 238156154 867603680 614926820 414422553 777178749 921900814 865908186 998788349 609959891 502048209 441404431 213656348 369498938 662283122 978323630 870795353 395502229 790454440 21024914 319060347 607146735 818271121 424817210 654071607 595787642 931783344 513256142 611478304 334761109 760611828 136624411 830878398 812162750 608052657 399782042 338882167 383248804 9600421 871794793 356290205 830103322 753089526 719557198 943476841 800974362 647530032 259596733 219939066 256942025 745529417 235420360 614060637 958488174 884413342 154530098 534946434 482314880 241999860 539432801 295220801 530543514 963056761 935592290 222579804 792203135 768786112 799834097 507129468 452544282 796901322 480535400 97671733 933699964 596441339 658813651 826249210 902138084 160596765 477336797 642020915 250589109 773391720 659165409 797691430 254591352 981954683 814320603 711355140 120494560 550425431 157902709 975006439 466701259 812206189 114305276 199740880 827162681 985100943 807003242 683953832 423565144 404036606 593518938 112763968 6926715 893110109 917861401 727914580 746376731 42632376 848139920 397303939 524867804 831428230 610636122 767060821 855892106 173784741 323188407 395317053 4612122 190795609 336556940 754638226 398632357 125266511 482717288 491145626 381010286 526454173 818094212 353859963 587331808 902705342 393851585 723715909 554146195 514445725 494612640 597561332 460270138 409953152 250980694 592366697 623262654 331545122 730183864 31139434 779703338 292082847 671382597 649576364 609106863 509610105 374096935 838035655 622233514 925206686 590195753 215122490 231886751 19893865 495338179 910774642 307255348 22382225 30109209 720238017 415345221 112133693 879453930 916701019 345066948 485241337 725204399 392337508 869546715 813890748 855121273 924299750 635930322 591907044 25650950 568069840 623303967 767173431 636574659 970979072 578806363 297564126 335599288 581678131 904915782 979445106 389475236 727249171 509255123 763236335 303989730 349305904 962858512 782395320 257585016 124443398 6310713 633951903 285193753 115636983 788810419 9204950 996249627 747202121 772244743 732620794 468725626 856184111 644062953 885879827 843816161 226642113 387217460 119833740 784338076 884192256 842567405 518377786 239600550 176347353 317719613 80465245 323939487 302202137 577728375 456040596 93422281 832676218 33349400 779420661 191177494 578767007 652358085 873518319 370738462 421412880 102233412 986152544 525800991 580956993 132999052 741118351 273266691 495537799 586053561 307250985 660959829 572452900 124904714 677635136 861707085 517966148 276263919 508376920 701399756 305317622 516816120 463252305 985249627 613991221 220227043 358817912 461398310 50347998 88881808 928899460 478068997 419407808 50502157 964125330 764201336 693207945 197735307 59300905 819230629 434969810 455786343 102876723 145121885 583001374 788803108 490927366 321651477 993026263 626964844 543999586 226408687 123143754 240305941 92344936 666599857 246102708 984870935 6729387 241450185 94576949 70436759 80895768 384198222 329699287 759876574 634196757 409349634 955483273 469558116 669603424 465189451 366918695 303547840 762684460 353014072 971976049 252610744 669885962 927363457 620301840 358161717 171747578 212703618 382282644 59783242 994880608 291171911 939965051 540894260 3403019 80224893 897940771 203040600 987632173 536292731 766638802 136809276 864306789 255084609 765798079 425514905 731606201 374055029 865629441 482796357 294874517 144493926 95714201 332868934 570628556 551554828 88766318 462603206 916531618 861786376 894126422 890866973 765516215 36197281 504625416 485489342 175588377 406815940 929792549 110663763 917303103 359316745 305558326 428594853 253123331 508587696 184997548 75037350 606208428 270109343 99939808 108358259 798160618 634635622 434628119 297183823 701169358 133410364 63903604 559232421 238531801 501346307 476742159 646990855 147049195 495811134 432861405 180338227 896441431 435563551 220863167 771017993 907275983 306987387 971344254 778258583 432930673 960135123 619793614 911137551 934412737 558496589 506108233 406593484 948912303 870085049 831933804 534146131 302906767 132076942 162281635 107919181 246770460 148508398 271525949 928770957 8279678 14171293 779485303 504312081 777256003 166615818 284159854 214095867 361260892 700609359 775563822 574587797 348417068 941616679 262316968 359035219 708309874 338035965 833668535 91787217 456933218 821202142 29203990 354918353 151494796 676415876 88270196 622417726 722983662 345103437 40543331 688034350 680723697 390366015 466014807 968034265 405271645 407578121 851744949 48991653 750146922 501632261 575053252 12158490 682192822 913265711 540832185 426629616 747878212 641568814 967113643 763629823 477288322 858345815 874970777 392907080 789755464 721131162 854761070 445794810 907496657 23414940 555485951 628863593 717442241 259734690 666684159 109853964 776857383 574004123 116208915 865967243 307700598 617790236 547553986 855332013 1910414 110641256 459873664 882879336 434205620 35693412 789755813 664435159 574676372 424329121 28984688 795214650 404752706 594536789 453468175 251710467 168494912 103453280 666941073 219313343 466863214 349546313 725025004 401301290 303792412 473936444 889564934 69671723 830818305 424374806 710763430 506875851 695264053 885211476 491152252 758531130 856676672 173536028 170216484 798222553 552235026 599307838 720700704 822381608 481933309 185698353 745148118 462233044 22883006 495157269 948532633 164757423 843660925 411090865 791162016 750627507 658640578 866151029 71905552 822052869 45612424 754937972 848087791 331768816 308142123 630621042 874527280 982766824 243695727 806676438 191162796 777426055 529505150 103735214 345970725 181430929 814755572 632018352 487513410 566238192 23701450 596252220 230483095 397629881 692582759 334652508 15904410 420310566 250110614 155206845 139909552 256403354 300097168 890757300 467884320 627293090 201228782 60009796 788198426 877906928 130962360 311692818 447334074 220374366 561240666 36207214 154114304 382476531 924734122 665158736 919054294 849647831 58496230 246249817 152488972 872233822 188427186 231344075 578793308 99441667 516772635 30143383 669725543 570015339 516309398 368657239 628910774 772995423 834816768 305236808 268851132 912661971 923861922 327285842 507487182 328639969 601781028 181928708 823522866 535172560 4791200 900611220 254256912 752993032 890822289 793152485 644830328 583721245 870258139 578206330 12973412 791104715 814609100 557545348 761326773 797147892 195418394 904196829 880254004 255006116 906889699 704567806 683459987 706317582 763242155 89791252 578186602 964831887 417322079 532412907 749828157 533252518 577297493 222783738 477420401 399808258 86824264 556934757 106444891 922710391 592153697 859850988 151899954 495785725 930651693 113701125 12398617 882367929 560879004 657758147 106980377 545752821 359536914 769344487 887430177 125773863 878695760 818132185 867221004 651173351 649704581 605110693 310857115 640095992 756223302 103809540 310317944 778224970 295530382 27915094 721231412 784643819 366388166 794013091 545475911 137916187 529453499 775028376 884566548 805456184 389697438 77280908 817752291 135192016 993378576 103339395 459292133 577166233 115686932 223175710 907855924 626206312 236391962 362012336 756785360 506336325 139275510 659908654 464280998 676418650 317025765 778579259 606884995 124475899 813737098 464599834 127473699 679548832 766141942 739863741 733635876 421539313 279101343 406597563 471959314 892003510 997637725 800578896 86026591 31489509 506979705 668514150 782432355 311561365 717392798 798636943 923434079 392676365 25746916 829491709 536445050 603880116 113386185 402517139 174614985 156409124 138326831 253781972 268921413 907083027 864558435 842405364 9775564 376887908 617623580 395613129 779385130 346106407 903215478 191741393 118333713 899240843 779563514 622582067 485783318 481366764 344589202 523984065 51008192 79929549 430395539 629591532 794528885 508716762 43782842 36381660 4369543 408137960 506524206 987093075 177051692 933917678 630895229 459883198 855717002 140080916 388367256 960158010 214120361 98942627 792188641 354684803 557943160 695067404 278907419 38470656 468519634 708817389 195852403 89200835 509443706 678757640 673082750 723831424 802832919 667910475 238167098 628437913 865016121 899496902 503266830 407253777 20103259 49554103 748299205 659850653 576297951 8181884 134064277 501416079 725532941 424792743 40889624 149167848 780701974 710564583 882938456 65479762 482814484 393991193 527505090 205669912 98626570 901575486 868995368 699057716 983734749 434744966 272566731 121871943 80971874 568493119 268706124 555492499 843901777 869423078 693661629 516182283 368328778 996310816 969448335 305455172 472101337 703035062 90099873 816868481 535047786 922057631 786477878 741356196 942807388 190217201 157797120 476829505 199755760 253115377 819895314 313620876 587475533 938918666 470468073 891158631 112192643 659062483 856008808 967859031 667422604 795010562 833039072 405221260 838338122 174319998 423683847 884630750 783669384 519017809 568069109 60406986 73036791 70452654 527924019 410384762 680897836 804708337 97765804 674388156 198191789 700346780 567606456 642340614 753211872 553799515 530797845 416776314 489649688 587293696 439415269 675718622 710021007 944651657 573777333 264537504 95190116 986632215 806452093 175271641 53173153 444006135 440648088 447194184 732726329 811264923 540479693 818779474 610648066 572897948 707528008 789831946 304320193 814838976 788720542 608322852 305845530 267812852 996236750 502541569 706855332 419562569 857935423 293611689 696990166 763399419 154420918 776370630 955406099 738659690 157946738 268948151 38433182 360225318 754368523 61551478 535620528 193372126 379792519 300453037 239942750 138217586 673941074 442306731 726002858 721078754 563217220 605154914 160863356 80280921 124335257 246797434 262906281 887611949 457643511 676847156 6338279 292468948 435860584 38578817 365394134 477338105 584833894 401049849 37417221 246832993 475039179 580721369 850393311 957898494 628008157 952861194 115745985 857727474 589010762 277813277 91426538 910108028 969240102 416812356 887958149 623207944 993963505 544171365 446442659 537961003 214145421 421552898 533267772 89755547 660229449 676666445 739325491 617363520 341915096 462133274 657337424 757134116 3642202 291863788 480852548 20867963 726408275 714318314 786490283 272786335 727482032 268635616 626692097 396949522 996321992 945295432 127919028 366974595 985675351 413489219 878247699 725896897 331739521 142329746 208741209 483182215 211924438 383065515 368426404 800638147 438334792 326037153 199908354 194698227 582888247 152116276 908434528 887805390 361831782 998996172 97090457 622248435 723775751 742521976 914300526 384501283 816573865 906364912 356322441 132781895 362375756 391079315 574492026 656430196 350820948 840634471 484021179 345940966 817581202 834231067 301474733 442941441 706305592 741169416 851672731 208953420 263229410 845641516 681779634 107150974 472269467 812516145 351402767 555380082 711443147 872258147 298813107 912368172 215542086 978407097 238045060 527303892 773785679 958102484 389917273 145964992 795244166 834745852 58344164 425407083 986521085 5751582 373265101 954352247 128917797 559206355 477199512 893045937 740568031 370357336 586924218 577294856 418152044 338746265 116720269 573641375 108556413 804264478 341951309 457491632 911599140 818744100 804032807 56229295 300514529 783225739 299226157 255314216 626527896 365256404 932306772 324691418 990805655 289514549 953438082 205466793 750971026 675468673 821460094 288401823 881190823 807548470 179356155 439295726 990957405 257238146 988216974 3924979 478765212 726940718 983884989 765862961 639112895 329990579 904342511 348918867 869034112 513590576 263269239 311692075 365435142 877864302 27973002 396716724 56173790 351437020 227117135 257302294 533453565 517055630 203610314 682656664 760435134 408152904 273006576 210958765 554372586 274909807 449795481 341809139 4263341 572359950 694946180 353737002 636543385 601048805 74261598 560270144 283700656 151279435 489346743 787875910 326257749 497197645 290462215 491925370 610569045 775301014 682528177 958295100 626237670 276682113 67054588 434791706 415693989 623583243 32113949 622314694 511168150 317840348 411347496 391727901 129586728 151778114 266015779 55809566 970971443 768537910 118129909 76855545 653779180 649351768 506503278 658948862 284029185 220115436 310181706 478657192 836940410 383889124 822790187 842910367 81853645 817790679 113419413 902162089 597646553 709645057 209818623 360720570 156924386 461855053 150054590 562909681 243688086 338808650 493819671 128416140 5107209 740530476 296033840 948913148 643611321 517268695 755441948 620111823 2270091 59919566 422289364 871444674 790989517 470629189 761988664 39289530 739207989 827048204 574219540 456665281 201801436 666980010 422021401 672242698 544920653 743493441 674692061 929094385 191180145 525506467 598639331 568751095 360842398 548500292 67296402 566358729 520587666 454318408 855738688 721824058 681167989 398436724 427455013 3702855 393275598 910734647 957167199 249200400 566455960 353694375 254453243 31829989 658750766 558435716 74441446 991040307 300697685 890524214 839886334 732692633 248758584 853744334 728500739 377734619 388384114 947542016 75326621 129940450 305012220 668492333 224995164 967554498 722431549 501131866 606970042 455954359 98620670 234068282 422102529 214605859 343762301 268437027 604198343 135971986 299436111 727906834 265573359 818259126 946101370 135038641 348555177 56413039 103750256 340797261 771000059 867181497 809232644 353115613 373477580 887059396 908452978 907925507 35403757 721738723 197671266 899316229 588113945 976347535 866238942 775446482 19736814 46189166 589195868 694346753 40605435 555051337 220858045 155981521 435347114 791606549 955204417 651391786 527514970 947482092 150223255 654226333 914732105 524653075 104862166 917608796 799760290 734591729 143788409 150674253 443036021 885414431 455360102 765442800 250810045 161053266 569706989 537507707 904231001 461851765 386982846 306971330 741095955 910573709 493448441 699870789 878220702 235520206 878279973 39683624 779150225 168837269 359968557 625552958 500279919 820182372 369693796 938637055 941492126 134134761 62740877 615955593 44851317 684117749 29405643 204048800 494463271 635105411 619405225 21329592 869143512 905243316 928674845 130993893 926191507 383535833 397681541 239946984 261059911 730299489 915355303 586843689 866502351 201604585 625924526 902513076 413824488 930420786 668762931 856040261 950202178 113731371 936684336 82136119 728045928 574158565 352790026 588774547 123527638 370046618 129354131 708470791 570195438 892713393 817744888 705667307 469830139 906563249 319909599 479481665 45852711 350737486 112488008 954082218 495719315 768220775 553592737 996313725 626597691 156386043 732798656 887366315 126340363 83700025 249738701 131180246 317206741 479746159 508248491 781890628 653507918 826492191 750538283 732807142 273446172 604284389 470937556 458469204 895647174 520854163 79352198 805834 899135167 136723734 136277127 54135601 760812636 745419919 986456961 133957398 19645667 87800383 55568779 428907956 225588603 98681486 147475744 45410539 482674487 540483605 23249706 431265597 747297805 933125771 788653555 342372571 989199840 57646548 65251886 568924830 735119739 662946047 134581246 583567110 951674251 242385210 627145700 36078393 728232366 785884387 15544785 122616836 82062690 119367290 37301269 329322720 251790611 464360881 940197487 919401199 167777038 207788116 709277958 580644853 691569297 567913317 546912616 600434017 726416058 410807808 475886473 917133645 793207701 781981813 480243909 802622836 602008847 974648119 244986593 610910787 837322244 902506464 525934861 864196546 756842807 525618738 872921309 739011760 93762638 56753949 526009164 910451558 568607965 432576943 454688194 618043121 863236954 985440807 413666061 868420603 39694378 696784612 876421727 533626845 878286996 923837303 122020441 477964694 63568329 74933646 863664125 458486478 17589730 187680776 314772409 79002324 878791394 467710439 536691810 696163744 168480178 50671442 274630201 218812115 490731810 569768101 57962973 353328302 834945772 780496213 714689376 154172709 657599154 114201349 654789428 988972751 157281530 890120322 336098107 569085419 437573690 975865536 414815157 754057567 639931849 410503642 598612562 610307515 689877223 679291922 198007590 586269236 847893436 550542037 287250865 648807343 307874398 620193204 648778708 766543790 221474757 355458411 102415584 639172963 434571470 354041055 684729993 924087460 436367177 141985304 962134509 885225712 392710880 993474893 565606029 443534958 571527731 784267223 313430362 288727793 967381950 410924346 147909035 185544427 542305516 86555168 186307642 467319422 799221520 722020191 859912748 737804401 147088482 842940655 516676113 784548659 68744963 289147122 750356188 418751962 343147005 468613819 553390314 342491944 985860159 793015733 448054532 467534469 719124389 564896894 688241491 874923771 969518575 546216924 305254508 972476996 696034244 25563575 326487120 36326336 258739642 302287907 611060579 945361782 98853190 802137690 834255727 546766102 589565391 860782531 198437037 354104053 10508183 741286116 539799736 473145621 302605523 473603191 238258073 652797979 883859101 57328720 27480248 166222423 114351604 259696249 679828973 712095423 71747779 558631958 640853623 161904116 672011995 539090048 968318967 703066942 96627442 563585074 430731132 367028619 411243950 318902220 803153020 317750386 777316504 833146138 987351510 260605234 437632286 142482962 718784205 362255282 771850139 532746701 544942605 508166020 863038032 368276879 93649580 934446301 937158759 40524226 661708073 895471004 895199982 874973434 78633576 230224457 765411300 65324276 307255993 324593427 398261031 668520848 27628235 139215056 312464767 900830172 731920577 121178627 266016671 28021000 724456735 784460238 492293409 639000437 13609422 820680452 461124995 652255137 230108971 361857309 347234609 168284472 488457964 184401207 281995900 176623119 100697403 270021911 5780636 315153697 696701346 205735468 837479092 359214479 630137881 295495314 746720973 486226342 758709754 378088452 462787287 7545819 625180430 559551725 896778155 914689479 783358593 591104856 220693005 774738732 906938854 126204929 811485091 940784888 487901757 670256451 943924735 978900540 827861738 126175269 625157531 119227191 896979643 849871192 4090072 761614408 604178658 153049143 161619180 597145852 775385602 862377915 423957828 127390982 783777565 843631502 596790204 289071939 247906465 469206270 101985388 434821810 224769377 105799172 547821114 115704707 131318684 582533696 125125112 555037703 769665016 95463927 808174432 444889017 257124480 265836825 555844116 149482554 3709356 965410876 968510620 139582044 963308888 978996131 76980585 962031373 906257866 256186928 904125399 359040105 362076334 240008311 864771362 165272243 329723929 233029548 897670520 471576920 466682250 266649264 483739369 430035432 383992037 800849674 631340140 727156516 553234806 598072810 976367335 81576425 877196021 796378919 888019485 497937991 547657854 476409917 172680645 174176876 991060887 955631958 697762421 15558585 402200875 840034370 251073199 855720879 164850833 391058295 70355420 773361398 113643654 485626645 17465166 342403687 79036975 165744610 308345663 962194939 962504218 66045518 459909071 257194963 858756413 606234992 875783173 697038138 270260722 311731721 562127063 22764456 359638785 685258623 533869595 73465781 950695575 318973152 756589970 973351972 708173638 733516773 580183528 553010915 545600272 28533738 872502700 593640961 106812504 136994554 956901977 813729978 159879916 175690948 597793613 808552564 183545601 384039839 727812309 294779835 621068853 132895624 192980766 995354430 403853960 230491944 173140294 388430554 875494254 765543631 861626445 460006548 146238651 706840946 507570200 17804695 617374123 74548146 612894334 276322098 262613984 39086294 316488759 786975718 861825646 482867151 927529955 162350162 880885444 504987185 947263241 199469637 598425028 370968891 973287709 663810478 569247408 331399382 762215033 461414829 717775414 511407250 675987292 928771967 663823215 483559589 718871280 690209172 4286675 449455855 966207048 997491840 430840648 206752758 811665757 526079485 901892380 612878315 364079116 205619690 25871622 574376354 35067172 86132056 483156770 384565151 967896915 746962296 740572662 844359431 777994802 161865894 899468655 824711335 15024962 558959972 356273633 784559608 165781744 894095711 61224200 488385565 833437066 179055208 392913676 549175511 351161929 276372860 7690107 113418137 867342927 896897981 165711945 131766905 934552998 534420345 47186641 710936886 265266238 577308446 194938074 121876025 391944944 790446156 560210323 654846862 568191104 671748293 187032209 949623281 886135444 577483122 272875725 65123772 516172992 723931499 932905904 383547386 480677756 271307495 454342662 666013529 551969577 821048395 569208071 55647025 692090639 331333409 426154316 640654974 821054561 724374814 878886879 83868908 162236726 99586333 7096615 457659337 756051349 996947486 492922367 463219977 873037409 417928786 750047393 853751374 55225455 340545545 237519794 507869152 433258869 856055997 308764482 507814317 297602839 811597842 364770756 329965643 421120476 312653013 991151383 738948602 594287673 259572729 290124159 10566052 419139460 709041047 779710120 785325525 444469503 596330485 211035818 201899972 694836947 163790459 111941379 907842132 497841426 484367039 179461010 465665800 21776052 964825980 538369964 83228434 745983133 383816085 889317633 907067977 282483859 593358099 300909232 288717352 503654985 949291052 964592191 270005980 97867351 36063805 521101466 326697525 633803585 722459330 662415638 451492003 727010925 999939695 11709042 21515339 607235373 679389201 429093331 588657139 267183034 43503526 823309253 744109578 84153401 147057488 215265596 402812327 109802415 679309404 251931801 966752138 442820367 941870140 968332957 721953049 471659569 878781322 22614904 586670437 235467479 661561613 790993856 345529380 538040746 131270316 528211312 568956596 748976957 771204735 666396913 10189601 63812873 147027899 22790667 44666645 508865131 282142153 442189045 362658536 968580017 280685873 130099535 80651932 334360331 519615142 866931482 737973465 807770512 649754629 262688711 172673000 698749509 41586513 276886825 570910918 73981200 137248692 933818495 997137939 110003653 218358404 542880108 79695633 426809115 472170555 390469374 439526066 449975732 338424184 949314220 664211086 41017115 678853646 772852563 206768099 308993724 485045739 214365749 773169305 447350519 56994858 435730435 527374911 484875272 876038673 813609424 666509069 944921372 242998281 184699419 662325984 186993474 992597159 734756807 114915906 316203125 434708900 19681571 727497059 216849044 371635430 851096290 924012821 547863657 482562935 811826981 931815387 366292135 803568264 681230959 494708445 183925477 547519609 108409004 254341353 259659941 71217099 883607605 39480181 76858446 847693863 216178372 395104675 642626615 435169122 764152961 896811832 675237268 752975993 177212148 873150885 920141194 845507725 519073816 782596350 160790558 485335529 550614854 653497095 435530566 661000450 468274249 936580642 492133334 360157555 997245510 880866405 783661716 971379964 723935961 943298177 840265001 913137806 956681469 126888151 967802147 103734073 911578647 342221935 155026173 374403895 252335861 608479736 549354775 375501548 265516746 345303755 294256826 770236902 920852022 127183842 435300124 453931479 252624447 607926509 415685200 66746263 288824143 914267443 844511836 563484717 362112572 354246828 11724841 162542017 293481284 382640893 352962691 838657705 357709068 37050984 781978408 778993761 986918309 482546912 633415096 719919241 407013757 142863609 299735230 698043886 970113654 65581299 286156969 747830660 358192853 105173431 398086866 356463972 843398725 591780819 679763067 614412757 773716188 850037372 892224463 471229503 742855194 219814551 53837531 390889013 295926755 261752229 361883293 105929333 575087489 166672088 998537203 687552478 37611180 252523531 534295720 281376897 865316482 503414455 18436717 459327117 456643721 412284165 567727577 947928926 226780585 60373189 676010865 556022393 453948733 465212527 348354714 851170438 367628287 741269026 292893355 978773083 344349972 351559844 210597334 947565555 406179597 602610276 928358466 255325039 703423197 692793469 298759414 323498015 273935070 920752554 865356518 921885040 564838363 603270997 941277671 250901504 465603068 465287306 435016123 610323094 688824283 779759364 251176718 834771224 159895920 211065888 262326383 494699930 917809958 203451877 803390297 285009755 650678470 116704773 113725227 436776379 412879497 640094418 475128366 42840389 705166857 622756434 161721494 388657836 926912843 231047975 447567739 829154255 426010047 329923490 700897245 847485102 327689015 606694587 386643366 360881781 374657267 570402064 498843306 322239607 790509719 367909864 218195871 233908527 785015601 741022773 851989287 121306433 304422965 162151820 651521226 969559670 801657473 727436075 245107197 409700039 821577050 471023868 160225045 184803656 470391662 913745549 695613015 916898625 769987026 778178580 315693801 763582237 523560707 284043122 183127005 562991980 446912996 192243505 856373036 917651437 607775944 693271929 393922234 349712001 635669086 293051687 693325647 172935731 410418377 654739129 587774875 133863992 772917384 189379925 874097974 508615915 147609485 92605898 228149157 149485263 150858283 572778385 955062607 882361229 831167008 682413001 398013061 303838460 134921619 574587448 713000065 523807253 803661838 341210191 96584804 36827131 500192647 558413348 307438137 357106939 315630940 520473974 4252653 784540550 590904661 346985135 34506335 383885625 127242906 497618392 728389707 686772183 7329987 615173552 444286810 670963274 995485903 750787729 936549669 983609766 818749470 838753157 879490076 180340263 579759490 602109240 311086756 833981489 938429486 199301380 72570888 616029004 399055040 380138984 15572344 872952109 118791743 627482506 376043276 857316017 990117654 33619771 966439111 691657432 14685211 788799729 29013902 953853905 655402376 92333131 428506680 640136683 708442633 543690642 842236540 797800613 780273573 775496883 951546877 452738465 463430869 768813639 494010174 813632423 411109748 430925965 926070456 855000497 54588361 641134186 891876800 75732947 275256704 859261553 228086169 590188629 231425710 299473364 699050601 748518560 70760147 704360825 621765700 647819338 925317584 933211874 588101156 647292429 842480887 894418753 3800811 839777482 81387001 4054637 422900316 754871951 494920181 824395746 687181359 632883084 9995376 333874634 690697467 843233057 96564825 105541622 653299521 451034317 394561795 585909978 369031787 580848957 21828906 773547161 325947335 583851333 60720121 213644788 550233491 242715358 780684790 306896225 916617198 676601391 27376666 433886706 662660065 467355263 593759941 950709354 525008989 712384323 790146743 999236143 567117628 47902489 612782625 75816529 459006017 478547134 218802069 71812228 307361297 897820194 927804690 371736107 714889537 314364248 701645564 820674890 664469832 649372570 282874148 499630996 789831049 156403789 917558204 921291100 537122378 153359355 876569186 859664551 705591232 723805524 233510684 418929174 299697924 802874426 33148244 513329149 51289878 209353386 407420132 411138382 208426975 292498901 693824775 760639663 812007728 324056840 369437027 261945699 866810818 855843522 714878722 404964952 704069689 453650342 292999517 540479274 886815261 229212544 176410446 286379285 578562268 550904896 120730142 724137470 319875283 998690054 895431801 593000315 268372035 948176658 83111796 596916157 429621842 725688015 754152842 637524134 798798358 900868305 844448165 740626108 796107140 671288532 427023373 748241968 458769537 531072186 443144059 278922201 289413586 989875089 974907914 589960244 354467372 770486920 344136256 156159082 99480360 576023549 65571853 647223626 199348293 953264242 529501633 484909133 342844397 122723732 547405084 111185550 273015411 342977844 706726469 79351257 764867341 407970896 156298439 665417114 554214110 109690890 978879639 994914795 882175985 926719147 229680404 601442439 570541108 152243881 100124673 119621080 122164357 979514271 893080204 228185071 679340447 662215502 370715725 366722944 924345646 614433956 267161663 336613099 637627076 197704884 589260741 962963257 851807964 190752183 977175471 356817175 747556307 735246866 345355059 610123743 604372212 431273296 21017837 81864333 865009522 907312932 493722592 888893640 678856550 657675370 10608252 574222821 957604046 428178981 794368921 241299925 965524119 994117247 270915437 530128442 706680206 755944396 209182883 362895707 29667696 886648200 829419847 776165158 64982494 847640406 987108813 696250421 21845345 756276737 238608915 419577029 813769832 687673979 784304733 484448188 508691535 879476961 689421915 941506989 384599124 784844662 599470112 685386188 540143268 528234916 100043563 966800123 87344462 251903233 651141473 979984575 31461197 434525253 941349389 406970441 669271425 587037780 789470436 457583471 454960051 315383611 335784199 699342254 214174098 418616108 29324281 769135922 906003388 42335107 831657 202066889 377458865 742449600 261515881 800551911 678531545 851806869 365098999 562654638 83137669 566643406 96004731 887885799 236046575 597799530 747511425 119372029 969599800 866324876 393432315 468292104 346672235 417033600 719770186 738291658 224207733 903133110 317978420 414036907 871621683 159082702 699224546 222785204 288167524 73858439 838803182 979991717 552151220 262358990 570849875 843739348 115133874 278962614 798722676 568833359 84262617 650859133 290853154 644029891 450824583 934079360 298400912 555562631 249772041 63712591 724965469 346057115 403139213 196122780 879231629 84229541 428086319 375953732 114134156 24121076 459407343 529228615 675659314 175232131 789298103 704809938 178427579 866983661 258537812 518680634 754652620 82839418 336285062 281506551 801748594 183708957 283732205 836888750 405139492 934906728 983183628 493903657 741985212 100407708 812421980 639936093 362795652 204569506 731779632 480642405 155902244 880706312 970994126 203431299 293691572 495113221 819338590 831322403 280623027 541200504 3430383 337206998 476463874 655997674 295844221 211103325 918174451 695250824 662915046 335148439 309551671 174638378 651108856 54537615 281315564 578141264 675517537 987292025 765158299 917388323 658388667 919843759 863073323 149568877 209456262 310525112 621687030 880436137 638525996 230211133 266019768 647363574 18526720 420122127 492644504 390529051 918725432 983420717 908011297 549359495 866249977 114095288 747095366 471000144 829453131 140071677 362680427 99707961 389306397 798690412 524669006 145633188 714967114 655000741 411068960 18790565 321009299 248678247 96857462 884939249 874065058 906135456 131539279 27941351 642561542 239599202 481131789 29941646 356673853 495293416 825954685 165398934 945600674 817097365 763936727 123008857 194217347 717252086 719401142 649452497 384868622 742183357 426479392 902504104 815542625 413053636 630343557 398107950 760934007 659065363 796210356 98661209 358895933 276685775 338493681 448393417 180742277 105635406 701541598 142406597 556413444 557399309 526708361 489184314 14367072 120232876 412648549 127269058 466564384 381684475 876226641 751905180 715891638 883221479 874485395 223813553 11184253 230650511 472438487 167126411 929432752 787263287 285622066 907828836 259023486 442580808 864808739 876882717 964980728 757778006 167962766 104063804 801426453 412862748 373553344 989643248 788444598 294024318 543424880 391609103 864354471 374002313 845098939 711711259 863098519 364364652 499794210 217301304 859444255 85723268 429609110 473861176 638779842 272787799 703007087 801615762 244261096 136052362 150567524 596169061 288482530 9302776 368622238 201944694 23536618 909944470 169313448 654239033 663778339 957442956 340111227 172000958 564843667 758179617 882408816 539011021 610091564 743329994 582409553 185139141 422011080 890927397 740556615 865459642 190256680 581904624 347956200 18438500 626723062 671355418 369266483 121457695 657011140 986114229 81953674 859524597 425141768 348482557 56843966 316131474 356738340 641768274 819732741 624846416 366214500 264742725 983803894 969448751 688999672 735080069 182048525 594567124 692278009 684139246 411152741 96223887 590017638 417226885 633238304 334195799 484253996 719308915 665932816 163437004 394752282 630218763 274006486 556763700 326504683 922829771 37806469 282949249 624948030 722336341 600845964 24863813 811624351 28891507 773999052 411528388 276382586 897558809 780258441 878936549 167867694 403749986 418046321 827179317 107505914 507251858 44452758 20101357 316553225 302107669 408179579 976393450 113723753 111581565 514724866 248466358 22081813 451690116 815030649 500031871 862470383 472917776 612174994 175781660 710030780 897116203 168515950 143479053 616902709 795895561 97320083 667781240 334553068 49924098 971634667 984867887 820931687 598980509 822171085 637835685 917319691 376830850 540927478 470992380 331690284 721464201 77201546 492542715 708267269 886446249 351340315 499776531 423508661 197536262 868763030 369677655 530487362 163193326 685609312 792418440 11522468 556473552 775814203 140405774 678973361 446955594 228264276 421752827 454085928 628280864 782658625 639765761 512744372 7110458 259575806 412649856 929522920 990820527 632354802 18111107 885354301 232915641 219622123 875529399 48886545 426439096 154733083 278265715 122151856 383396666 857609249 22624180 341760074 991970037 675266050 372561190 364474619 66763710 362169901 212634391 744961982 128598175 917788531 793195389 63921540 571838399 496391702 582515190 389174554 636973936 727234233 55604428 499525177 711990064 755486057 602721260 246988420 35865252 686735005 679026161 558698627 4926610 451581998 380460821 575518887 475999218 523208807 793699907 240813131 290805470 441594099 257815048 749874351 265750934 517374949 170449309 103729659 122729355 872079036 518462944 843986499 80915532 142822236 882896984 752752764 236062356 122910999 509746230 151393165 54151498 946449308 110271312 690508093 860546677 252461069 557522726 31908155 355588171 619166698 720433121 43653153 162156071 816162854 267978570 302458482 903740299 229128724 653576671 599051158 954891554 41462385 805968314 542960352 193023939 239785056 466947496 395420806 895378274 340375667 260447250 743033517 862840875 825514907 755169301 925814364 185989986 263506998 701978733 308300932 49990782 50244877 175649409 922789631 539854875 995130443 466771297 88831374 659747064 868566659 133543108 208881883 644702469 384733619 715432459 52582260 822413907 116204098 587810105 666118361 961133085 454958077 145569282 355004004 691252165 377579801 316730043 35066467 135684058 287593778 873634658 413487365 649058060 364986446 561790115 29735778 939589433 166422490 638058696 266259584 622253152 933334446 976657611 956405828 907815345 56662277 197471563 261940353 231119485 545386883 363672973 333862895 950594878 657957430 523511939 716976432 419573402 52719765 663833027 551249358 788994141 449130362 94955660 296717626 793906293 527752750 188281545 957342156 378279425 910962011 295811586 98128328 712437316 369701401 912227957 737501781 929608616 264764133 659172860 683077763 944017091 71220897 781922083 299244621 545848141 351426973 264094743 551273365 701642539 958970511 123191214 604371235 497241960 786510224 84526698 20019112 936637239 914042154 228346225 689247935 884261108 894669131 273095569 722352614 215514912 936252995 639692865 340505994 322608491 126591954 855717026 16805883 222172578 667586591 194053757 164206705 852961989 80914099 117894460 32486927 457391607 458610055 488129789 752938204 809495935 950889462 241797496 565637325 678386132 414613449 892721947 437514934 551866513 972651559 341186542 756220252 20391289 734164138 395702961 786900073 298157430 804186190 531954107 713379691 333992861 513136760 910003225 305632476 112513064 93399031 659566711 377527070 228836219 468854782 809219116 815428988 268819232 870938922 926175802 780282151 470120652 201846403 287944263 50346037 892826968 389798515 67920289 906022056 941006282 277430736 411509824 971134315 690114124 925074138 172433348 567549775 778175794 441601586 109147766 714485773 900626932 170618859 88336961 276001606 609254970 447118965 92404158 405296004 580306637 61757868 213701422 392564022 330628255 380385245 31144308 954273209 750147020 905172140 969503012 440227402 137982104 205137462 741256564 869648149 709544047 529938932 539312450 420830251 464483553 584013260 487974935 937730692 247441069 475329293 500934430 775850757 560902324 712799080 410211890 409614193 703806210 508659198 726910164 106983294 329169355 336521301 496421159 808022466 569054824 554184534 785838845 110651074 806618719 170582106 476232906 2949606 998545499 113679389 47585971 803865215 607080234 481248195 477484408 169643714 849309391 224960476 731246990 247309528 814061929 471697243 731548170 116142021 324454981 236405407 961241517 429446779 529760978 649158762 210606554 865930452 621525424 152041197 404269479 365306514 591629216 43174589 506888388 352949341 382814864 681532882 239729812 130102471 774525072 277022361 764326686 393803593 876615901 130825947 985118737 238416195 402905304 619286220 131433925 431647998 565461262 282484749 673823800 243625137 666636852 146623647 140575762 832766828 266068002 744381427 62599074 316887096 972636383 390508509 25410527 605119738 738690961 451485081 721625448 179379079 434534798 878635212 606733702 231269522 285395282 447467143 778533671 357634244 127809923 394231357 599713761 297294752 77813732 416977608 470204151 486726298 357891184 930334066 647046218 925539338 284953662 123659495 875706224 590743093 690958485 115313723 676715165 746141758 282315228 68286445 648367536 210254652 292299945 59586782 524363569 146723109 326898357 293483363 611577166 519225307 549485030 220819498 41684192 729221672 312872260 366229843 694464614 4250812 920756743 839549285 452201223 559610160 450401415 557295688 647817105 299388167 995287879 631129176 252056956 856834730 687960561 480593230 59090408 303778920 146783837 350961489 676608668 283708796 437984128 353188333 158791432 556510985 250332293 433896215 457703747 521364757 352641968 452266028 592949001 425835411 215234424 435876085 895987397 389412700 583407992 864753306 826020485 740733232 474642291 170530484 400715521 918911162 988214355 528898110 922584212 915129229 778922282 806282400 761548365 51602460 200801848 923829413 152244948 538661070 379342301 870010242 854330246 188397802 552378278 796261844 68811614 290255776 838423365 908209315 720856580 85833486 232638356 208067162 868449483 905287984 699045784 685417423 823162276 887191795 21032317 346328383 321490997 8270116 96245652 949247310 194186943 32267137 603197275 328921101 822285108 671391144 524478064 724018156 531497517 918949413 880342437 456626381 982198758 343385959 571022826 18074353 768254793 995215046 988439898 54441480 562672866 121055111 700541496 540318760 491340780 498485713 591131121 557599436 981176132 47782324 571849238 431016411 173225074 264522797 788399461 446944929 779369638 694203930 476604607 948309205 783657396 524569415 641746993 55477649 565260064 719553376 448145387 471872605 475928335 117695236 533521739 690155045 613797198 682474165 822093268 531058750 43678295 802959828 195440176 805455209 620855880 34106298 750879028 666411719 194047979 172777631 116244188 541660901 954375594 153762978 651755848 780684986 900407969 977742543 215638980 485571236 504184204 841483282 388700614 168722790 631652311 18381899 69673446 382341937 578131595 5684535 860835563 206273173 914100580 960081281 434891451 3848595 291436478 493245881 267386223 212806801 181774242 640615257 241585725 862222679 703714496 317878720 5694603 583775777 914949999 48430909 381717733 225239174 522028972 442872827 434027005 371749009 651503649 391726871 135235501 871808427 176791835 807352720 426456570 460060075 988253075 45372242 1968144 492593101 770943526 822661165 330612033 265620920 264566302 858972887 25777160 614194296 176544362 409718263 784904457 231327619 114196638 881251600 77419023 176986038 771406334 585827226 867794189 345786454 593911919 874171880 892000029 497424403 558090110 828781632 574079365 698614780 241997157 382947275 840322735 500538516 309413890 712125847 923836719 495475902 517702109 131255709 575918269 479212232 20982566 903505347 863265601 139538278 908972211 814900940 192037826 961339575 678522114 164914543 6292855 470542653 708179773 449741635 764937401 375629033 306514995 584471497 963462154 25827855 896300376 40731496 511377688 389713515 603096529 50315894 98744758 657282083 697721695 450380329 955378399 555876038 1715061 206184869 610538419 112498759 33472553 366384879 114704513 136273410 186117944 663392250 57127356 783674304 187324176 601339810 836663551 26153135 770511290 728616101 829642251 541587551 267300556 618252462 966740940 490290128 583646224 922663757 435483481 14317159 504130851 643426556 904244456 678452979 714009044 385163805 291416801 392842919 505842048 251400694 821081290 272024607 313087778 269172156 128538716 189464677 737685092 967626632 698049134 613902307 613192852 332108120 905027589 523477869 712912297 567127066 473727818 784030530 38611267 9352859 255687828 608662024 455140262 370796693 518830430 849174477 955175625 409784235 733054280 67884802 105144635 260113510 367998751 107251594 662880062 789827895 519250903 588822439 320603579 63161204 504036745 691283717 751145281 798918755 499381880 346028986 457694469 369605165 186819092 856743236 970360807 945035486 864393197 895274890 879121776 847864181 890784956 296618455 485896909 55087229 952188266 911160288 915850199 915674298 351053821 927237827 811044877 548639461 227350187 467898372 193586068 785535977 742022349 410850452 201612350 292846148 168857064 134858181 373349507 681312612 864074920 285256277 39715967 534832792 681719774 171208041 599315194 866108443 500052361 698010511 740338791 265296396 295996358 356523451 673138135 319870327 761997286 228643914 663005710 819007307 441088859 629181956 401585264 285262177 208106685 458660629 314759697 854852477 960784594 734121998 134914722 78641218 698915207 918598388 963153801 613609034 814397675 502255655 158493385 355095304 132378173 797414772 342218769 209396704 628141788 301411604 185641401 704076568 691591001 426436257 691863489 791912167 317124707 650225184 797076177 323161184 787527127 356412672 530482996 389620873 149872567 749634328 676578791 849553224 255566638 945285025 355340677 283059825 79884691 449531458 398227801 802514106 900481372 137516554 419916365 443041481 168018222 990563435 672950269 161314339 10138839 761773125 215715238 740081721 809974857 473146589 611790128 161338217 478223515 365565660 479891499 232121838 41918230 878182238 891317453 904002805 620530211 692131549 69096693 211177871 215140437 846373436 388854570 26153396 353479527 118004684 115628445 556459336 518014267 738830915 818342181 79710995 160722144 595855288 868666942 863708098 452380551 224331447 558131220 959737588 833507211 657807144 480906613 25716264 763344751 580629861 716493781 783773640 760144097 164869414 514271831 249280549 700673968 937112214 37091519 484596853 408570075 558648127 589830270 727410143 873659778 554575127 735383982 144805992 817755123 560058747 833850379 406412803 173597857 775584303 918542331 525523849 23903525 290588768 651795855 406213563 242657603 89772457 512919422 390905921 780505064 765618944 949508651 70125743 851826215 322681807 372730006 149502333 28414521 626898142 518380404 287132427 628774531 823314283 929396250 340969636 600654480 657865738 375926150 479875960 801364498 40171972 889168226 851229603 19498472 476122888 155486972 892025123 559789840 514593962 318273612 820677345 374522298 932921575 94579441 216093104 332168247 18047589 971244848 264639818 764729859 320511791 90956538 405020494 846824126 122151867 276993256 275170886 743557944 376720872 944207670 482300069 637056609 167325178 358572238 636065730 185363542 629220767 393555007 597461217 648273243 127406316 699494588 487157799 743188697 349731164 626118955 108201384 642798691 119419097 928062221 829193308 294080183 824533164 505147797 720849192 987810996 389692555 436776600 88017873 78354026 358808469 826906521 929064456 739509770 57314638 589162173 599898219 759488753 154808484 982063568 733907316 845541022 368690923 316847951 568100499 962181567 913058529 792086868 31912215 297091881 952056237 731286188 848204600 273004756 34855385 635278272 322024728 35842276 374706778 576703405 438875584 864068775 772343696 702598446 53183523 751460236 194089025 870264749 606543382 119482418 174303383 342679607 952219488 413104474 283981096 142081667 151584934 61914866 594274805 920438259 618590331 639607560 826085724 325457548 503451224 853608668 327392563 736494593 405935519 828005840 194136487 626886306 363566742 840423534 465605211 122399349 137292146 351184747 693046096 975380511 99487050 502750881 76908537 109668334 712233251 918149653 88512037 94797018 856877280 55489774 364454164 269807492 589060694 862058117 694676076 824612145 84203073 746911569 147031866 5135568 314442555 372970486 960390898 506518011 612315347 336506944 463868530 285602286 92128377 680926754 292451584 107831957 112475271 491344058 492135752 171124600 498629434 323447622 744808545 91897557 873506753 449900597 237558981 199528582 786726696 631185944 160251229 367819030 221365101 530217646 670126194 921843381 549056111 689343447 972701373 756610615 658077942 285168797 826077786 439625754 48841142 205589046 490701262 927752075 6844998 250654461 603991302 197710164 119027752 458442101 507134043 322096368 713793479 511094087 496506754 921790332 693105 483782729 923557545 419160768 413306467 859320182 542302041 490471467 93749177 231837169 640890759 396018644 841680256 361818117 822091921 645374842 378551722 553350690 439211067 545046917 881017103 607209963 282279861 750162437 627278959 69995805 878130323 146509230 419743604 16534690 273837520 258578660 388748720 236421012 727499989 385275563 733333405 197987369 991068780 302797747 851362714 912508615 99731405 345070421 700722929 277214964 376278421 667708044 143068884 115811947 828394695 79966467 277700957 856219139 675188176 811044359 655935114 623090366 243644808 871830929 174871880 260828874 89317419 866274622 330615399 609431673 158147678 365454168 394682271 147658567 274416176 568324558 55910032 726996181 880542738 173137207 657338313 397749233 828668902 760999374 896304565 524972940 280110063 95371392 946213296 98799044 753667035 742510042 747481852 791764187 800131516 331241236 523147203 17398330 501134100 733161740 589721107 458004344 808490438 927962954 257034980 778027854 211288865 816240892 638454046 422933150 905488599 339382779 155176581 308479862 707277833 9721798 712873165 675494411 65818166 795440258 26025612 380020146 892851795 234145282 214365765 939237874 679109553 550014651 189923171 625444726 341888783 570955468 469835060 752890643 707655566 701359869 984459253 576800960 563906496 587459516 830443970 248814244 163074714 911093795 445691304 232456201 947525239 143248110 941305498 942241376 496904220 949342087 240236652 415111241 675879354 536118525 154790116 339491973 554876898 963675394 400299691 460217084 870235285 743464190 332679244 585208263 496714804 479542514 87631689 819442717 573376142 217032334 448252157 781189986 785911771 526031405 898969524 453051941 335830453 326550987 202522014 530381586 953485859 538285582 160460245 670264842 44155025 482336583 780047194 696556304 997039827 122771055 771468823 869346125 607969835 601766434 346623452 355364886 647905849 193890730 34463589 521059301 406164493 232726516 586889039 505714524 761476890 38459033 325724965 855916106 809487939 95858904 320790617 655539870 705887943 442970263 549153604 906847608 413593428 486486887 580944422 787316247 960734978 554301821 80305707 495143144 751992397 67309240 104600162 996895359 167996442 748954533 372777156 103506582 77800120 721349229 966917428 470496016 298199768 663488489 121196668 689957115 870134940 609397912 15801163 572434823 590624904 267492259 945079609 240230158 435020935 475702230 615085514 90143257 169284848 925648557 485326694 530621518 137926017 810079042 341786206 818584962 760266333 272994656 520356847 8622259 349462291 365460086 344631604 768615678 515135894 202766490 256642618 926411956 862539079 31389578 650741490 393169478 65084392 655893936 233706037 277832017 927534760 541927706 122525891 387649940 711986460 773447294 802874438 840838143 295352384 672031807 795764307 655116704 617362298 845216608 944865117 445787321 482977179 829896851 280200137 844677544 570943953 687489838 421113055 295215610 649275583 683376688 365450704 870608739 272486759 689166657 234793142 976993981 531338809 681540529 853105043 14493962 517145095 319829364 13499215 787761272 782332688 183914030 700921019 390394715 821276155 965344290 58447762 694508843 263936208 179314498 449316210 913175436 428874250 445311013 426022120 9833803 619267461 920514312 913986148 982573912 615088004 269852372 653619519 420272082 961677239 853769753 845133496 192547581 132744750 360964108 595383548 4811326 367172718 119473039 959257626 248009518 17820758 89821735 35785996 590771846 451180854 901959940 339925172 5607723 150552259 732190204 325832923 215823140 991561243 500154003 168678192 676943531 190040769 120144107 315743822 506378517 377247139 339489493 238993079 76856807 946422807 992920775 608607698 500126670 434359002 421105378 397679346 984949149 957313297 974857199 636399184 372242253 18066762 151241816 183048204 801922307 289178234 391360825 520130354 165780490 144441596 378569039 287309488 305217492 793750938 75222018 949524579 805928702 959844479 761362016 76024840 369208908 877536828 640916514 312110156 178932648 7542997 337089192 936680895 931667237 218140330 439808502 726223320 612960764 539571084 287137215 661560314 24432022 291764655 884083799 808028785 904124537 400687791 551094207 657361258 227799899 696388754 71965340 322353151 438276628 220399303 532121920 355263282 8253101 687517473 533893795 416659182 471351884 305220318 933267297 536099075 196957254 956549026 349250754 208367657 338793240 367279230 856551864 60047104 769703266 894461155 807020502 719203094 238075123 884245425 377295457 272300505 268651451 666446378 572181306 449189282 280087767 687075582 794266099 119760051 240447881 119390021 284539076 142004791 450733116 231019894 722572685 186941756 285904773 231309947 420663505 983997372 982325535 55656092 28047556 653008284 264335082 513628820 474645051 425816481 788198390 376898174 731759029 356139132 418213749 186327776 41835609 344067531 435121601 973310374 239239416 293397770 239653725 272279335 804051721 378584740 113773557 632909597 257164713 195790573 445466973 793559470 921188003 194626843 717346958 4337770 679768931 336195150 14853294 781870407 748153856 736675987 30801414 624168861 538369082 991005656 130168075 404603700 304640634 5349115 126130007 335133499 136615633 697573048 9374381 977152839 432933359 596708026 297890299 892014161 556997177 735551123 944662094 431663554 129401012 52222140 725281768 827163239 85455378 413716374 574652715 677895028 604940200 628333674 157445024 632182664 12362357 139719274 243392763 123530665 349123617 316971440 148689431 888949823 732054523 308351547 202419702 892927524 143192568 157116663 300880073 691302292 741118396 741765809 296632028 440485685 881441675 580163367 439294382 613639443 450709847 28418038 673690338 954981794 647816626 978032554 538566978 805749443 204881632 704515252 529119173 910974136 463181767 214807149 844439681 350853424 868542711 363529239 722422716 773759040 681184676 199080920 920032993 624605543 186879153 622144965 611134341 425405060 979445668 566864084 439819358 218407148 519444907 320778218 673890901 268719183 916736159 15241934 323559794 960803788 533353471 280258867 293201896 988511464 294209520 868086193 372034327 671387794 303897669 129268934 683320445 811295261 979811699 604160480 879872709 936066631 813544856 822380110 786478791 303392309 551777663 432375885 258475129 612196981 633808786 879487990 171282944 44772858 745702638 817494618 242156715 106648868 526999119 602147945 671990248 801622198 808922396 156404217 61206102 675443937 840602727 515755726 551716533 444585527 680414179 350717328 782666482 449732788 368033010 497398481 619772706 915995330 850442652 944899081 986158204 430730282 235190158 59126939 661399657 378554146 526290209 486536910 336177007 685580107 377413203 398342868 955313218 168113316 305282509 386852296 773208256 990481566 15099867 86080173 566403818 703572239 465405303 200166245 565404140 466010419 240333118 116340169 693346072 288942 949968508 298269836 544261868 647136911 775288347 829646418 378523659 473608779 603717557 467309223 979945020 537123519 603621513 909084408 32981366 860359983 164101756 687559585 966556885 642125386 846798112 121123040 619517336 205781799 540998829 720988128 821209647 483925055 908912382 223303607 140321579 2818169 574943391 473870422 373223494 518871074 491616187 737319331 963213158 878160881 548961581 146211942 913646996 67131393 392664432 837852497 447524356 211997912 69188017 320782845 756748050 694063204 566530234 428368362 396771650 982184186 118699013 862275972 373811772 937907800 255691953 192065819 722959319 780300451 750696579 543174630 554000139 322506597 463175405 861789960 741738237 276327574 587526663 596101773 261624823 779979667 756060556 122655840 769277550 960486435 439261158 165940065 300799996 233506671 917219108 846092365 519823463 861973774 706996222 13012172 541716117 488014336 322989268 178747508 209249692 111957417 618785451 368308156 757825465 699555029 328719923 917729029 322191694 603807928 339750594 535533977 457278949 741124594 817050456 395784871 550590770 12581769 926497183 394563659 358301201 732691431 791068898 903320708 743748485 430983651 656121629 462022717 152867255 446949304 915930091 615323718 729656063 241436174 809278357 490628699 456288978 489789684 722370569 712327192 586489560 398018779 440606176 625416715 180909021 456988066 489830233 964209317 302012625 939212174 782166874 523067706 286088142 21400141 270796405 763321618 632099101 694864370 377440221 915521619 506321956 362859007 651964532 860677390 164870776 400304212 175788481 287428159 911144151 489254465 809883891 534385858 513665566 445591419 428862944 356837988 24294494 717453599 438070282 300344534 273542600 660498098 882737048 758088882 47635384 739728160 757340758 384006775 133433265 845578691 858079422 291815312 48261212 963987794 562041070 863451319 200946318 587966711 795967918 557126632 525092933 863246652 966513519 126430083 492446113 550372632 817005380 708696356 149250029 787288299 350108657 803416000 552557724 398894453 484486361 276437295 469830221 902666468 939679500 910653746 725451710 789900240 790831170 117104754 364676831 370569269 920202204 539492226 609484736 386847864 2529 415652312 740328350 753695334 43031551 310020825 566660570 704578614 282893450 605261515 51622146 107933572 369912711 29016033 304219083 255756884 782301594 214598963 631414794 118771222 293439764 207208388 762568646 460653724 759168235 307252093 6239275 162999590 233735614 522132012 760148619 509986648 907700948 613162641 241350496 721382976 101716767 629142855 564934480 382578515 805070899 631044568 909195301 117138284 232454480 439305142 291514323 383517140 532626017 885421886 158924659 39029559 781354222 758488748 240109641 777254568 637393717 156529964 289064643 700407975 445445905 118404558 982190960 508651543 869180171 698897039 301851151 34523976 514557267 895063880 598271617 33510125 369045183 343753419 287561682 83304229 604294093 465637316 273557812 233524338 412185511 968575950 226153732 922329797 929756443 341305450 770980807 207346288 163747232 270018563 823996196 500366645 311895638 367501545 738316017 809567540 161622789 289696339 777534503 891065854 359701273 190698850 108406763 977048452 399956653 654412836 176490633 484927784 308446077 936412297 675376243 457085614 661137904 789616486 170667331 934584131 61731867 187875201 720768191 536307833 532474030 230893185 835003344 647839569 174523407 452307446 393261963 890723121 878304574 523178589 253818923 327328483 14965488 985202709 35775505 532383132 198611068 202697316 505653451 223997437 764378845 880265859 888567307 73741576 523139518 355563141 291422378 477977390 661936237 405656685 94916016 371651392 237178592 401153828 847244103 803103613 461401785 148608380 939319745 150778507 628364348 56898350 458998934 719590516 879998300 596601818 539142000 97756082 156002990 417363981 883631895 833366049 335510641 404038706 808530557 932115459 576957836 97368488 137442748 854966024 99377809 50385838 241785119 397910341 656565 302364270 196496392 802616887 805156055 363791864 845368846 303018435 432744062 62368070 990718446 841584438 607924443 999988024 681200779 917575238 758194627 999152027 59416044 204767760 637541559 736438810 376485448 848062490 855963615 866333012 814033659 19642704 953959176 677579208 421031300 884049672 919859882 684854495 978430099 235786238 505558247 790913003 221700345 796418394 605065857 102475044 49707185 189226406 635588586 665838764 169292766 660621273 991871547 983340941 93453772 833579601 633777712 404258489 125389296 906738129 551532338 264382981 129864419 913010312 257778769 53705526 987257191 608741642 256798018 777679606 707781482 596606294 438337896 363041234 418655484 349415375 849416903 726600520 255744862 916368964 956932876 70850231 172674543 139846891 356134037 212374121 1143096 425983327 647876956 508358285 295052274 289210791 222027272 550107196 778427893 423454509 961490668 309674109 237675842 945660363 620892415 138789172 664752906 19207867 957967580 954640947 742219420 18148258 898979790 548994101 872803444 598835091 162721986 317224408 880352567 938785275 791710032 178496680 501765807 95525306 746608825 118917142 365117647 194590745 4795107 630384765 439934128 120032705 17712476 620993049 676215706 620938698 191031389 745317912 397180916 81809071 853788099 995586441 552216150 314137943 633131033 191580775 303549558 310876173 994887563 719704720 699179066 92185480 841602288 484328657 629934 639778791 431138506 180514776 229190917 277665707 266227775 457827648 513540504 165632197 894699549 410346636 840095979 787299718 758993885 132965410 667146411 369307056 25610396 294284885 998990507 71570278 19457572 313246303 764603363 189135926 186183141 888268126 583615354 152612372 39455730 988888926 870698426 306637409 673873420 439189585 652504855 591230682 516397213 908816653 42388777 950843061 81868721 569486421 534692790 921331586 140762111 344694226 70634411 818961986 350349800 119883545 229169688 802084950 827702388 53975196 853343547 290075278 651777617 515230914 282029426 269096992 91292885 486314194 294026319 409627561 76164867 875965438 381896576 841729066 963601021 353900638 153261541 663328276 532057238 340346868 371791487 747875902 448903493 285242795 65484663 3703521 533597223 327004242 554386209 606360228 402187654 392861090 159014139 382007191 741988177 464853309 336847015 76879914 591718941 770542509 292104942 147541567 976569898 3923810 44551369 463249942 151486560 294473142 651119692 454391651 607237967 628201963 20403134 877867575 524971564 703849513 122859147 535941646 30480344 946544770 907436613 996206802 807801307 152053231 122990502 574450637 303093602 733401934 780078485 953805490 859743812 147100783 228648985 386681506 528987140 682557182 698171240 543556899 967076550 312223639 899837661 969184033 822389849 690861240 848683515 701709806 521649974 251404751 701853035 541905483 645950333 230847529 768757763 554868061 231518705 905537537 878844348 199656368 120212231 467339126 325389500 169500217 250947025 125999510 989683790 221944663 429204752 265098065 699592676 766417870 952180783 170106492 488156184 40828363 908704822 974596316 573651889 937623013 265512675 355608345 63199381 274562071 554171795 674767300 644561114 273733318 405899851 193078360 141848510 509125571 146821309 64090679 581259937 785041215 354276159 792815012 115430926 649726169 724563409 92297945 677071033 948656791 434938648 205883625 628049534 231789028 458929511 972042965 122143072 426491032 499630514 874081419 93249672 130575343 30476955 791479769 482940238 99046287 784314727 297332088 119569961 239699075 88340230 99856906 374721982 929551426 137280270 53242139 632707545 305861033 321471171 439686167 644157546 62936574 981048837 237273946 151177870 199271916 770651753 995750183 461633419 607907467 593132069 999649955 746777033 730529878 210433303 112461027 80589789 717847604 122334148 810614750 442313086 588473970 403578977 939861879 105224343 378406341 988027330 272649332 773733932 791726152 142754407 450653069 616145269 113460868 872999797 653884498 567717066 413450339 822141886 840262733 151430833 534054972 147448505 137627616 173455571 195324876 261989250 182329186 990318852 747957563 972642278 989899786 812503103 366702096 134467921 977701113 125609897 464065605 604265942 122616375 829621130 971990838 434215228 344918454 993306201 999976104 974377446 932495442 383385519 986270152 582944230 193806539 792674129 279474221 546206190 287442119 738547750 358952659 842042979 971901915 879568199 862568735 229038153 943646333 955330282 317607388 481490512 173288209 518095734 421958212 922638287 508812510 581742709 809313011 197367750 662264090 464773017 653795562 436279261 699752409 557176254 668073629 102422878 818890526 258061290 113724123 738328136 709922770 418743877 715280357 852497463 911314631 33883426 908813408 797317486 178716598 718249982 148542040 870521827 355467328 675320957 229011522 669191723 497100014 571313001 102281213 50666114 298045490 744602035 138910156 694176723 756045669 317940090 374793054 910731436 445472713 916439807 959352520 398949445 381229444 355544495 756470663 806451066 531148970 795885339 163136384 893127639 184331831 221697023 639695873 438770313 516825862 885294398 694352063 10193767 493584100 12239591 940171479 493534704 220254594 395201832 592192972 92989005 500066168 864364382 237914254 694280779 502332744 687803662 525392500 963803234 947575900 299301602 162897464 489623730 968881159 413418412 650819839 360023554 581862012 689225576 405117784 394190017 796619747 882316349 194167864 989051910 108339009 151967088 692173820 259002001 303186823 962298486 391674730 853819336 429914771 220720110 880385711 580104380 459467296 90139800 845786206 760010019 942050012 321381984 664336502 481428573 708539223 364929368 901799773 219494512 756096264 236359870 442503902 337503500 78084949 503341554 64020786 949057672 277331075 84026242 210864627 87212261 314751171 168378401 767136039 208510150 261259571 224276392 975176252 268705921 138234062 104280093 853959942 79627526 856828803 371800232 383524036 264740088 287221534 254930080 668205849 907679648 897465949 403373180 275045652 683991528 649901020 227737829 183965739 60684652 285813034 525855648 841634104 987681130 890842550 68741797 680059778 847860168 416394712 563929356 841758649 399765015 525302738 439780890 788693228 649090188 859555023 107986492 51060638 916559112 544235484 355396608 709416628 555147282 202161399 241499431 368663161 135259096 571181052 384419729 668223905 423758133 928523707 215260232 846079051 111336099 100536031 695062149 261266684 847071565 840786180 737490589 966390691 415624704 772149676 101526804 379716754 46546997 48433984 943825304 394635 288309003 417994257 318350333 513499309 74754631 422949207 216613691 695969163 900954970 967171634 250528374 553968660 325392989 605384880 776836605 251762092 726223628 713920190 549202492 353104917 478843346 844956473 308461782 986688637 735077563 910480094 473615753 795314295 758222975 386755930 249324866 978685698 956822911 445552699 585589524 489317765 480591038 82226685 657307451 372535498 490224881 262575361 348943385 958303753 661850473 299706509 467894075 655543773 726798634 694988757 309152337 607548237 235221978 711035123 755756603 592734916 928389833 18654183 148059639 885160217 155565548 638305689 977540020 334595211 573346020 658920157 464021445 879004602 236159992 291311978 246378404 301310136 972594966 884303587 988041460 138838010 263640792 965569999 704455297 233010010 869953914 389020835 3156798 966008096 397560807 892256435 728350024 251329275 630765225 549019461 506451168 200223995 614870780 31637631 774750576 849350817 235751357 396132980 274184337 49485262 643850356 472979999 719302902 18878935 481989201 889801308 938260362 210472043 352643881 956150008 128639061 912705705 415977084 967270821 593023880 189472788 926703220 210682618 555462785 67932575 926477020 76471673 219939522 734276763 799941167 995415180 140079353 23065541 277733513 65012610 985388022 614058051 191880371 321457817 745590198 138925219 825300765 685750252 531666010 82456025 845236445 648206473 754721584 894156354 62968498 141905758 979547562 947567782 566524420 317911112 231850597 678736690 573868515 361214212 50817569 453277305 295443970 143260223 242209483 816311414 168581574 104868488 523904118 377117589 794025780 964264792 357894751 510028188 476927995 469612050 489146855 981131463 245353586 564007679 134160793 433124525 27102360 664034894 26893865 208876889 712139031 881634589 138871155 764920370 788387387 210023527 302521208 289050388 828078842 448396825 219707753 556499257 526543865 282951172 166547 622666308 488502392 483791073 623375218 48099655 917985644 825701712 168836779 743714738 503524458 334472412 334726155 99309158 279543475 26596599 427318657 308914343 484204074 835465719 836966442 564779811 727021157 448630303 431071565 656622318 288913300 79644825 890175310 220297865 835719066 473273460 235107526 389537491 333906175 868255150 512998255 505205277 19817968 386651171 184201515 139194141 427565895 689425566 683407110 821924332 965358462 600524242 225110069 172627221 456421314 937285975 148593422 26120834 224017121 173736623 875013656 459062408 247124049 195236928 867689217 868458214 268388656 393255007 216316310 881649089 752257352 751428162 621099224 530072227 934867975 993541903 365025767 115686277 419875715 193556680 185734412 477010882 499727230 322570087 121497792 310952226 828368989 698495934 862102685 329552591 801987633 984832146 567442529 344496225 269693358 407910797 2593021 768564434 754733880 753444924 557210496 431690122 182693843 386454301 866867242 318531415 288270894 211525263 749413722 389805932 360569251 385531354 459720863 372319335 177886510 367178800 328207784 482622284 437427323 640752557 341338964 190622858 369353426 993964622 173882020 409335543 216117296 530524416 520026563 81142479 254397490 854348435 172227847 849884341 564333344 344636606 123527656 253683899 969307370 433602853 188937738 663896402 544842790 152086097 74729531 967176280 661205778 795147441 353852267 233343510 527570072 808241569 231645110 132714549 542098247 871661665 547071329 209145037 399321172 609994523 130104277 31500120 514664096 406537182 424460966 832118718 430158257 58991015 97570960 106226508 113888953 167288659 941736565 845385142 633274762 810787502 165727328 124158491 36360105 247474536 85555336 273178623 602509115 12364317 998934594 731054159 149292558 503875403 824138520 758345822 578756250 823542362 813619120 375915248 533941503 294407329 522451168 734722853 950573572 622448212 182106274 294678924 815558169 154339734 694641945 334542105 762145874 360610163 99990930 770832427 842251635 461465302 66748798 640922500 625639646 323809183 996671866 703613780 585861542 289188745 459271242 981273649 601908610 2263362 754477015 32630295 68656592 160068442 647622196 474003307 398193306 692384072 922124959 825387003 17595786 319655537 997495928 172420091 43623677 756615452 984681036 250844424 698916077 506313594 718615761 728659752 930424324 388653735 523464157 544096715 278944915 304354206 503772023 714895043 617316239 917237329 396535495 669782861 937068438 36321417 439677731 141354766 768395249 149003524 539129095 973978391 903446417 943460962 544712467 871233243 102985737 702262317 611946258 956421428 244953243 99136980 707377404 724538221 243481902 249161141 689971689 606814255 189520722 752130570 497136413 456339089 685951804 533737988 602334467 325237008 326981325 327675054 16468525 711762065 856017548 807951366 588314712 882465122 220866728 164876267 991308647 130256441 692396025 8439076 585670756 348961582 325354746 708891238 855974531 571049167 974023386 990381896 478624800 386845440 249526371 599264590 787159486 898308639 244636940 105423583 302882056 315088355 598226934 547877965 517516753 380513395 426684136 320942798 300318485 224748892 830244691 738009480 973256693 465246356 666544969 900393603 347918526 340250488 199181967 644334511 369761765 336385487 834675080 530824165 428539650 753769666 321749574 319913961 91401690 434365418 757476222 22380896 755801433 942099011 910951827 386175454 433645198 669717299 331777929 628939228 19367866 570514821 930219022 685269437 722557758 877913712 286663804 448180423 575041189 805344912 508360660 897619501 732238753 861185261 893806008 339583495 14922510 244764146 348626301 676108886 657627121 715429492 158183188 592004614 745000050 725664435 248020001 188769769 693121768 306748752 340714 158365107 387134157 481890396 645162335 672631561 639251904 62341195 875590165 538840691 824182933 582075127 874336074 861356128 947582007 330847403 45720557 746419759 176091844 618023696 863789700 771824414 173844609 576292926 43247181 586317140 648671448 181663664 933959203 783717608 638462813 259350860 745965966 138716367 67431112 727596129 570487743 471918568 816113664 154908834 141983372 28451330 299402510 5016877 897880951 142077644 515941927 822859143 650795169 799592158 731159207 852397212 446379487 212494011 119778316 69349317 442984359 247018955 437119751 67489213 867358743 890087774 243357803 626131368 854658549 369398193 251529774 879160852 330893237 767219937 649825913 740641785 87561832 836934651 769312915 884792753 733775058 418008558 978473458 729368576 110224987 553960596 817560369 114772761 465799693 918609839 808576275 223288714 293989794 119356900 16146818 207086422 498082940 637347274 69271699 838595810 364170399 551509209 914664831 265637366 915673019 808204913 976698282 315699919 747408935 216711897 491096994 960703746 162915811 734011463 420190232 173731995 281102229 1123280 458479334 208056067 736098188 355764344 804558355 276010000 803135682 687160359 668968135 124073217 490822613 40796335 443205716 204843387 744807434 560260808 268009786 18159753 267087955 214416660 303014425 264609 929391686 679694110 558413501 661884835 957002533 246650453 795962136 581942224 593782992 567513363 790384200 807915739 848533726 728189849 137881487 474254290 77917060 149469967 171529044 865541433 313331358 232631432 665584179 99549681 182221496 576691198 497551329 967419464 355354622 40776016 380941889 491546868 676068682 74903371 737696352 469558291 897307416 719208091 274588530 512253991 616708752 451589339 361978323 162933537 478267524 719168910 301059075 694607189 419034728 222505246 946984878 286601342 348319068 276917720 373909675 537788612 592967466 494764794 236265457 45835700 805292349 699367331 290023587 499163460 420199343 125599194 544925969 136456398 842886207 329126295 723576745 173272603 903525714 337064874 689573897 429878358 926038266 234457308 193378803 494416660 962791406 698147538 597107794 844056915 853477005 600722209 163727933 95655033 6711261 439050813 420483563 485755731 684763790 447058058 982074304 445973269 560243702 777147221 899046729 941508186 719223064 442308552 571734585 85760558 339760536 344134656 476477289 412133114 233821381 62241280 949603293 763808658 925472920 405575855 999527363 460609078 180937905 538838748 401512298 614866826 509484371 229062214 755156049 552124828 579663984 46075018 881191448 933579488 613746338 873963570 733207948 708304694 514138661 929154992 347288482 980665568 885385695 626099805 949329523 87775628 618937442 645799291 550524994 583798096 731124964 208166705 187712634 379133864 998510661 446121361 506978481 1645181 568652299 396490647 328859041 300495127 430562663 462506528 21598762 583871278 923616302 298275576 96523356 578304991 57327075 327841745 177725030 688998063 795852969 912653632 987113384 778271885 337539665 936266187 634829216 770737867 498180947 867488473 698609918 306170921 340434381 330812860 933787794 371508170 905641094 422361773 826886235 399186495 670958063 606444492 566316662 354782840 431571743 994754085 213654069 382127318 157856467 155218087 248343303 913329694 923580021 81168171 566835078 263478909 268465426 442805619 559765626 193584260 179289186 420140584 3395532 255038521 696945606 296490460 841726353 969893369 918547268 179398665 370426622 617935252 692130443 539968015 283656063 250167619 824611313 51147319 898992024 400704668 52319094 5933746 295183873 483434411 817241539 213712027 73638545 792444376 139474727 825051889 799933263 39060734 215759511 149314463 904202597 853240916 685980338 247697012 600178215 844508548 907690179 273731117 616951822 269228440 370373047 8177513 188518337 66711048 877305124 404113327 304706311 946571185 951159372 13966453 308840404 969893335 855437076 317192721 375585606 789582116 919182092 895967941 761805471 167199924 886498413 42973114 94766665 661038849 650448146 379201027 807992536 599022830 197497734 116357526 610556936 317900493 544783350 607127127 657025468 525920590 29419836 26533135 235510527 76816020 190350292 391940719 168981250 111805216 845538536 301696012 523634724 112505568 681431365 201349487 309044456 707007018 523151461 956444413 546876663 731915962 564030306 373033735 127456292 282675896 340083211 791524038 750680429 142154670 292322248 483564892 558338546 736615316 868914869 714683605 466442753 231609286 893438606 493753116 180342285 496668681 615625150 97755921 247649710 599422344 280763472 155237745 989216939 534631391 741546750 990147558 732370415 900135941 565189161 549099011 203858059 353964385 170853586 523188797 424299195 212006079 94068652 634532603 458778851 629414742 6041105 398180224 907002510 120112583 136158973 923624708 446038897 70320399 104736790 217716122 645215331 268840864 786524846 846607177 889608299 446026832 944273084 340649718 149403569 669933914 243792862 299319155 810997387 531974503 617971293 490061435 354587765 263381118 625785381 46410157 665042702 909746968 891087312 163371413 51485479 587075861 218614684 226050208 691881903 426065588 376037490 682854957 467650752 224577958 104108254 76249462 440935074 734539265 651539484 998966957 3599551 525936448 16343814 958959578 649006246 780269386 340984617 552389631 50231576 452903276 588536239 683866102 397309172 771622745 755643505 644621708 480883272 358042673 477065967 589572210 650852678 54293880 884812622 60202307 650044235 465601053 983932770 755521148 686237143 657027952 955551647 663998344 703305111 970321460 750366242 202497976 920124765 206423438 869901751 248993096 498761510 544043015 930405578 170634838 461553431 170330777 800361588 8542189 942316662 199408029 149057907 472578301 669273274 363136986 42403118 415890785 705720445 692507007 331147961 180336342 543744645 59654943 940862403 968384011 382846648 513551032 631040432 654626703 746583340 776549551 932284553 420383448 382658334 911273171 671090168 466930508 605536240 976403284 46727771 974372146 383630381 190293463 214447531 328163516 858072713 717202011 84413075 948819717 497634523 506341457 672880991 119265032 984504620 941647754 518687499 780916404 488164005 810947400 935333425 563632602 57915033 894258991 32514077 480296241 502439810 305877579 318550970 469771099 187217415 638175761 135846050 48606688 610710511 672609630 958920212 302230069 590503216 216869754 445386230 213366447 40779493 595016977 659860442 720874897 796578895 495054134 836980212 366120965 277203932 945112168 210169892 245467933 457179678 118201230 441121523 515153615 65067729 613072627 175085711 761807614 14000598 646401866 868673998 175364212 112971322 485542071 987973424 14702049 34233138 748191160 544785886 755175648 226265879 262631998 853350567 239965936 782871661 306641056 125022976 394093692 847519965 270815894 393363467 805331924 157365310 37497419 342012813 226871346 915115401 982692169 416217844 122157241 749937121 457135492 154549339 530822510 962032019 773133917 787420545 620376132 977788176 14357396 224048841 561941526 412846581 456220764 26704967 643300772 33921540 7785032 732600494 129320600 66932266 777870421 713389666 12008066 421596537 19406310 851925607 93811676 383870506 600134092 614914925 23060744 384069287 364285754 33793738 253152078 593789045 650812625 648770945 499758047 42957127 650986384 231841078 840789716 88619004 974497769 451857209 439505969 336611735 36179630 876062593 332948700 750870593 758274590 772040620 109823912 343767629 317966561 958545924 81268814 250255160 786031871 150089849 171729008 999497895 673783536 203236255 918152341 59031393 180791442 180644788 317787952 301237851 301894696 220032933 197924762 696646063 612099426 111383548 411331858 107424674 214310482 117688820 439555014 291422625 15092857 261316202 782479301 283612989 699033017 108811493 763257862 440185649 976309088 401206935 258284909 511085665 886785828 111119699 528619971 647619287 49759269 222102683 597185206 447079111 742183905 419987095 165614821 53524364 934162250 443260692 978248909 610119851 505137591 689635467 651337174 126363340 881539553 527559449 746860375 906775239 698662128 628509064 113453445 718132371 373508976 887423046 65568897 22334036 974145624 171974762 29149015 34545495 575295491 315783861 636468469 412201231 862746935 208267403 693375798 615196693 896020002 196202749 506591709 730207533 338398552 574397891 102832014 229272643 101132505 728539194 423406816 935312234 149619463 239162477 846011721 614550495 196209071 151544329 537655341 846622466 716622601 360195429 676325840 888163683 849977520 710726783 712398952 310767023 317011629 743762945 54008079 608084423 178477673 333199929 812860609 761472937 672689593 260798495 256717676 745496196 954343903 856739921 583265502 923542955 879069307 968148500 807606741 539555734 719327901 379760735 920671469 962613996 803383737 267019457 983795632 834255225 663442607 874671228 949798804 654800170 743443136 572560763 964766444 532008738 48867996 534029638 835729406 560389280 818312536 418332 587938801 613930510 330673520 326710743 546214868 226700292 214881228 345897729 178434471 269276217 844114105 735719364 450487108 503686800 589191910 152370945 781807993 214000664 141801080 457714988 991299317 375558658 791339505 174691703 564812115 182869161 574583103 82844840 684979729 713468561 735577271 225822269 768626075 44202853 354855956 189387600 899233859 724324599 644155774 55688108 552712510 569009733 509354624 378273985 813220787 386296432 383051540 893386913 62867367 499106329 390412947 355386641 289275149 331526835 724160707 198101620 353500860 415887067 86116048 787663068 118576506 772127740 127008850 168854270 433561837 486144261 387518532 948400445 784804517 901620999 178825741 491822237 90595101 51364410 70331514 918187981 914269879 607487752 98717886 545741348 481470138 71987449 965482362 430055589 206746202 590111166 816225713 769175797 949689262 294813750 718430161 170453602 588589754 168755042 628970669 865784548 694711908 777357167 483569796 623765019 538140543 612016815 643280381 587164750 288910787 377300125 901062433 774533996 677466834 844018396 599694952 870055948 607695159 753421881 215222704 166952045 964636510 514403748 755084095 123837817 290345128 770820924 16480447 14837690 927378001 241580869 789392452 506244716 406247554 705635621 311517011 589278317 945363791 238972018 391905225 512024899 982447022 295376361 531010807 250570268 963852420 839361642 550702224 356629205 608935319 98476035 190755254 922246889 787865243 885209831 728451051 787293821 889410087 238761583 754093595 295853412 867727549 52215326 423312284 288631831 880034758 872109732 651905839 776915633 902708372 147887312 646682610 615285752 845327712 523993759 130721914 723208801 792060493 954628147 22994872 330618625 874389599 688173272 359063049 530869908 209331340 78189568 375575092 996023428 896592045 153683019 970643047 440220130 554304641 758207092 939179826 720841826 60277938 376295535 87679641 742296935 643683795 997657672 72251645 78097650 773124440 668012353 995333676 116019384 57021098 801715383 135835229 604981007 814286350 635237687 603380523 687144437 337746869 266338679 826858652 109845520 514121400 691641681 820055070 612829106 75845146 492958406 543767942 593165266 646949315 230010115 560746003 359602446 386228612 433939804 255101285 396740270 80847896 572548683 52188300 608104352 559312926 727951988 342125824 597705086 915528995 133308321 274797469 926519684 150458515 235266502 72203685 731410332 639452875 183334400 867806151 389198677 178451467 708157840 189423899 179604708 913706874 108698850 723685915 69033512 522484270 278963336 410297773 938674605 128193054 279645249 13843484 800703900 394254122 137710573 859885603 364691154 731951647 200734870 144446938 861600202 901986216 7792499 712309194 56775085 459765604 394973914 458448350 82016075 553760976 119972694 807332460 761541144 229338715 160352908 396904241 519275830 276224591 245886544 378309712 232598124 428039659 121745313 155044186 952740651 812548685 657364894 997046852 115885959 817335169 938105492 844086376 811939648 326466421 107566326 656629135 149777086 53726467 374998113 14732002 451869200 845703918 506736278 907966459 928467438 777152222 882478720 669054421 125609655 821214310 328677685 260320212 725454192 959273468 818180332 967064774 768372941 726868998 587682827 433188322 208998431 198030792 153663519 268402116 138599019 436055158 813650134 24413041 238382419 257124904 750008592 923650390 54876715 697312483 582837713 61383755 652425448 714554763 533000511 753091208 502377769 47092469 785830832 749802167 572930870 725403351 129340576 981995235 643702527 175374548 605378482 334336897 985321754 455719287 591596466 745343086 447924678 495300398 177992081 803500018 788988907 635537751 394623341 404408761 94125081 856007468 144097156 267832279 28043652 203092189 659541832 310866378 581791502 722032761 551335497 705452919 545326143 600077559 342139712 581964333 732725829 275749178 269732116 895910301 452799734 289525517 716233681 689709801 710973397 714991135 884118950 859813266 96235780 849520392 347475952 328191626 566341207 734139469 985957429 400657699 925745731 999183190 304232730 254954522 57561831 845548915 146977147 60653718 378742538 52632285 885021514 848413987 394999069 189163446 992615091 905860792 433385527 458072328 799630072 582455729 291321108 211466692 47351189 188213969 985517857 974959555 160493857 913175113 982549353 581440197 405584990 743839917 34287010 2677109 107862843 384785400 339786544 490580578 832984519 348202645 641788439 895966473 843550529 852803147 351080456 916418248 174208264 198126929 394963801 72234986 896796077 533898054 692699144 748667552 734845406 80776750 570613951 631155714 494323067 334298999 516869069 425502994 201401987 917268725 72884263 988293562 304693283 509044198 540314221 989367242 34062252 331376113 705946087 280563197 554330527 517932574 630638981 940445426 254367387 887052264 689087708 558283317 604556394 533266475 187900718 86421811 384095490 767508008 498821217 230647880 567022463 789180563 646718979 914621878 195388193 582099068 642719820 174381223 814559316 761229410 10653468 652017193 625605550 106545962 831305978 832228918 201935593 546785058 347069973 711802034 237318631 397833983 2961732 238071907 24729523 322563292 914992390 683332092 783016834 23925571 429298308 135647511 503341999 78647836 8153738 860257074 501973179 548021184 741570197 353259704 208443475 162244588 514118588 905067004 389858891 814694082 398144463 68230711 160656797 13602772 547075126 440914057 233542509 814533397 216352013 345521912 322029063 856107486 235973137 434926461 449283546 63948794 925373867 459521257 158218375 120995478 951714791 307057667 370912719 177004356 902745983 420814451 248920218 274606341 853229777 149868489 996619265 664463675 533503719 411518589 355211836 733806260 913862762 995761396 502988719 728530086 575171257 14751348 750508002 973437358 135484622 806811699 219660942 66137811 4304978 552837187 109327498 392700030 413717653 405826731 855083229 861468553 380108173 518889042 790338991 348058156 334432472 437743112 105681747 612660497 920653504 200697227 779348292 413993027 337442611 393397367 880355626 925182521 416721609 694571865 249736651 888980684 208568767 433006239 558814749 216326729 940094719 184786853 519744059 984408661 73200405 655613352 724773476 208995080 898030909 990008537 265041931 800821731 334007376 913165632 796772031 877822662 336180188 42011103 65661241 283066112 897111308 145088400 796329568 626397256 613526968 881434656 981615679 347325371 876496224 629032771 971787013 315203293 972031530 999105418 809919507 310127257 253337064 65000830 685362408 227924552 27450127 223298180 83990579 206429862 432290237 867083248 915125956 532118233 831237307 908807161 758937239 212106605 442910328 461285057 880608209 184202070 940962829 421222737 544840122 698924279 436901428 738079387 147999176 458191118 349753434 674405496 122326678 143008205 108512140 543941801 768840935 454827975 352804226 929781209 775295652 35300089 761436058 537712277 539698660 523509194 947172828 285299291 661800929 93330439 967975926 764580487 506797051 951526373 348131907 400090472 584015042 777855232 822231229 357543725 906423014 235976542 389475342 102586604 460742724 235047534 315738757 974668203 126361310 256709123 979750171 625546577 262214113 910927706 966682218 106617776 777973407 66691611 466513345 875279232 247877010 152767825 698591241 315909989 194475360 661225072 236003035 680351972 393983957 587661401 434746743 544488818 591755487 794330190 437712835 817641831 226309021 732812030 121027921 26529540 766559570 952450431 542435925 98966387 133346408 561454667 298041007 59318723 66351988 857179209 418596070 545810927 430439984 948393416 77559084 767560664 792228992 492678522 628870741 820559433 626585968 457509249 187620578 328735729 204596785 870714973 83277819 384062568 617136416 159000061 522212461 983768882 216437438 43600054 350240177 462709944 70376634 856829513 938213604 161166666 782969061 22052054 962220495 665039907 373591097 891913709 884380130 656816226 711897565 521344386 3264819 267603474 907921942 270649077 329662849 323246882 30834015 778792457 435551541 795519086 92949837 714576874 663004252 701066424 5387687 152935982 577039278 172619172 857947479 509091797 584801165 786937545 338087279 902886466 209285883 826854558 571557420 517144642 358443691 202100611 910649841 977277195 29143538 750121667 242612809 787504441 37189075 123626892 872122598 64204243 717306864 483325948 556547748 461292870 948653471 581058578 580373128 659293286 635130577 688970937 200377533 139658096 191296806 106705598 729672085 275863821 357840105 970549727 418509449 543531844 778360327 706244538 105029952 871536784 625986837 592341208 983891588 886183116 446966870 929669038 413173065 85925436 885882032 256855442 188460969 97149072 908198067 192118727 682385382 615039962 506091925 783675507 734548847 751535514 924098099 846588843 520195027 488413620 657309720 751774822 350237648 601908086 647530100 750644103 533999691 198355605 388552986 12858583 4652874 395047981 629797772 26196484 114469637 204741061 822850035 18541996 524745428 835529288 510193177 993704527 932011581 788844302 134905978 923140948 613415402 33716435 878510898 675580428 174062764 744712381 999815948 683285685 452246658 38578519 381041780 629540715 861448079 249123222 69874818 30542138 499726109 832784349 353216503 281979155 98076317 564669675 446598199 477112015 626391212 330408688 575731283 753181230 954608654 645528193 979852802 937335258 770175152 264545691 162291365 313094758 953967267 245339297 845353536 398326091 351034656 814034788 581619334 136239591 721087887 434614297 847348172 14596228 16219766 851993690 283143697 462756182 770108047 500472881 502207997 112985462 435513263 637713669 963391455 814676452 747724252 828138673 478049455 538218121 692810817 618240623 812607243 47466295 559039025 862639589 553671737 78815397 303668263 783383073 97422636 703928695 127559368 979799704 646947192 49618231 465789917 787341351 928579678 828681554 718587226 519149074 483889606 27960356 62252123 810030857 942208317 442713585 14491683 427011617 523927293 981890524 455940381 485236179 992284384 924836093 651183067 677507848 270289266 499696967 408749081 145828877 447737059 913499295 231322044 475827094 38411271 934004685 756082124 991583683 343700831 348817794 162958208 858073365 53072915 543963483 125014322 255981948 269054702 461968083 571102053 642950476 964897645 847348823 677352385 108317252 401186475 546048568 849957918 359165064 937800816 966607279 976161143 976389542 440582700 365004765 100659946 15910803 119268856 897834186 159725769 422879661 530820498 337745514 623872898 76626869 254303072 202477973 974995636 296656092 226860402 572549388 471091233 635061433 620674687 646182009 169029810 117209671 877389031 284776810 455081853 707967208 340672944 850742879 365361340 424981870 338081674 524131248 96634066 443926286 379898316 769979566 820133711 429160037 102434166 478137480 734568927 131968628 750449713 191224662 66547552 895886253 225652038 207015709 602957015 775992035 639123125 773395137 454381164 121298005 67994133 156721940 646169207 507625127 786938290 197804498 939036271 967962087 204707192 75137180 393878006 74209416 69919747 333239802 57231838 887096938 117108623 852370526 235129621 393668048 949111554 565986081 151574454 924107882 391542512 166230403 384179718 727837261 854231181 216522670 578045297 43259123 806133431 846706100 515885961 577494595 875480822 678954639 18884360 485471116 101889658 216553247 275984596 698791553 769794845 467351341 885309176 127178303 967823449 450480233 348808613 620060748 429745240 855031663 140418614 941087641 993926890 420024511 808068659 847121268 572224646 657082307 942809664 54680735 416906569 616148426 33464630 603707966 284409341 893362960 910688017 396370143 48175886 942706614 787081711 635036535 349278617 100079812 247332125 820505699 828883031 342478122 345136144 167813225 996880048 182412996 257980771 507983795 926905273 407415635 337852889 32632539 941590306 976956287 473128283 198905307 22081615 153301465 383371265 442748697 140327750 428505050 659138305 953731682 680252854 922442981 467410369 27224045 468491254 799460675 203182285 45461333 76953093 129066787 24697558 363281057 360305804 593103776 380947896 540695869 107239896 181058493 624802680 828794111 86877923 783735648 697299265 15111970 295262792 349059675 529918051 282195281 966376787 131694441 343154525 418939026 446315759 479039275 942523086 729380448 615935670 667651366 474620039 834968469 394184679 650552016 763720311 571368313 696881768 883721346 25207736 152845492 163998666 977711229 311942034 694727264 398270533 905051113 992323182 923164410 308323763 16415701 868354272 564356455 849659553 601535039 30779040 728078834 947404602 567454469 241884055 130519378 870778969 152205042 751901387 609809316 320918140 89870007 798782320 324639086 189131976 870427117 935248357 766879387 167011857 607945234 611464872 806010243 957960136 353221526 899289448 666585569 206122257 87497415 16662520 406450140 213313969 448290010 404109138 866998016 16293145 996488951 385942168 187215682 980033887 619348260 641894425 950056450 319643202 10224467 530833991 763078402 300505642 327214685 529839803 260436336 37230375 583407360 917415224 565988578 168368110 122083563 143176365 906513494 552489696 712963501 887878187 965317425 879384324 745283006 264962541 106542652 524005131 496413569 895763542 725188786 551106631 254745660 90413299 817508142 196035517 309258020 149443959 775254197 592370447 85991506 340803258 953933236 194729360 512554949 616312258 515100417 857946425 987721318 601436859 837632729 933530530 508129546 521936887 426447843 64177435 491111783 69431026 646975015 547306893 988443423 165198 235655200 467628433 828697275 113963479 224340393 405163366 125021868 298684801 25000199 447614967 963703887 969061476 538786278 658417100 317408991 37593288 872312926 700290084 939532424 764877333 268398059 536820696 13339998 136905695 568763507 960540787 619970646 234363107 104496961 702780707 373968981 184511488 666543117 444754367 226001696 960866116 867732976 299567559 681693292 158758628 583983735 200065888 361974992 174832696 675132550 404828253 70367952 133458630 28356987 239485234 88524243 991904569 819987978 392843265 570080041 843338848 475246433 250850702 451813644 598727741 895344649 916302411 364725665 998945517 627672311 962626894 420261357 931606974 989553800 737079639 294961379 304689700 260000132 657133004 35448923 651686584 19467287 328902079 42254870 962009664 982609621 29049059 17926848 323117734 575374778 393491099 810586345 292356093 436372783 862247147 296511499 314006401 932307198 887894917 10815362 885583509 150955360 201614016 674133406 622188480 889242607 180045979 888132239 826226620 347451852 78596026 370854251 419236963 562043156 769707123 107977524 935052724 557043437 48029622 395015638 964513502 87245689 85160486 144094497 982058293 409455706 998141194 882039244 235028785 89274532 509267283 721908348 8721781 78459337 628972180 245162168 962624463 582537893 290208272 497071088 686091315 340747388 80963500 835660928 54577590 195353089 473344761 733085353 760391589 85280835 998726700 866469779 52101730 439263683 666165543 927649871 986058886 85998439 914538092 596769494 967371211 406350200 630279731 33260813 111269905 221509294 50688842 863540663 822155881 727438630 271061560 484695947 211670016 498061159 774153247 4972062 244643126 151832922 569677776 611751156 222326412 965193560 664664772 83272820 714769328 841797918 740667927 40958707 626550386 306735310 759625107 801055654 271130062 534198264 446356644 919490482 323869417 546905235 877570917 270124316 156199434 800563192 741132690 150473690 32033707 607212015 806556567 474473154 121311584 190630308 632875389 982053012 743119600 837588140 86571519 857280767 98330952 935431174 64806778 976745871 186885496 790334743 772210426 159016127 386718140 282944170 31742761 829954286 102667385 947935735 770034529 213599082 982464824 644059032 46212256 771069792 819138989 310567063 394152078 432956652 880929972 886451549 139622522 235604492 802518351 820005567 770607709 463633326 140957099 194770686 731782098 907011745 863041560 21770429 989643554 246591131 920118807 261453832 592236097 580408130 247543108 279964504 934319550 606781213 686684272 721527430 342628320 958559900 136244876 625723355 892239753 918171933 959748531 915746563 878240075 759506397 108468776 894514705 285574236 527961861 723754329 91250306 827606427 494104745 224917205 825256000 647211664 467236286 157519195 719695510 55683690 341070123 971549131 512270648 413566209 6153399 369631282 114162501 749810130 335315984 209239749 852573758 744101638 138952659 393124061 918652695 708505710 888877696 208558076 350619937 238820479 599048065 738767054 141102872 895473494 295628326 51192363 177301028 376578495 699143337 90382344 226295506 12290598 677136170 626564235 392733719 37228964 337898167 114573566 89099855 524827383 692147770 762120406 165823553 696010118 658764176 781846190 519719451 171731555 968727677 641414985 714787439 106660163 236102053 988273298 193804602 423691141 983453594 805687962 777520359 772999472 129593306 281738400 891726653 410556916 46324675 74345991 969688180 981513259 115337117 210774871 184159272 551829455 977738139 271574340 801341538 365949322 720843477 372055469 202790027 606423466 584884813 994719378 413273211 958107947 722126319 462781726 311341421 587560613 142741383 636144806 300994310 195745637 923265489 298309541 596634708 683481174 450414959 373019836 886594256 218345747 427061225 272092089 55478610 230036184 611665584 642790540 139195168 354069390 369369119 318930519 913860842 112071879 637032054 79465556 850505156 204842163 130105567 892639476 917722668 948192056 419539560 949999306 511698180 595641050 156006670 220075410 981818013 225464267 662544563 445492524 94924714 114974940 823870492 813302949 881943625 610351252 453638654 239870768 689931519 565261335 776726513 828983592 11278266 524105778 369565557 188042002 732373710 115833441 186113781 621989014 467364858 915098558 667493057 751812491 553139042 243184146 613920274 350796011 20341906 548638928 97780748 528832470 837299074 365309450 5292726 305438365 54928271 284590978 224084995 956642732 437934716 939671969 353514696 872977063 692628855 766660722 603410890 196192075 485038615 348274351 425882290 103136386 104086870 373596343 977949457 700526438 391397533 578060687 236617055 486217773 695981750 20095976 822271997 950249789 331131611 918243611 580880950 911778333 321514914 903811621 724670269 894245509 267011095 422452909 395498791 528289103 453530274 968238085 608100854 492368765 487841309 560736800 248939157 570437947 170712771 509262496 626598868 374590683 315759927 17718220 245916527 728263131 444557194 518657428 401843973 128134618 882545713 197318797 821234972 946337192 213912324 893694200 809657900 530471479 122639441 97428413 514191242 552012192 212022716 844599145 704493177 971241513 571677538 684666675 814854942 223131963 777688765 603153916 253322640 51708011 793950641 264258893 959999175 989458035 663669132 800313937 471846819 317023797 277448197 141753571 202040299 137416641 274016310 796015231 475647828 612484932 70905256 555746638 673668724 121333791 752296774 964167455 784022481 370991057 172343908 137751658 85331665 851023623 131578820 338633037 727492804 114666133 569611399 595381905 131215845 128583285 783132474 756982946 16904791 229587146 709549271 525521050 816439583 987562208 230655926 262429496 211988272 761217579 799401118 958132195 350905959 620880708 25941436 810348456 204878976 757334771 269101991 743477314 22947367 236349725 215498843 224797966 768012269 186921944 690490428 980243988 210356555 637096544 455025946 830147845 568974752 391729689 817723689 926963765 566245688 904561549 15046148 237159842 572882503 725950829 973521842 234831352 832914910 588844438 574583715 68020101 478191879 780368399 959253417 237955902 202091429 680047613 756635905 412789699 531103628 891259064 363674961 101041756 345809780 20930233 174008231 690844665 679015425 221957795 875240312 468212273 806634682 744282691 299897760 280392256 415096080 529556873 559620967 409074195 117643612 565815701 954653558 65791795 724903906 169754532 43878119 807768539 857966024 512073768 535780916 172561898 908887587 537030065 13906499 838886375 976556262 608655866 668325219 44052993 222612472 929988839 18155591 176439054 654850593 331536770 632361738 738915216 462263824 431394560 612459577 494521004 889653603 172577211 307991993 461397301 194135957 142194742 213432292 244855452 117582100 808705054 646534263 245783044 994542127 124960581 961956757 403839796 930744350 355397798 858776268 696772507 542922759 454524772 302875667 982712144 477004783 469333965 693853893 3237396 292199880 913769552 706816680 829887564 211910767 657326733 135191275 464920583 938207391 193091650 884771105 888398334 77999620 164066911 734310470 522676368 785808433 317040117 557370820 81999044 970482078 68862781 269922405 742353224 237780140 41287327 425955679 770825076 497504932 154234786 44022092 676101705 778575031 424022525 703849783 486760301 591841024 71998601 118374794 23745069 960099198 317239369 955592987 306380421 999046941 436673384 114838567 287355406 116567723 490415165 671835987 376695573 998866403 951156798 900448939 120865159 700654695 22010642 880190630 338761210 173149887 993546114 419734818 748262576 422014812 231983746 65213541 453591182 282369433 282891822 75644441 795382310 610076340 70733003 482681429 907856554 70024411 918970303 204199061 283641088 270856219 147471521 990705854 444042923 864210287 989620778 211370529 71901400 7174584 741051713 216147568 348107620 533198528 39845869 347380936 820339659 711323703 551113316 788126384 543956532 628148406 84614144 379820309 154677360 523155650 549412420 723785034 106881271 162232254 815402463 745778192 888981986 686371073 810059167 963749003 973813760 330850497 325690753 49733444 844690877 808911136 506452392 707737911 282506800 435972905 450425698 255963837 755825176 400356297 895512094 278410395 370556636 796863196 780443773 806208769 703232398 935275045 411607866 358479488 872401378 727341643 64268873 532878618 731042105 685977055 428336566 810124594 305300378 899325018 444776128 566292630 241279669 157523231 44106957 241960828 109634783 26418807 909624929 906519423 853848598 914430608 333616693 648308901 932900105 214951048 869370402 561477722 878597119 770504543 236523051 28716662 262198258 127806716 401824637 872782389 753167234 142048562 686298985 627024700 969541623 377391288 658711660 416724632 997031484 188547125 111061288 167357375 988368367 962582826 709501802 613664143 182496840 734765841 772907813 826635082 392120628 560116282 121762674 137449890 124154944 337154799 259544982 120382376 294242211 317089877 325728764 560646109 469996348 399008637 381383990 945420579 834422164 482945118 472492291 51093449 122851544 7918304 688470849 651058819 601150944 525484999 911845119 899183982 850994989 664190405 552255345 498976529 797592036 295578228 670449388 145045848 26757844 615945559 506456059 394223770 450508664 899826387 590299717 834969746 241148651 207918396 146977694 349073767 285035764 103502282 96851203 405581989 666513671 451963811 753680788 299169858 821995831 603349193 408644510 111597467 53816133 693947697 360863124 625783924 12375446 983160756 235242771 626344447 258541629 464708370 139766746 284151755 987636718 740634361 507726042 279189207 249324298 945489650 773893408 229465227 201853080 208879487 467306732 120542643 135337287 197207803 57093280 604195202 508006510 942181041 624947656 127946390 152717069 376970707 768236565 763402232 571501770 247806587 691249762 305503760 881492214 747774118 586015156 933095865 88806792 225236803 335755320 28429611 172006429 233237792 14218302 434932492 589426942 939493878 735652162 64409964 535912474 200676713 379628264 441905854 25787401 750059009 568167420 976371427 819376904 116803628 250693999 524032537 203378690 660400455 448276316 405515797 532394882 810923152 819722251 718490343 568514242 889472567 37171937 249869324 922453154 863920709 651507574 304884078 883285159 442841526 406494338 488486486 108313601 824767855 961902827 513627772 805855367 857334068 431523003 935917818 69231033 58508474 646019107 732844376 151478204 322344089 905546882 726170757 707199586 768666450 299659099 88058833 372134946 10030671 988060501 180787196 447929114 450817758 403159881 312024108 822657043 608083772 181569324 213092590 704474488 483649931 183807783 788881206 268840038 922905809 972959363 189237091 614104985 749375488 537585331 591463993 265477240 528458995 741617747 371320803 573294101 641432937 494161445 875305211 960124450 913774092 757484563 579687804 712944133 605453168 601634357 342713291 52952510 942576906 227948480 923057589 593817347 585249854 308236319 480364398 896640041 651661650 789863382 865153176 53942060 470021244 968443292 53232436 951156406 810715858 721922380 658138288 916106519 441893206 968027369 386582757 709054791 998740466 744334749 871915273 176910304 924637814 629521082 521188038 720090671 170891164 737930944 51370793 811501856 226742279 744569937 286522791 811822669 491271485 86073141 246034717 661478130 403693230 426542945 197576400 922890488 502608568 422851057 252319596 931177455 102151580 305846823 696384010 805295114 731929215 729823855 852063013 636675374 60626036 426914140 50617249 785543136 195693431 209300139 666732493 721807441 19044710 154270781 114360925 818654035 221415693 27934493 84859249 244356970 108073240 548545150 674907019 783532987 742832422 545765055 269263001 489562390 10186423 781921376 892303601 435165941 692277810 672228620 30544974 785520241 167311850 897243288 204252891 575473494 229461270 505659902 167059998 729133330 129107677 388655202 103865874 850831292 389370176 831884814 962328594 558016276 304642616 305113977 259621858 206285696 977280667 287363129 447549104 721683218 547177769 170889236 32565268 829250174 666977675 358800885 24468745 854734885 469054805 596641518 160461555 329876749 245884158 105677630 375259294 640423399 518375144 647825733 210113860 272835080 998650462 997879949 380649347 147602035 901256334 493845709 228726360 914372811 385725845 914018012 681272376 491838561 944522097 267901890 710671863 703831852 645361418 622625191 53949903 962620621 898795830 598043873 650974313 311527303 861180330 766292711 23623118 45666639 92641292 610364254 368398967 238170806 375750368 809168660 224314945 404128771 290102427 375565050 670814574 53942804 582999189 393352490 753330094 21219201 48343566 710412267 181638423 763474298 605456689 913189540 694848804 846444260 766299151 611708651 207221692 163198789 114223007 307667322 272605740 721260488 218908869 538037045 755765286 421874760 358342474 605770791 251901133 702867524 230458079 717137539 76460451 254195683 163163674 707366308 617356693 553450741 120156546 298281230 937805303 702267375 75832444 313172844 773987209 121949424 545123933 8097168 18578800 157317315 428310360 877492600 669789239 868918741 698389399 178304326 576196310 937676605 90601499 193873476 656264104 70528953 457298392 508218854 188044148 638421171 874023592 624717512 491989095 537417529 100933198 264795052 685328149 307503362 634717041 950234750 681693564 583269743 212141216 797689682 937340929 882793604 343977306 269521762 382109811 111094771 903422204 318254609 992534786 488370707 965258193 338342378 268900178 113656032 824374792 882324901 817326948 734382854 780470972 583582999 301581993 213239505 298174192 616972869 728958705 722133818 271774347 411818075 107351421 55387359 175210844 887073965 339094000 146988297 306921505 603966900 885463898 78464677 927331192 6801430 369939247 736458570 554490093 892832669 817645130 116960826 782043631 434678845 519308276 506444634 957514454 193692430 331168984 584213563 413754857 746121558 549632524 794592019 533508683 648344450 401033740 581341635 540395790 816514595 55387584 959904974 892220975 86223602 953800562 245682278 612889996 669313495 510302681 143870821 84670448 783706074 612514578 951516230 369714188 515069999 636984226 166538802 955237241 609707313 457182582 93168632 730552247 599437157 887638246 564533521 989594929 518796916 551297962 336177815 240596534 875336243 956594669 216235094 902909442 330541978 411992377 899688894 885060535 649498576 215396226 289269986 396497755 377250593 852492329 40537988 705727712 242314749 604303087 503653388 480662817 133558271 490878724 974346376 666961116 791003373 810723838 591570350 777185727 871659440 405227737 84403166 254563670 270646620 683627256 42301986 154002462 885542446 481653548 963417894 264838775 653645959 758396584 92849730 408581546 765209075 271319565 919888503 269058836 888380965 924646491 987373929 404445775 326614518 702517760 549816938 188579289 249735790 30474708 541314928 593911410 231204790 285251602 432585755 382706412 383425059 38876515 194569905 201058558 588012843 518060494 436547362 743726159 32188023 160481231 900428804 191163746 503787727 165885246 484031387 505397930 715105063 590389346 307366088 780500354 623184283 871327978 431616542 779701546 314430060 115025129 174576850 166872012 410241801 571048412 767403975 657137529 146353408 89717163 58012800 84154150 749774099 892564896 507527726 309625788 765675553 621417331 217731755 785542910 545471540 690076735 745718128 835464354 594537859 212011403 63839402 533004095 491773287 771409986 898616357 404001106 670029154 568327612 400711771 363128909 775174691 815035061 599510886 549522810 818423931 49966163 186215955 744908053 951668836 809967392 545105103 997283137 425764868 144732183 567299251 308808963 400148645 474342799 871947384 189272400 107758522 730230865 479986574 418786815 129038302 771583627 806086398 497999058 2480084 464980174 30596738 508066419 436634507 946107164 190047097 487805299 15969553 183316952 107825128 963263307 790235554 23999183 469783938 118595930 688750245 288876599 789840541 595523565 677948576 728511917 163572020 858275125 406579789 251654967 431984629 181639238 411050369 360456256 836034858 492441640 835585088 134493342 638059471 569073344 747747258 833468816 453426301 546422755 405044031 423588540 357166721 162601540 899768136 429637420 375336134 600490637 230273661 794520662 863754472 281366591 257279142 951733530 52094498 226559695 769741752 432188603 301252191 194127511 558009549 67731429 565552937 953738196 165657384 790092207 61569210 299173300 45536052 450322069 177682677 951868745 712251272 257958782 449402970 856006279 940349402 652057272 142510366 424340306 466040849 453208820 554169879 442691190 930444087 37421653 449288131 832585377 445303422 384100187 803493193 324466027 4167749 787432438 594524538 145389656 148629257 910484605 908940237 184484816 934056059 828448425 974570846 322793509 198979693 598497953 784622584 154903696 121241559 849829873 56641288 667367472 716778464 644277395 472938664 282155284 201665746 519791070 811157142 56120102 697355041 227249052 982546742 327047495 622351973 420813048 258132637 651794480 242414693 871675784 697159038 677342608 369584651 20940872 368245818 957419256 300442730 275537566 919469526 460585182 987962303 531058010 33268999 607311782 182158953 156195244 520342813 719187609 699493878 930085430 11215130 13047014 18423837 427304954 677567144 978675880 675227569 598483302 202910994 746870241 838552509 86489939 405289555 842146169 435162215 648845304 569393672 660563009 650683907 86947836 672191096 515468276 333765134 206830961 67929493 278452272 752044589 642140871 171383794 603176322 368943399 123566556 904001491 912688730 986041330 436466425 509073947 839997968 590592168 804800967 258031453 389648358 701042572 444465242 487770826 429700103 312190475 91963444 71618379 383877760 461295031 164976954 636513375 114820175 539260746 919037111 457874230 683841618 70790570 660376158 468260269 675723861 172226275 546251602 315851581 700442118 25919778 523086100 54445585 81086977 968991176 627554451 161986038 581732548 438320728 607143714 185075557 312180154 126388602 245489539 765109884 41712185 747378692 492833492 463545861 546995826 333266928 584056746 573322347 450744459 70091107 739959031 909529801 43270541 678904231 481449236 730155482 86377574 366160943 870656207 153656584 433906420 721762709 764862541 675233636 433421559 134014622 812842537 217320610 648739095 69134645 192293980 14511651 770525156 385692013 642427215 46044654 695913179 111341698 908664524 141557682 634931545 352969687 23102218 249779655 589466027 999829494 654259622 318179369 748569599 292725651 727121062 147148674 467123056 919872138 134152054 825401380 892956416 175644383 792891885 507116289 589832856 965023672 827892551 981696700 106609161 148689520 680815911 222432923 680474123 948804989 994044573 894664074 313740606 826041221 319722782 368587558 707227951 365247056 882150792 644525226 560878927 893647317 276678942 829629441 167669236 928944427 176418447 451084983 58789728 989932440 698148592 658043651 172579008 722821513 194079935 393873094 884528418 175744911 647623901 880610952 507810431 266072419 753023900 304626295 163186875 933759212 18273712 902373736 751164570 970131765 976819510 147181535 955064019 832133486 376016564 297191680 687998716 869121527 940215318 955644315 321023640 997146446 814276529 423206695 944629774 609561890 272604996 636514501 203959731 765834567 112913651 649926200 342690492 315007154 123335755 993069300 558730829 389206670 622661443 750610702 541562477 871090466 64268085 873109062 350407951 683726565 37133801 102956803 565785357 531061611 751678603 351447379 45467941 888141950 638890673 701341679 581132549 344774406 919902040 229779252 418508857 509221912 652478951 196015661 10134847 942782447 54586663 983991172 72822900 812383469 402755153 360874647 94319908 271890588 29285376 398483039 65713281 637990067 474227514 645039751 150604450 165408779 139735150 154371164 831682441 249980329 294338672 463636439 77449248 976566708 860836220 214901910 354723127 358538885 367439929 584050915 294949001 66183058 972804275 623871144 126441908 6630018 338357087 463126145 285489989 221179425 122959386 243704491 308737451 925160285 907090732 158273550 895934014 557573207 338308160 107471161 688440901 360603468 257156973 462403939 806308322 350653871 792140847 257936237 149390123 602576653 968784488 142426842 294595863 250460706 644774762 606331615 156140169 138647511 173752042 383113038 822573385 46868527 8256004 745440680 487089929 888734051 605871165 285056025 533664354 358933706 397420163 797084265 183319508 876829164 381875240 136813329 569818826 868948850 977260527 965618740 305518740 326344239 217397496 95366804 149882223 548511772 704968147 579822246 895567733 855253346 50141046 721186173 7590324 825782088 988479548 170024922 807803167 391919425 884615402 137602340 857505163 550595050 688411056 202654312 435279037 46003719 968235298 642137954 608420698 860063105 329587516 862582127 394957814 834088555 517196391 968344210 925388299 962241027 29357163 272585345 212905209 33135017 138962303 321026958 568555273 354636266 920296771 605697983 190214762 389779835 228255160 97749939 517555771 344324148 224149071 675585981 296153978 627206170 474346202 144463572 820717582 445463641 958215834 363430811 672411087 111478339 7472434 618702675 291065199 82556497 591954862 991886062 900982160 925731626 165870983 301288965 904029632 212634777 504574870 175423955 84571502 997034638 725455651 797870659 380709106 947918888 664692442 620737764 703323790 142064809 57233363 161473003 374412139 572210812 967641735 471556409 325463194 186246706 964994012 602800980 64901654 888496010 149282850 718851694 826246593 122095719 843102733 294572891 911583841 52135377 838429112 410612381 132739751 587760382 473999789 572987734 610532398 274224713 667626452 941693533 379721336 193089074 32934534 426000675 605564399 277130345 578389377 361348811 371243233 731967678 54241509 586572571 21051016 808450608 264727620 536286592 620354566 595246044 654663057 765616660 295614823 170726932 16710186 554312343 989822103 755624774 693949397 541103981 93061234 746554642 641553342 94044329 208479675 188703542 807800699 915280639 558111766 39238306 384091144 287006926 227025178 448899687 383597260 820237089 554240319 739211454 585955989 932619429 954781922 639941135 326967444 74301104 14981458 951639011 782580587 281735236 203900861 912257003 305986077 683529991 938796093 770597127 639049494 270337607 371357395 718819380 350642479 68214266 124486759 356337060 50884769 314492869 784635341 697000870 92455954 202059242 338154173 717328825 439005074 882917469 355043543 1485178 695371159 892368814 168706213 824796090 99763193 296909860 376304792 937719656 820401411 578411681 708426252 886636708 310225500 423232951 294006337 176727028 281037343 922184859 275374941 946809841 148477894 380085806 213374324 464581890 27475257 901916150 499325310 507005339 672769473 71493414 666337376 622469280 734617878 305593744 406221278 949473820 575046742 571724470 913935788 319724611 337553668 528372926 593364581 401130092 83119121 821352825 863962757 407054368 723189966 230909277 869833082 263839241 395177979 983172235 972046995 576192761 223006907 3827654 186027530 394084587 445898141 892466562 515825152 664010752 284664212 191336147 720917375 924956041 506877187 262269050 787270006 852306677 278077096 974355935 714661313 532014305 489044149 581919759 756741665 844738062 852506556 581051586 863958844 819831403 670951356 514159960 863168936 888459272 522233117 680294360 10639067 711566882 230062503 121598961 88925751 530005021 862095251 640399352 292430853 381925505 140044413 628190194 3399287 377024514 790391400 404230784 407803783 968867455 423436486 915070454 683954066 29553655 382804329 429621577 194198823 919667608 873475982 526039833 15757618 776367796 342020828 495290540 870707315 313023430 197951073 637571314 21862275 269191537 125626766 725336451 910178291 143237507 555492676 489878940 273654061 879649259 963279049 497275686 542389137 66418631 40049351 488674224 397939547 205493338 171012692 572526963 331931575 244563470 48692206 165966412 806984117 143207288 992446586 550250690 309971791 40872531 35505223 345990917 757614183 919980162 266292232 131415020 211883973 946978062 92826077 487363064 398041114 833350447 631409734 790539855 991991552 757534523 152504629 882642366 330635257 283084728 341631740 659201983 239078252 547043920 179690844 333227889 428873644 512739032 249731193 732835483 609676276 658060877 718890972 146814122 98926945 822138829 714304384 644751291 871780350 875710373 919544513 285323142 662619070 444240459 180864867 415383673 182463864 615061849 568679570 521705630 848605679 504172687 175856613 552705711 414091467 762359517 835783256 730887432 696365468 741777747 789356373 394726071 409914078 825821231 800064930 910806629 423558898 291232208 430713465 174913898 518561054 898425798 885590132 415894216 990727320 394350018 572807837 462230053 217687415 324622497 839946077 331568335 392355258 559293795 574686093 754859710 493852750 354886194 779394916 778493844 805933059 262104424 755986831 673579925 479478416 397217405 580873749 726251182 737734552 20687633 791125359 820054909 279419815 633653235 462597496 250473020 905307945 628018197 386117239 857809876 764809594 537347986 579607064 820541653 419821533 830342318 216519792 925127283 12225656 280685780 599185150 816478609 302424926 841249177 379468710 526663604 230528393 202982325 498923446 836243981 91461590 536313355 206972130 583114866 172220946 368640169 757220937 24514146 807551473 4489666 107404655 681711622 699070982 542744750 219048257 637168939 276327639 820368631 521597717 847483976 331565513 261603136 254563239 523560832 788595760 656585314 541739039 243840919 24147015 75702870 82645766 625080060 501204010 467584319 224363348 204632264 139169510 40607851 969791337 609267130 856991087 184608073 649103364 809530682 955615127 861106294 167393623 49874005 159163685 664718009 899088375 766415043 310894272 538718710 439448031 32540642 222446841 394762311 173791090 811705277 867888970 187315939 476985476 202723841 486941460 784014638 920298311 438757123 196735139 590682548 690292055 653177030 774692899 321689898 319798970 712674288 665721518 665093992 6961372 516636880 435881290 821151348 72504727 365836381 268423644 987664758 344929827 252187959 24772152 346000837 374241830 676965029 912370966 129645530 447555760 75757972 743557911 744981593 802334518 478120353 790783939 71680267 944824978 928493060 181617292 240791527 285078541 2094761 107144142 904844293 692970576 622909215 290075078 201931947 325554292 255722395 208651170 29971522 906425590 377150975 438876271 645118302 554125498 21084879 394078761 5752252 387806220 660438589 777317039 244551996 727569828 937273630 606964938 82491117 760946590 230422516 789899054 708354556 613176447 574895076 100666738 16985292 341057076 321677761 529308443 132419037 138204435 39630586 653215884 369331416 384346328 9774777 626957338 892493714 756418474 231097533 16240384 987700488 772407574 720435318 708031069 345215578 269615888 279684097 734809657 768297430 156894455 342912791 773109383 941085167 771087503 779010083 382557214 480897598 612874501 243168562 739489219 324373640 522023406 121903871 332286749 974360504 999342155 948407780 178680767 337853665 651089786 226697451 562020894 709519422 963462222 283926725 236035744 250922549 727958525 139824325 738440845 81114188 114863392 958893548 907559701 305865787 437003966 783095780 178866768 19136731 907650372 212421112 106620482 643519791 456175497 174097442 662592468 981794147 327962568 740374018 399481814 351494090 704882856 809310173 160916485 145544672 745229367 231083426 814373370 427738953 515132134 961049579 790545990 501609165 820629142 26885364 692166489 329078112 326040971 748123046 58477705 620111648 206054258 590005904 986379545 34648654 994691170 953344234 758497074 991672409 833347542 578733458 619069159 435109582 44698549 641498128 776306992 9404525 399695690 267515797 604604653 461167126 127803470 96880116 533978089 72459734 317137371 419070126 589171156 537220065 885181815 705861100 546566473 861136787 710983184 929416573 308890823 46933099 520467707 739542996 981445048 640923414 143396082 207192854 47686511 336289389 878661409 344745481 529976866 497681507 612201999 54377241 798734837 366946078 811456692 479891807 134388720 945441770 82777455 359240093 924084486 573795388 526943489 553614644 478982412 22376108 582975898 228296507 888869833 69681152 121899472 362831714 240247267 535797795 49649567 445964557 37301738 337744676 799694186 65785923 969747290 685886018 466560771 723544751 167085461 574901472 861976731 831452332 342786270 898041738 968507345 590424634 728391534 830822642 755475627 613020159 206883417 285490931 680414356 786788426 947000482 179112336 558555492 919173648 790036020 418399223 736371287 607046133 45435103 111482231 245747986 10679100 825150810 472188047 48183971 944457432 839374921 961348062 361749631 751840351 227594548 449391924 792077697 3796748 107688333 218036866 788315890 911331533 137009069 791231717 744167292 96010028 653287892 522966941 378374711 750516323 964591916 806545173 980387231 629327440 797819592 199064036 935044249 907471741 333190305 4404165 304520562 110572053 411511444 853140630 109457120 480752368 147720047 866513768 816002304 485725328 643308002 962217325 755678808 642574876 120085380 928464126 218244819 247174240 687599579 326063265 400975560 728336598 502856011 273001983 9264117 943099551 922616872 504804588 254002303 288102268 884672428 772585061 192929777 606271715 227117302 270958986 907834944 985296615 565063696 491135657 354719950 935658824 62956268 875945523 549394780 629941358 909757541 498440132 566109465 72236649 761930040 347209505 385621912 665840622 941719313 133547314 970510298 198996318 981410176 436493071 962728770 825419712 150783742 287287023 954196637 852616131 915475438 192793911 412127009 381849791 535220121 305744753 959103850 554256305 980987696 118656338 213231230 273209923 741139658 795603380 259149516 531927490 262282349 204448155 526583078 229720103 715351293 945238323 50076108 777902865 465283917 180444876 55388005 654252231 979821336 221248485 179952118 937001271 62030847 375116318 28866558 163868921 302730889 170026564 495179092 1089100 359045928 624176972 642975808 124731931 19593014 132836687 422602351 415320303 431395319 949459601 989432308 612674563 623304590 358392955 602904654 122769462 123177488 668379811 273771876 815992590 161905273 927993284 193755264 75000253 255818658 629300928 734204250 143154710 990966623 117556644 678094604 344121755 447297366 522240673 963819809 575644275 397944875 372384020 476339839 588045935 377275991 36080767 804421761 535545856 633369926 750425487 969820638 167179596 310790730 164010261 187590595 609792793 535704478 733250318 573767865 892335061 241446240 722361244 790694836 578247317 6347930 101721612 272582932 293616157 233020989 974853073 362996126 711139281 698475556 378795395 939572606 832566462 710294031 472592872 747456331 470611107 558788774 88990957 688534271 816906967 929073277 661960354 308252929 201068391 345209098 73617475 727881502 685759999 595619763 180930357 88395150 306722039 219633340 911584257 563667434 845213774 384854616 890379610 206840379 658027694 698450853 740881180 921892333 946646114 249215389 230431564 769176275 451797604 481168941 99403031 390983210 800599381 669463332 322836424 20301213 869026422 326255422 638238179 659526197 26495164 849000218 255260679 260553062 511721405 399379013 938892799 629424656 654545076 167802413 908767679 432350071 427958158 130787627 145091171 676691529 783695320 577843584 708011308 348373912 729129419 996543577 82589321 643434982 900051267 56043714 331300619 863010329 815239880 870491320 537591405 563885686 529704077 123566107 590650002 705018300 714432866 902708148 884838022 832779779 935496140 990353460 123433853 446099921 806713075 150786359 818183633 933424915 869760930 164131386 357581319 440482847 719647571 599122858 144886726 634720947 608967973 149935063 241650406 823686384 123739870 894642681 764855392 880254568 487165934 833240880 682847064 309179665 21214316 180185994 35656729 920425029 417840152 109494004 769125143 453423561 458637656 767063114 939768298 591734477 276051518 632398925 990269017 629149922 180375934 308179619 397710671 856670474 956185464 339280097 257120733 179074216 267091252 744156543 583730751 601705099 170335586 161587421 49921241 400847845 377281368 976070726 58879799 218141524 18320407 824112874 143876363 967464417 922615106 808725733 704148783 442687987 523363372 525719604 742473385 649596005 230656715 371488194 883077024 191247218 83981503 217480802 93982830 67054014 677507662 910949837 62106761 435010904 768527210 493075361 444534164 65252535 871072423 632231016 470855262 298564019 993214020 105585817 884680664 671939732 337443629 814572933 464392733 902067979 5376492 147871858 170025840 454596903 222617531 291112329 948002622 450277991 238226808 70683866 581420825 350024370 632866475 908701025 138422716 711411543 634734723 451471355 130363402 15472135 920771288 874019915 661067280 796563425 201474857 87654523 661376000 516226152 200702874 711947436 901740855 333595279 596606975 13301126 116054836 499848103 347416268 556082807 526752934 524966509 571754533 214285001 135766111 266164743 747370699 149379771 195385435 877035779 493175601 719196267 391734973 606932053 987499627 270430435 260243150 936306267 228058429 615670548 311610372 599211995 970614027 635407066 153726714 470681345 211270373 513102323 655403634 582762083 802181762 961646345 995835992 964786174 260153666 465351342 160303806 221403193 228465453 880028763 44990178 741428957 775489519 115766641 309603367 60660258 158967264 702767160 886274324 956772772 96294148 270056677 445237346 705461613 985461756 694181518 50750440 230170338 80734492 841324596 780500395 623138784 698757464 339817922 248029396 884747168 17702739 595730185 489381050 51701705 987560527 117420226 375708630 21315940 567072575 299660174 162730189 227388398 198302139 759881463 970590567 540287550 641607422 415107180 78837658 637409691 818420467 273211464 982988929 104852658 6871334 681154765 186995037 775573658 919105490 138064674 65006237 238777809 611178197 143121499 877704401 886439223 995475639 246187632 155375028 176937756 324102562 253809985 192501036 489345592 124687989 395332505 413702723 816809125 622794155 629501992 698381869 813903080 723646059 19638409 840495938 555091187 476478340 314103868 850288138 908516628 182831215 539722664 612590638 501933326 567707722 387843876 595078528 878001925 423289054 333421540 346846972 164922498 370643865 359258891 324678599 614737792 360723091 903878819 733038634 282091867 647400841 76568733 178175130 420400599 271274725 122755536 108183217 864739870 455475891 764457729 340499506 165909452 306627502 105058263 443369482 657228763 428256307 203070946 46483786 146506670 599767882 125703582 483848238 106803222 714201507 730910573 484102940 90695241 445612691 394101909 576893340 293381343 251985690 97828423 499731809 816482528 726350049 482492063 784832329 488468154 942632756 587889052 598179925 149771075 448655887 419242026 602083504 17665719 23438607 28584728 115530414 50236856 411651704 784930849 735204812 72014938 153848893 928432866 646944173 648139534 340421364 211940842 183801625 45703089 916989663 547993510 630669061 388689546 911005409 987238771 660070282 670570820 172590987 225903246 269480689 266701817 517733906 403797797 376954529 339594784 39428954 783389509 404596782 538305955 559331049 804896744 860627028 393586635 254562795 884956144 833940983 1783890 144278074 641386793 986866463 68795986 348842325 991385918 486715392 637457746 974142816 274392270 623245817 173119038 563706417 395548249 274531977 424200811 9776184 35991876 536744028 150323865 92816282 91636967 838605897 442181608 548303642 846531446 64950343 563842794 407149355 298289428 64124538 737751189 456868065 878788301 170773038 994293058 892847869 328621453 817516760 599691193 623629541 936765233 637906193 301823012 507995562 824686967 778974107 356969245 756519170 59184396 51954274 807253662 787032652 620368513 525224316 420409103 274465168 546028875 94622755 649511482 661873791 127577806 687594424 383186519 534829419 523550550 647905995 760081153 356136537 428081425 879434761 624160316 617578988 432873753 574330707 585981306 717878391 938180716 183564455 551298703 399211244 902288634 670537013 865537205 255400433 888462479 669288012 606861202 926961865 448615910 20530283 406458935 7419490 973355424 939452978 672927253 905529432 541277510 364966257 439859212 801377254 88234571 573524503 45358944 524104436 236108038 421116222 714852542 189081876 475669945 537674798 172472124 121387131 728772494 899416911 941395801 979564808 874623893 882230583 355391476 601832770 736226249 466151836 406474594 515167066 148187144 482576487 188849237 23017511 47044895 367691937 366157542 777669159 485339580 14666108 320766371 2604673 290652539 779060564 25685105 406677508 549546461 875698862 138895275 70105642 709830984 891736885 693814027 483171345 404215824 145598138 291237046 774595969 814468977 599492665 679562812 888400868 575240839 198658263 117942673 41469785 496613213 741711579 451301904 56127385 876332004 731032765 950850947 917230863 213108982 443649558 760663315 236569545 38563156 42740395 361034326 878728830 230394027 876723557 802334795 677855631 639757444 361836889 403359831 396258814 105692511 161169089 493039940 687041152 676047258 116944382 372251724 81277549 319957632 52953760 837989896 489873087 588259650 535721049 918830976 742927137 10513401 75796994 737818914 631088863 947417765 900240544 393431489 860088819 41443889 676918369 277479322 567196668 166143855 398261137 246479700 394255680 159610388 135767473 913372922 385444784 733364678 671694435 713601285 972365795 791906570 488570481 641483598 490184215 828736087 32617678 331393055 452601139 167480064 326951832 604077345 592783814 222478412 360773907 933964907 296058122 929428062 840682149 537070968 495065053 151531854 986416101 223560752 237537733 904632336 312624012 273739745 798094835 605982086 47895168 816297022 610659900 977208189 589920458 603198565 136882720 507557283 909258400 164851674 832786376 196399760 940104539 127117196 840850178 879045833 947389053 496952528 993467460 796274101 106086581 139658340 726946736 222564516 666629842 896298348 978356237 668999123 793264850 627414132 167527366 622504287 175386328 62239861 961726455 280594517 912899120 866922441 881668957 205936036 873848395 590431028 307548001 206951719 572395462 750028009 840312078 477541533 253533027 771706743 3942434 898536110 93227279 387508959 170734070 425186801 947698394 749973380 298833045 401987546 664890373 25180983 800016300 806523854 300870637 891061803 405189525 320432658 729908511 137098234 551829580 199076061 56575056 308233902 359586426 641308995 729189725 562595250 71324270 91989063 983872580 975063772 176808736 459217361 281847346 472223080 6251311 889874869 820284031 593430270 970609121 545302186 658445726 228156072 62234663 630588243 929587259 307804636 911328150 721035576 959547416 144393594 433511279 122907595 847212336 980090052 419533208 437484901 745466524 914084971 359964579 272470086 297614238 102371711 961156546 15370648 481254050 887582337 795022810 533016686 398968379 542077012 492587632 634219712 177943589 946037574 167569842 679788654 312968771 341509648 153171065 904972867 770939806 740719307 442360130 639935729 916494188 308340730 658843448 323459596 527087113 26915729 554588966 458935068 275341300 576493536 328759943 60046984 366863580 304916135 343894649 801707167 313021074 269007369 820829889 687499933 533406228 128697237 5853392 307198368 856732293 983162688 224827070 625946549 491449389 419025511 109153867 854691533 724106625 56496334 779675610 960325565 587298333 238541735 937964414 520656203 931834308 40528000 435436015 9956636 71860064 973899866 580706696 354040519 838971398 59416221 584182612 281860286 727941616 44763667 224375297 507456873 468718464 255306735 902435558 209443855 531582535 456521939 471155970 788548063 169159665 285914562 335341054 726932722 484614492 714540841 933750056 689444687 446686607 18863070 35370103 28525017 653212334 430989855 729450890 415815522 294389522 570315919 286616746 98893224 429475892 424357692 959972292 261558857 457501113 718833309 282043761 567981005 142959723 394422926 54735343 156147878 648950074 268891474 264999463 440918062 599885897 291595421 377037477 640836521 456410067 245604476 959593122 632577338 644169033 979787377 96452353 140253431 475969594 574302304 212205379 869647833 651150180 106522007 932092571 250770111 560539051 932459464 352093918 411629938 23531288 349873687 710368140 60139431 208989665 216745474 648274638 727260147 184316252 699174525 583582836 405334233 520384786 388893910 782478577 545520579 738421165 568179664 984318055 583876611 245230588 799724175 187271068 864307663 770367486 722802078 111619330 940206922 392669144 389785588 969950636 370828671 984283344 148007406 822441055 839019867 342333022 728616018 903074426 35782332 277236508 724863819 839380244 872595809 638023117 768314737 841065442 263976946 543554651 238577855 29775936 326548739 868070616 285472157 625181755 233900043 118811269 923447253 346630525 486446188 812908222 990822812 915868766 758566001 355270677 253932181 764313824 108672073 818144057 863335615 831892906 791561484 973155334 352932745 627787529 990112190 634266241 519401673 19046901 190251081 336628179 675445692 806086926 68301435 99136849 130769928 457204123 659642126 723981683 851883705 968844938 696700583 206014688 515645765 977087349 294289609 613158754 182298760 272041366 981996267 672943340 586103242 424627931 611614050 179864730 472284596 191402191 287597170 23548846 760275809 307826091 211013957 874865300 736877897 471533388 47529705 100151265 248865362 761208892 278559577 587677517 561060556 80731817 837899892 836352700 757269866 14735211 443974921 355215675 640170060 514359038 71283138 958721533 31388661 370062990 735477311 626055515 713412177 328033512 336874493 398308312 118017974 859864962 987663719 642638115 860536290 531499390 120186573 605621004 598302461 628372129 799250281 328116369 947077262 192083036 207776346 519318226 476784785 606846149 114794414 768960542 699480156 297698715 46495570 12584676 979731900 366391620 133441570 657699523 757445593 494311380 435048671 571347325 242991690 579866111 386153777 263257082 865475597 866898466 466301607 372971858 975776389 583659849 347049919 165842880 596683391 956352033 100952280 328029093 653723443 882055680 536032058 474487946 115873084 208476646 948291097 566731304 698531746 630573949 232717708 558089047 262598865 589607954 725741975 926066458 484959644 19340699 856844575 494670238 318915651 567669176 688489209 594405172 876503915 53627058 693387485 430281561 340079391 887679097 402001003 82756528 43180500 378636703 53168686 544887043 122109804 37142630 606485655 467327046 232950825 373667257 191362812 492187542 42437559 269641763 390859429 606141234 922026029 964777691 415102391 910613130 17492745 299852995 882105409 179212593 879138350 673310558 867742016 73202141 488280810 307225569 341539221 197433207 505747189 754679328 117250311 769794567 500760425 428174746 231473992 694990783 732084684 246030454 211369716 738065407 174319885 263094405 562717834 108001350 461881469 754327612 650249587 678162242 872551133 528954303 508697854 477169607 315107664 328899535 818151786 974314955 46381671 431100637 188703957 250425206 323270421 55066626 481239111 42464787 341459892 266739199 65014963 592263442 623262478 134116407 141317618 490545427 165613902 391753658 135871428 150820564 730927371 887060035 145467605 46965316 854799424 786714925 649044404 686492534 973216595 281746559 162989019 56721317 291343379 304645100 36483755 649045554 540838065 286087113 948909677 446465963 237117135 108764694 20740946 15761600 497137262 797596025 612605047 942008144 913282816 428863042 708479702 906244956 698290775 217017705 499684958 677565459 116710833 215935884 247504609 280758465 509549747 909426675 891520275 230645223 414637162 681250188 515283865 261816359 431393868 90350579 300952571 73016652 932716855 685093983 604303274 543445320 860758127 12063934 520358145 988395832 9032864 799577757 484511294 120554592 783981795 633889331 444981390 142681896 247828912 457312607 463587074 557567526 61695475 343480491 786068880 621588245 258813938 97346625 549018653 233612758 527073383 120443132 363557743 473445752 228067695 694309212 44400183 75113770 915093900 869287047 999995408 656818508 311696047 579132234 714668158 894275165 351241004 688217375 197200871 501680650 248311998 402477348 665903770 951871014 448653710 28478755 142776277 341104556 332822825 361358983 986449079 605874627 445682560 16341867 274055494 521717934 306916852 105038731 842020731 991471337 705232968 539083601 537234473 353290761 18281900 2263752 260826642 194204116 707130293 988534959 157265122 333663031 702898525 300754781 333620776 117328704 645241866 510395871 661956703 796296240 917707917 266831072 328923622 673483366 20562454 596188090 799897096 504142705 513168712 99412844 194933748 974543616 141040932 769641884 205866439 841108464 288812569 491506075 383762303 483279175 923605243 340305759 840558087 273659693 604708359 865030279 942845998 458670070 241437668 724539740 350853040 121050909 389212831 273299914 920636972 234072135 56539820 25621613 266532911 841194557 516080619 156337537 501742630 964898803 315179165 809067501 557842282 597039492 58826867 639055935 29193025 511002420 356625278 131897778 804535761 983341679 910034753 126333732 925319466 53383367 758891421 54172700 213034057 884439285 376817120 9425864 628169227 674655201 622823360 47717891 823053373 719842194 858410586 743665735 909003917 754880063 793122612 455585469 840846230 451050304 669353275 292306231 645629914 494079517 760687042 461472809 692589761 57228667 621580681 178731444 396020125 634193455 397704628 211388574 601266854 423424055 106541776 351881560 789385214 412857780 115353045 283102457 30529712 623449077 552766747 21531711 366940075 643328102 164387178 10100881 166780105 870194089 364864755 796034816 550873547 209342588 794996805 285851459 320438104 545058001 922022241 727511222 192309254 250428597 82694826 250544484 627628875 359337828 387028974 890205437 922212490 870840900 621111653 919042515 80340490 214499806 635780265 743630314 744517118 409640168 509404096 945574377 450938752 551022906 869912089 99025948 517543310 770349275 229269380 646818685 219545111 777539825 850192197 430034090 59804389 150194899 223111934 392785645 265095863 831175933 964398013 915312433 35404331 97638414 711113973 320210704 849817290 84421076 298037126 954526152 984573448 449973317 561770162 949073729 11648062 263284343 197728045 735936778 482474413 192748464 990746117 397872987 232993658 447647324 942350265 935325202 182928570 362177293 686600497 649612726 249059689 34049917 478198967 384791161 155323235 294739859 433816834 637323567 961790322 426312788 697686065 367275608 769668171 867907834 246537412 852358941 736624005 259451871 898135726 903792715 579742 91313538 136784963 902974811 369554436 826236306 777586493 877237611 561816584 308453857 929817538 335870019 917706720 850495338 914797408 530587986 349268144 25349456 999654416 747517616 869472896 45091297 249151275 749199386 748625218 554298253 79572086 583555578 353885647 711368689 264167713 233858654 584232680 992249038 785274046 862711806 969291830 855385875 272290892 561217334 719720778 595404751 251680048 852981010 503400095 238294848 45696058 624234047 940721301 212411850 191426203 975692308 237468788 120598775 237557490 344693649 909807984 487044729 178287172 136903771 899725729 979072812 540810495 737354180 218619144 734637588 586778105 996802 158730894 402294621 622684524 157537270 442668293 596400472 124052990 213099685 634407973 764144515 449765824 15683007 520625041 447287165 862050597 589556699 73971152 596798487 998101512 787672377 690171733 757604415 229847730 75202239 46863227 17314835 802898638 298039548 408546686 549537749 943275121 935534890 175244172 503251696 509798168 109664295 635722676 793481467 815898284 732855161 836281073 209622700 571628151 407132241 96351266 847071467 582948909 156096131 644464912 574869953 168613614 613869459 216870769 85896031 652533823 589935525 423558105 393098531 492584203 629981320 115912395 481631889 30186152 939836597 691438513 167416400 934436823 247040074 742953946 528752441 413313463 185714193 71857538 894861124 832489690 733079668 32450250 853790356 691682357 74895503 703341752 13053556 9634337 895770398 36371523 73994842 463642472 853087628 12291902 303221470 755498037 16284900 596516718 549664455 137741598 475922146 892508027 900074490 428183584 462808289 274087927 707925650 943237024 337832168 383345754 955788741 70238573 422981802 126430216 951014134 772517305 742686332 616710471 739806388 729278499 322873438 976120394 599294897 430574769 816946934 508046379 64258500 152063183 637761685 496312296 27384566 520941650 967497776 627664236 987898480 121572986 326151784 32556682 930767236 884892905 88365188 163856379 876910768 311628972 591959925 732387932 194578581 102964540 970952909 624138045 782745343 800299381 456681937 285847560 702440416 9265817 186867812 738959644 726062164 741484375 74552856 837960889 914633632 820488391 260357410 338633221 660340271 593231202 431294820 65150996 133150355 101576207 435587426 256864992 559444614 438673692 264294225 526138953 598700525 831845695 446065664 631847704 443293139 544387730 892305908 35829758 198633835 824884126 830323797 541349526 412890384 722533455 222605805 189384798 686480199 154992886 187338295 811296197 907586489 719016280 500358738 167581460 10962490 594344340 459309573 880056205 72244678 112346426 802126014 768666186 595283326 949489729 278554774 145735003 744000433 513388033 72375626 159665322 904217297 880508994 609851207 142093077 998397047 878515250 474723477 278535004 536236646 889595239 366485487 973406505 49003916 71929053 789603763 505405965 768837884 251808249 95076584 234267775 561157361 371809670 711086655 631945954 671316940 34645694 904322319 300787331 694224155 240528956 829469781 683830925 868041361 716368133 582107066 935121179 726044935 838113670 707568783 311685681 444281216 579315863 418319558 777897652 51538476 838418033 195297285 978885499 505788248 624024506 506450575 775022648 560641671 103749763 997584467 500673170 157795669 392497981 842136552 137888017 946557583 241700295 838165393 948200484 720676139 143059559 860938801 850860328 743391041 90091209 913717851 558076251 60098326 176979714 503678786 467905255 441948693 450611859 288166857 265140190 413164496 403813722 810119543 105008953 171597063 533150891 364298105 848858072 247944855 385488441 206754213 433165703 614166668 146622753 979722110 86886388 354122014 14824679 427465002 393936826 692373412 33252474 978669176 861012826 611432357 458048302 699767776 462200383 119623112 2180546 99581312 301384120 830675170 819826011 718427680 234448894 753810672 645315715 758495792 863013173 874742291 918132275 975008965 32037986 555431319 781465288 764893344 858893947 200492783 845278468 860590374 554351445 725964469 542801689 530155370 679002803 577220014 397249945 448508706 291486527 382405574 791964289 646522282 397609352 115623183 737032760 303648014 511855370 654555844 982150794 777523963 398315815 639653963 208918957 699003847 399275557 341024809 500085055 603094386 638444086 862637336 533368131 348931238 303450740 85520111 759983910 788342190 678196705 395786675 802519745 123622277 678765156 598707343 266504526 756929224 570077648 805603542 970226292 899947711 315554526 119185157 937657663 725720664 838903856 61944251 585777444 111737130 615283021 122464455 33435906 311691897 395370921 501276700 514810908 971213863 484013467 268063444 115822370 914696645 813573988 818091570 754894632 757376907 860709937 571982499 635088043 615759190 694055695 440425656 206767759 898674097 15455736 161321518 782289186 160609479 937433806 34081511 646954266 602298739 204560989 153861617 805745301 543065648 346794323 468638331 320234006 387625515 668085577 615684323 235238796 969752622 632174528 46190507 409384781 818552243 76859682 795862145 704711444 269757401 138918338 524740916 165205767 311669860 872794840 92624579 928314548 441218760 594036100 83098703 677426703 750968093 811412434 302859299 610078839 61576476 875140018 572076213 56224687 331095344 846996474 940202909 598039782 214664552 933055856 236224159 764480944 539398782 808764860 184393385 82047244 553456332 516843630 199334602 852774494 503294300 484272127 772921153 77692533 253187294 675672274 505424495 367814787 381407400 869623854 593470433 194764582 2809273 652255048 540773703 804689254 447501241 319320116 304488832 191752622 397698039 810202360 275904397 886029013 82578538 461100156 851718042 259692821 873231539 150097294 413748731 592344852 826041110 389221869 170985002 252453090 485808517 626384180 59397578 553143541 389220503 787653106 74628521 281858341 51124872 956330132 337565366 981273532 858366020 948850295 575709455 466072676 436610137 25046742 339954934 765340981 498997755 990675426 658542552 677431211 434912268 942357414 636737863 388376491 612881938 63633697 113336319 554480768 907766590 584012079 839775457 592217573 782983015 288698266 885795834 630798066 157170187 696599064 355392383 925754159 879321938 903705916 517298376 503331208 853995786 225348492 314771802 762102612 965275565 17814639 833923040 718989135 656935767 391631670 809858860 476638877 399806162 890073115 696165692 327563725 756744843 744297278 667749936 283239891 173263771 284348842 993846615 308153615 36004544 299107408 570343458 743714370 483390818 917318923 188288456 533638556 729915536 141746071 476493623 73507250 420114946 563820707 901674547 914003072 957766420 652614331 848818733 167393391 612653011 540680027 782849125 66032966 341971947 843363812 447823932 854209345 982361009 936256675 837446718 430706680 495632679 711210944 897778463 551372659 270733045 742229086 516182713 364786975 98078056 794584952 143733009 856589006 372392313 704087291 880040270 553950659 138923975 663195318 806172361 397239711 726386583 465608547 537614329 745517424 605478875 644450722 158924674 51496108 354552360 440296190 996772144 704560688 494052288 879404265 485187318 790588738 740895370 953692089 718453747 807902862 748724754 19194801 915455331 257165098 678233746 275437563 681430964 223729043 843677672 452963753 241002876 962162348 572875933 476095664 801313399 812036295 873500895 320977655 38323843 496890007 235050884 486250306 946342573 180271161 516876047 493496900 176767531 974135857 112816803 475776923 544336725 488176236 373527825 796234433 556031664 253771075 728156622 406606371 350370790 798412913 208547326 478824977 633791180 988036634 460118887 765596101 525673055 566093773 148374388 650703456 824035260 666834815 950642755 993768940 54352180 430091917 935990668 341812312 89818935 869039293 575988156 149990529 141079906 599237946 927396062 773956391 770599800 435318682 954785710 629619183 801886818 704585436 942945415 397796462 357194041 313418343 629765235 610342687 760090161 697404162 650830879 650076256 309636530 741769703 9358051 30322044 646152516 503175601 698715583 657349027 77195935 262049638 531686488 915461871 345904794 154080628 17394177 89070433 272111675 814905011 958504622 347896802 21178282 75877209 129533952 558678340 917069628 502669840 637550142 180485952 834597487 690074853 260749657 130255736 215765216 401594445 969431525 918946931 163251553 405318692 402038816 843881124 582100193 643424945 243924215 766543717 303757181 778599841 21414645 131254773 544643958 577344263 648521042 677386876 342851642 847365731 546113262 502288656 875941213 916325785 19925329 851677352 366860182 769522166 568933287 508319781 185131979 517117232 960575432 305057105 648025096 410887780 455105849 810068955 393106559 643679000 280753689 30638174 564062858 785658424 916401213 850287453 42112942 803485979 434795544 996009022 468595351 368494202 53788111 348670546 234727959 524149121 713656355 806213591 185706536 434183863 108752262 154178792 632928496 556542739 351982865 764633236 360982968 452186356 132367233 196003272 478754804 925584159 825678909 630071904 387829313 145484223 110472278 923710492 990749025 58965869 270578051 303305636 126354237 356765729 708861216 877149068 472813034 38761540 623037752 374745931 67877029 285830565 239214456 264159813 163956431 604757620 943988283 721288894 175989493 476570194 226585981 659114220 730525127 550391618 716694501 816414185 288843555 230122164 148514754 213704370 728516876 645193853 685555725 711760179 869858478 394057686 332993892 940463932 453431642 614220392 710765328 95691655 110784397 599554880 494101503 34076852 692395497 391653845 145552327 922794065 637721147 200690431 791335851 259496393 90890866 401641990 579953549 932795766 656210353 205947800 924246785 770833310 366884659 311621834 636469819 154135911 297606505 467237915 683226397 569017826 152202466 991699564 14380587 188610824 370733918 73629708 716322711 596079804 727264956 220148659 477458999 70705095 437340171 737856378 404144267 323701977 62197883 300988392 838680505 870716301 445293158 305676525 56199312 146314592 920248916 664625368 680968843 7348929 659587054 305698156 562984132 76297215 201539334 168827597 65868038 284005457 505043611 240716423 966859968 940440282 693149131 734185614 617245704 335164836 730274532 986515011 50583197 943657632 377337435 179835240 536189670 49621671 144040393 821974828 821380852 333386362 468147441 430542116 798986621 727504323 398611135 251582542 612158689 498156048 740924998 984672781 929187878 825280993 569045441 376504110 869116925 61508495 287074196 398412523 624889788 785349736 438934859 32555482 793577570 349051807 828312726 119846153 844354455 484734281 102062677 828698845 639712938 938871658 24361862 314670127 715451283 194483946 408458840 497904957 517530096 310146715 281009950 118693546 291148297 878998581 139686227 452650630 247616461 950914395 248463001 415038276 906398163 402939028 914282427 200913090 301657690 925658197 626262445 609823045 547975755 216746995 65805451 537256570 917316658 965765297 480097432 233292921 42237770 668444345 862647102 578838203 2030705 316033050 663227410 885718822 845738796 267476432 322524111 503688970 33045678 143314108 883830615 524085276 229498571 994929830 987261620 657056630 566469380 777868094 421059614 827573408 12405633 49153825 408210157 484264073 381205007 83326668 341418146 613756545 990741284 942484909 461413359 646995270 168609508 25583889 302944161 135482371 917697556 717692211 965707700 310608190 810575138 908773941 480013390 79027187 837859622 734663452 618317498 617373306 939620576 247457504 119602280 669605786 517285304 289480535 515031033 388351363 243143866 131268673 993001000 475864263 944096161 789664328 474729192 634106211 186109899 403268095 581116488 548046781 646774589 295495901 174679428 377895330 225347496 529156675 996683266 988633928 146207588 85803645 352868425 433911372 613970032 395666360 567649551 868190901 65387890 894555411 403473455 340831213 85115066 849004939 166210985 923873226 499361600 385916168 346897069 857911691 303521698 934511457 817193610 161549013 9314088 594563403 147102657 896401587 159007938 359725417 929693422 521474717 45578756 553358144 156718051 330547565 246508595 413511751 875819150 203938925 115258672 711296213 479412238 267844 601061517 450366763 522542500 653904909 429604994 726939250 957709757 844189763 387003119 667852731 229619944 748964811 134185047 448120065 40390886 552565491 917047022 218234402 756558743 47692911 176320393 227717613 113774599 550994524 231427239 631424268 893202795 164593473 931790702 145638174 794166297 62430987 494400691 203107232 161745561 309487118 676998631 762790145 570835094 502495752 724137516 517421965 649303521 366942496 474106697 120906876 743370103 68275936 555074220 222361845 54985851 335802174 135701614 495625983 761906487 483945370 393526348 420079753 202864159 44017078 237524658 990242925 352487631 355448512 678036907 771296622 165216009 158557775 303739884 301041460 852728763 277801310 830315485 515091794 449104882 378854227 91453052 428844097 304503792 861239549 155651709 131486303 951366166 861533071 488817462 813177591 8807408 739665830 779803047 33104186 994356527 211120712 901874550 602907970 422675630 432390116 72458741 497465619 613603188 606013261 506236183 23882640 321462697 167453376 462986879 46678417 30121888 817735398 39573616 241646793 133821655 486314951 295273185 734002908 29310703 144680413 588109921 589744212 309071029 278151424 614070066 102977955 431009561 572487546 835561533 78063649 579105849 502501111 416774161 954995981 40709208 584163722 185198562 301787282 754615008 31594162 448243859 622612164 687913832 817275991 328023466 273763481 878247 974418369 839716948 117684466 7101312 300196521 554145901 325848475 859341315 772268072 569136496 887780931 841246812 768112586 477994887 320628610 134973934 795715191 875775615 978091999 471297593 975790470 400018129 899077309 290410469 852366771 204554394 281069935 411210187 124503076 854654629 634306095 128227809 544105320 182953822 9683231 177145933 234333298 253031901 962270534 246942810 108585376 248983776 55419801 706820477 655114680 791121874 349174253 75483215 463762150 760596928 535632900 564343186 419804608 328724065 859005578 243550514 631257155 650685716 20882959 786411335 882710739 520589283 150683661 57715460 389705534 850580600 683253728 662201301 704329660 78009134 696459737 873989182 60279270 722156037 429929508 542592247 82247621 409045922 381830620 429985752 753648324 797128277 371279875 722256103 738204344 383709973 976998528 866816333 558808799 219069056 917233446 517012061 391176414 192437219 386724526 253433492 994002372 940572708 730682810 406486167 305445636 389385954 859198418 704542252 265195386 886444379 266219110 75800394 555606640 499321715 426886611 874670348 252552337 425444539 487464022 111502004 282579183 39137130 498957085 78295215 485948939 61971296 730531636 9302415 839889099 377077541 456828569 219297038 117325175 396218085 288812331 930573075 371868874 883942267 903970225 400397477 602278111 477732707 557069024 866405624 282499642 933661638 739597393 654586986 794958027 558738805 903872387 193941886 257400548 849019362 822570206 510419421 8112197 946480691 523443384 349171034 960811795 743684648 764804169 113163507 757402840 614688567 312412848 302300617 80353166 553381237 51302391 799770152 88293521 397292703 217498640 934700163 226130850 230571292 913228242 577973876 932608500 73783039 202926083 289185219 299734809 954051837 524340809 460476244 109523470 200356214 40809012 659735105 238952507 459859824 576661056 641124547 209871466 483752349 138356428 732884283 465604051 455999313 160642338 989816116 293422352 551923595 610796662 734479462 830672171 953239541 24325341 376698792 391522443 47091676 788709978 960086529 550362123 257589563 954219992 665148825 438353895 297251245 84424231 947363523 635929281 421083514 941441789 33489146 620187816 757136531 471554559 278468580 90989077 475955086 293359543 686789196 318436063 998365354 624434835 446788389 744559950 714551505 616193006 490590854 387067154 127890575 1297160 960175801 554951228 415731483 10461199 185636133 727720011 932455767 376214287 350852956 582008100 59289798 731319553 540173343 180591638 623047324 527015113 783038539 122937556 143141038 52814384 619211247 770985597 634582652 723655398 295993661 678121106 554777646 481413509 708054416 707060742 163257745 585673870 128636524 594613290 212481820 413679979 980349053 363413440 527666928 740207980 684952210 696655337 260782038 463900875 224688813 153574706 829135416 856112040 242209005 276148882 361439027 541475088 196352668 823230566 724117379 440462833 942946096 193147252 884209294 947823139 491246405 183851497 721722727 587030890 86451611 276427353 27064257 844459119 308549662 835026114 337744639 806930881 600934628 562429834 325437734 574644956 300751655 560248956 110310889 109590304 697934407 72999377 890829209 998347479 363845333 235442464 838657080 46384688 729637759 503281271 23879281 589616710 996629538 836434234 567776911 968544283 340489410 876044615 442292104 983312280 845667467 61433301 172740609 585243789 730332879 816436874 365217594 803762098 25687048 791624821 264619560 261850540 317874909 861940493 105771616 503920130 29916436 246702379 70850850 629272614 595134119 874614292 137034327 602814577 218155178 865299578 395468169 317409060 121242212 726369136 501887219 532572008 585607747 904296308 29198451 735582287 175123668 322235240 312459408 452682705 826155478 426872221 569894781 607162833 652857133 755443911 994947085 782400278 532024290 937154304 666228415 537992276 797461289 892489938 528496316 818865954 830959966 12696106 503868628 182447363 548402434 968989530 675575935 63546462 534839236 882522658 878460120 614238087 51252084 932566181 578709419 971025844 144242958 687592563 402253922 681452554 847020471 38264190 272464667 134729873 612975545 207306534 118524302 659294519 430635911 353507119 499044902 196720346 921470650 307082439 448441588 620473913 373972250 636460930 939551405 419234043 746369936 914727006 368494001 65117879 228326191 41199809 211872004 621895648 491771955 542628214 349364059 408257243 363470077 877312951 615598602 38976752 406967579 383418906 140247055 551855955 586743871 904113067 481747221 848481304 372833602 725000914 38858342 243105092 261431596 41873001 370668031 292119999 555567654 146395818 694429051 203702362 886079109 264323642 747847970 797715152 284341182 63805739 310419174 691787458 735268732 377095659 966140764 635895991 947513478 134426716 506718915 514042147 553283024 671396549 728521731 552566108 35211127 214814925 240762282 723073190 540010939 319399055 127487730 485298472 620161032 329597317 407949496 468240118 670154226 723916180 944681093 536666888 888724022 782029834 180026757 233271360 279926711 301636257 559029648 597793892 210723964 738677871 918191147 455851304 935190717 470527228 595323764 707056935 680057298 28082999 460134210 893487839 89744193 336633968 562993672 342300603 347092405 681159532 999505897 596513547 319982588 458888010 236181414 440511751 855810584 219883163 617685429 392488405 622322731 850628690 32670504 113645688 695534973 449198799 934261955 458970599 969678212 516889299 687863785 122145785 892016346 543225996 938236842 630726255 277736002 464101523 295127488 755157488 244942763 923730147 534753163 904216338 445516066 738581473 275039501 178091853 247291367 840667483 812124662 325575679 448357722 397311877 860717218 950766450 906293769 500996604 524455183 978332122 941719206 603394758 660525025 206694481 780951821 558624594 525611367 434288084 974882110 457466228 13991580 528838222 748799595 481717353 401567774 162303379 234670560 112048085 636846901 323583575 228688413 89597639 69675213 714894143 127291842 959109810 906483839 487243221 442467999 9020024 604623243 20455303 588375203 662873946 848349656 139731630 175456489 213927943 234915575 312698257 729245366 965831058 406543131 395338067 883331188 373493884 772641828 16960777 789867707 894504871 633457822 400845993 488191807 253351778 777791668 978250262 176187880 784876130 599542079 572648474 331488703 31813827 224774845 537809767 861971960 453982988 855961173 765326228 314680561 604612905 328231639 550143523 374836006 946644337 67463098 809270140 297649738 316959647 843018782 264970740 474501679 145196505 995921355 922631361 337397707 300307884 577332270 88253189 470944838 730905359 939362144 495082184 139547626 30175580 648098078 894593535 995774763 384803932 961479635 434472320 592612257 543624507 866004363 192585740 894338323 702441868 642883325 572976463 506269803 582581839 535821450 464713943 551092412 551866601 939127610 953452832 48804419 120920612 623442362 281980043 72605022 984982843 600494948 27779679 223099807 762104004 568026932 571745228 218963127 279205323 735570130 362480371 767538044 643240123 958267792 297653709 236998906 615440998 70867811 379947846 397301591 618364174 464402411 421529649 27308772 942202199 644669805 827333188 961337634 79634763 95597019 979749157 928018866 988028771 307114442 236485464 768245598 191572347 465662332 313035091 239283997 298971097 33167318 496737387 898242821 431310376 261131113 896211939 432637787 664876161 206620523 862938084 682517387 152396892 42112187 667050624 213668648 317160866 55242977 313544880 983890671 451081633 452459276 984416598 874783168 538087436 498008338 368167482 506525611 482005505 429710966 611044109 448544988 971370757 844845404 457120361 633923252 128849925 897505684 425134287 859653302 220607063 890010005 885212073 974391179 267942584 764136831 127445063 79043591 880047183 885063191 714298083 500779557 375145381 330899921 841228190 592303112 654731698 850863550 826209666 621747966 686020309 611547810 2998143 527897208 20910030 627192805 714405743 857814289 548132561 16855697 958232850 558216076 742448749 743733857 627823892 856225749 697905826 306102964 42055685 350091774 433478103 518820240 298953565 648099654 442902487 549571238 776793725 148463373 680926937 387448397 941634481 693854175 948897910 425981570 973724967 890437228 195943609 663663598 367651323 150059158 491229963 491754209 198840109 427745884 252318019 49811025 473812135 99897579 647747228 725462237 278815799 425683858 165325503 899467213 40734363 547905745 811356344 568622608 728439411 128433994 987767290 79238461 885918021 378562760 587301223 386256532 654641287 468484415 421887550 987012092 84609677 349995462 754786099 120908034 261508508 841717158 663549268 747816418 903558366 876689225 18537765 501969529 786470752 456134976 227676038 926729547 173568289 812639559 348297927 29531177 503102461 72000323 995886493 750754064 301507265 71949884 553956903 35457880 457349658 213422440 348546789 378280587 568460711 837917987 582782920 424242553 773046501 413982189 213877031 470154135 409108541 902731635 804744379 847521285 827766274 348008841 92507306 896552588 958038380 141173543 58577029 464944283 698229664 693634421 482179135 844854342 558423202 417136314 57218354 940294479 890117223 406633839 90249513 720387613 758547398 559882534 308563790 535277248 725633408 823571885 893280567 202529260 710105923 662774247 373636575 297404421 582300313 282653930 639241903 297625615 807071744 963943666 858061427 160850618 558173145 169194594 248385629 227545950 801756010 630217924 202604303 472761080 391542761 96964044 144963468 635252018 548392812 187726425 958229569 948008794 26197493 832303463 17671684 246918503 356575853 63334180 782618899 649233144 50986407 972292070 342604816 782637140 792455000 437895462 260230413 808025452 147260710 395160713 189817466 724318937 989235098 37078744 805168698 696354517 679730465 501146889 555658892 60664904 523030808 942914866 443432740 507815367 72907454 977913754 668789777 534354050 597170750 106582959 831453909 694903132 516425642 277970686 707865425 364588510 191751672 120855623 521035478 596252978 995309068 674236013 414058774 70447925 618149806 599391607 110605107 33256802 583831697 84542877 937878700 544512994 909344586 579704887 612228213 769362565 700790880 552502986 915063773 696348096 550801208 375676931 827936676 461139893 178897188 85712048 427761 306708777 572701790 807697106 502350414 444534410 790100744 17996937 118659251 952022261 443232299 12127009 706145402 283106082 832522935 866935819 970713708 841851519 524279940 206866406 105879219 547316246 728986966 924766581 562156518 647036832 704866775 576089249 39020035 7730303 596529303 654218109 711198575 338969270 131031308 474958150 50928116 258958839 914443418 771004766 609532363 525093526 334358413 918017107 443508880 352557206 8177171 606937813 965218376 151888028 413647173 589646016 396770401 32001787 569489445 470237209 403952815 367169188 585556125 411692041 527904368 390560314 211948668 478969317 854136650 560936199 546780798 684966439 490061897 409607154 237175621 532628848 29792482 514832539 753071191 366040976 448329717 699181116 992441124 326818937 386399428 201323198 990479371 625574725 75480061 264801712 290256712 43259705 763995830 653182282 558576648 897130173 146895724 649991531 431475035 155436132 403269380 834254488 268775225 884171247 806622669 585270018 330538885 930901309 588148344 976036226 741061893 84902744 763820841 313197204 382924399 536076152 648815198 893525347 783175513 11308021 800089608 329130171 595743556 853893457 66162301 734258706 359636636 973581114 740259190 992931981 360878510 728558464 421536030 536644588 912685496 283610405 86367999 32355748 742664154 155363141 736082191 242541516 136371227 482362413 90841257 753432609 917688430 366398545 281838486 131548936 995974572 421960015 801401600 888208021 160258710 34516196 185066624 959024508 531536597 998872578 610407184 931843105 767082490 695775160 144091159 366577029 685316224 357312578 218611294 499986523 92314310 451633669 878611232 428297208 293397528 459559563 250452729 826555740 300763044 106772868 142233836 27117616 226085254 848331218 83533672 586032579 799528892 984918643 866992962 372555274 507196724 766395284 689739447 546376358 153458365 120281993 9506413 444957151 53801996 366925772 251077743 877808545 242841803 892252672 239930163 244223111 456104314 879423731 943300761 312386253 867994768 566519699 171480290 924600157 893379942 962137088 899897790 854512835 980912957 46474877 321658690 175890491 997659195 854515314 405733612 602179230 957749876 939572597 44685472 611205499 447405793 745640511 516689322 101037050 648215651 342805430 14364099 741528566 979359428 649470948 924735492 295440623 373399477 751104253 818343927 897429258 47015372 797911129 632332421 275275286 937726352 891538815 231843074 488934029 464092774 643361560 326115377 713115787 962118050 602353658 552277810 982322392 518775163 644793887 317145750 169093094 224480274 392433062 381754195 518436043 465033844 953105377 412254145 869153860 533268366 945887294 254467753 451797604 327821626 276127069 195666486 444038716 287909180 135237116 185482496 103429505 734753339 76428811 199918340 610703081 760425671 435212698 907784356 72999035 365147229 347031527 550153139 251605989 417384539 999383122 149816414 442411393 579300618 980477289 630636107 677420363 652852383 610969052 508621177 957451756 122610735 274966411 630303064 616843188 159513790 823394421 585883069 925286296 837964852 716529097 324256229 635056699 124867683 118977751 457853813 291417311 289161218 953616922 551785850 403663991 113004470 441720888 98252138 587527320 808794375 410181883 890660387 818885765 661874020 375449173 440930537 282273315 667270953 233893731 655639145 511160062 719881878 48226153 731877304 835121490 829075156 187707598 906844501 623500540 226221813 8070698 175795749 900579972 211095793 528233272 44289650 984240667 555629227 63183320 420149493 327595157 860932330 170243351 352386507 828679281 388385890 911182377 349571447 641941209 341780650 264588135 480795110 144040602 367409477 482690903 430675826 612953903 243497626 371012000 470161874 483740083 569325309 973517850 599040816 125133295 67817893 431466944 280055065 622730064 39350709 713521586 729218430 851412465 408910645 600126527 775146944 101224848 407500822 519098324 941986723 665431698 931196211 775606804 720785492 510596363 766305611 18158781 536291178 128358316 704633865 826207420 756592097 812224730 5104893 304438055 967021852 50319768 647135904 988266547 208453612 564183193 44982613 456078407 128515972 387562288 410685029 932435695 591477381 925313120 253760256 342494684 253115375 600694225 712445249 73834989 624226352 595104460 753934119 448506913 882964001 404977487 553771930 708260516 360656379 266363636 284339569 180151754 8003686 790290951 25912416 570254609 257947503 377295477 680365580 705631767 77863307 289394389 174541564 111138219 414862487 493834597 709168544 820802238 697063638 844208911 316412244 917734254 111248379 38324833 156539224 786326013 83909141 979382419 161535447 587956692 594103972 282304131 468592861 653009546 356249486 837176759 673777513 952537304 915116577 20357987 810373723 495780768 354117135 219773272 989613944 608013553 775903350 849360666 86976632 914928381 573143263 332851408 691214830 737965851 713768499 897321033 958684257 909626581 33588169 138541049 16048951 628706512 849671773 297404417 786474432 689347557 198145302 139907370 192853047 587935755 486567041 749315042 905159871 509222759 437106067 455092544 409600092 119134530 188984486 965292036 98487815 752941842 930760837 743838100 516834704 503062898 637503834 955164416 266945728 634911527 317478330 275665921 184130108 538830359 905479076 410772468 733035672 250844761 350716284 260475616 898696013 394062118 417636111 951393909 389195192 614499300 430738067 800662794 802826279 820620575 577791909 629062304 166967499 91637636 603013195 677482970 589622457 259740917 46918640 948947212 629095159 476586867 213901419 499471661 581449578 745352231 268586232 672016089 647633385 449070182 168073536 636527961 331951910 384276654 203156557 575932314 942994378 575698846 538427795 726907191 869172569 915375875 404357616 507336045 296574277 453627600 732926636 827016740 892253159 216715810 756336756 610126573 149310851 889627705 714815579 79513594 749159743 878979459 48235741 223262510 851601966 923313808 539477219 75389715 961927752 628607776 667884726 716723667 99189105 987217683 544899857 410391622 657441905 278707061 32200204 524518127 23518710 480451446 906468398 89041137 143037340 845710201 261829478 373131036 245776612 347788794 515593737 324805355 200607803 936733352 882432974 849118073 95336938 357884757 714442980 166399118 902215472 111892732 27008209 382381980 163426606 996400320 150023566 343350454 831001069 725776111 525757046 109946272 864653149 367028217 486866257 557378750 744134233 147265914 888469832 303887393 598074783 865555766 997538802 50245756 103335643 735915544 577978448 46385204 288914335 129302322 331818435 206086223 487735393 485589698 905364250 669859704 214483333 839398187 173105544 704328970 849068626 816886260 564295599 348329478 662745595 327471829 731669647 459683342 770166938 468214439 206059671 340234870 552846383 88406124 587676318 485362483 715283874 619358803 818902752 765054435 267974087 580460204 785735169 580380881 602269781 38622965 428960785 514611688 262272238 919648462 94945154 56312771 460426781 366294277 981023284 713208479 920590417 428444811 544934508 103087970 296375010 170642300 289088470 951091870 390871316 175736860 559275143 659398539 811607313 196829145 537138684 458707716 523101414 422558273 233596958 669590676 961158032 534435345 563882038 22893930 806877680 545577516 901150715 227738970 932911054 443315871 817704074 330098665 297799898 112213403 443653992 11772729 468570032 87497854 623866243 792960792 205171410 437645513 814643247 229602820 864456613 822205736 497439275 315141657 395976573 237337711 873428121 559333915 741329042 953762455 228897803 473212030 820593416 959990724 618169715 201657943 19565030 224926019 612483885 39562853 416470556 534695558 980331010 800310288 570965894 802579496 314255388 123835494 64423908 289273071 723037716 330608929 915123169 92636354 312211428 576130974 940423691 567476151 768092658 7895012 604561373 743875846 861552652 798363045 262655671 997322774 92452967 196814645 918769892 717579122 253549727 759770260 235345045 667287501 749460155 982508650 424859363 596660990 504310311 106880262 54983374 548934926 865183929 887219041 622153283 278402855 894766511 679448086 406883599 420948121 167831722 35415152 346829290 398325731 483460797 36113246 942902141 793340325 557498203 605899381 477507912 96077228 260929888 988873463 988033220 991637484 110824466 934247623 947866182 674140032 69389855 405444473 423206926 901057963 380667037 176346947 481181003 560867030 273196549 95371266 575018248 350257047 571591488 732466751 279176001 947543465 997035165 242393640 348928984 120930540 24037069 114905753 52075924 548019825 697392622 589683211 664740648 714176870 406859913 354633639 62083119 333334570 980670087 75438143 333940263 174110527 221045308 700497734 936307064 40220238 885731180 292734942 116441209 166790959 608481847 237333968 630913116 39027928 426751530 971216519 576027211 660499568 977858879 685683228 944557639 932359232 609027277 280882256 72232004 71916732 691977372 654851976 563086111 241333121 257466330 221836757 697406354 405524559 89301532 608118253 38348623 87021074 381676129 144284206 957448159 31217633 222621194 336366499 789788609 57046514 988693990 518370553 105250642 936858796 707620141 742459780 630187999 663014296 938268280 49911370 355610775 954919021 353080015 481699055 197685653 223464448 628219550 271883455 206976727 277519193 912876732 169061815 536904523 219164835 99651941 931001715 883994045 257331247 200881980 641330233 361398249 282387320 753934930 131089914 985524080 988525605 212663579 823894864 93522142 688000253 534209906 647195766 636166816 403125494 570412448 468298324 124984849 380254251 656662352 227553661 632477808 631252190 1267352 371795235 107451373 81632378 267434742 598606375 891485840 981218965 660234317 997841424 264748376 803839465 323078123 410530320 668950823 564931927 634494343 722287612 59699650 103682285 805307964 277429077 175543007 147488474 3468177 961602622 152028437 804592256 851147379 273507466 382506722 436225885 940287541 401876144 223488436 352698399 509433750 261436622 342304986 225429911 794524605 965216173 37813904 126287298 833426738 183675321 374915315 585729730 360418544 141655053 866321166 163144164 570026324 405336420 773110741 437299354 545299743 749896490 525360412 770104191 129463424 685766252 725435051 932649814 429979150 508520161 166375203 488346125 7368132 60934121 174007581 690771381 501637129 632844682 134058509 873082758 32428714 284864372 494237015 257546474 936500187 761625086 757090113 469213288 518506298 504197928 479132673 634658997 927973068 777360793 486360236 78304680 761232382 82939297 920570950 777703245 748607654 581606965 534725304 325089479 628692482 67542004 265954771 466764650 690968502 111203880 759800400 244396470 383373519 57684929 223520462 203678284 712932546 441147475 622909146 754758390 444039791 923101983 962899429 636878761 925219606 979141642 144140868 686273407 639918442 323737254 673259069 642265019 960586367 569905450 942707445 462524104 594980559 938231157 130768256 715874621 930790209 18619404 177645016 287549137 311794211 935543073 510154719 81289065 643403304 635212683 615209051 446616078 784304496 325706695 735373820 861702647 329679489 461094654 350572128 663943548 956752197 454812670 561628935 867544868 658870290 617001026 583666265 690180246 631439017 421270759 857957543 773830057 163663144 850535857 675518251 548169557 369291044 664270355 205182725 800594622 113347724 98119202 428778048 222604848 643729091 518329248 588742861 63823392 365548936 151084789 920866693 442725927 972296206 833331754 342839080 767464968 5948903 390029820 907335008 159191214 316491281 462096586 946080704 701298478 596046833 837180312 701393088 148606403 439882324 785052952 979061952 111935694 589570672 169412254 41620236 457072606 194910435 677824815 396946130 846774436 754427056 309230188 571868207 751709178 70308422 934109609 561819937 937603303 464189562 665722587 889995409 566899600 28559240 207637920 28225874 447471184 203718678 503864899 549674271 510501532 63496242 401783982 365192597 744508955 615431250 557604222 922469694 99372438 277975632 956392175 156325518 238086659 278593652 130113000 300530911 826232696 448854637 648151289 606233454 58906174 516255819 498583386 825282150 419791294 599033230 323068392 41934811 790715274 559005725 47169583 437798080 181917281 943933249 818873688 254449663 825621281 353785523 544772927 527514969 107359705 915591055 856183137 886456962 254519995 167430488 762504676 412586007 845417762 75643137 633294492 294127763 175618194 748276698 607750653 624468835 689657270 897190051 965119525 233969625 651901792 39730303 556594652 162490924 529783695 12035580 536672661 849220223 716921954 740064785 193285218 626292185 756134183 652002074 359890695 810618157 626075982 510068700 472272615 742240339 538755446 178179717 102381842 411264782 777392737 286729128 634666817 263484423 184094201 641056580 691778770 503193039 314342995 372018625 28879822 764178396 708618407 931524327 928445923 759033236 643652188 636241135 708288873 593552191 102550524 895085429 363485277 166242061 770056765 31674493 390970728 608540182 975576308 998144887 853329114 295762272 29907496 943984692 918916520 417949392 123100421 207386102 91815027 794312248 927265501 173996640 901193346 475817556 391250475 573472384 7725252 892219329 703834002 714545610 624235216 261823499 554282719 847448861 201805287 605304995 456950788 56867261 889628653 287241698 990531100 243272278 457087093 318181896 434859114 505448960 118647219 68085825 802150237 978229558 765891975 498886043 277405570 266277087 495717496 477684241 39151769 844490566 914250936 733535109 144693891 18486565 358403356 501602495 911331403 570085522 768869411 665242737 841731366 136262170 826898676 526983218 233382767 820637605 7537249 855148423 952124841 51964809 673983454 662197975 525515646 582065541 686733453 320624243 511515331 423876028 601039410 424089495 981736048 276917693 420114495 44790622 692426156 259645821 146138313 477956569 878736067 270199384 452294546 439586037 722689573 767641623 952971007 768983947 144370541 69503970 861111584 818526813 878790240 61057360 647367852 673380629 169924586 782104416 749083140 707408195 466879261 990086008 588011565 867667296 656564274 330336866 958320598 873113553 738238354 888178516 315977304 329243097 36667076 256405741 853818546 548433071 952672124 614557745 947725453 744556649 283287188 782933900 324310834 570914568 420540178 256894422 488586911 603331448 780119840 433882444 432368750 524670600 125347600 556090002 661530347 568832498 981217377 490359733 937010178 451646806 90230451 828913450 724444236 1596737 801479889 667635408 617038855 78445087 345088431 617368298 924062746 587239757 206314343 562377001 275832598 503020555 624026174 551863196 24855090 288662147 120466850 58129350 877331532 277420741 912839457 996950410 886018282 659746248 19517304 199241271 737896256 537425012 37697933 531651966 499368224 410016396 629903206 996294272 683642892 174266822 976694587 11769026 348564525 376083128 344983140 459342640 551590734 860553699 553255015 157740321 974556137 933949618 949938157 513939278 100348443 155413110 124137418 918014178 656235695 171032424 466991610 317415015 213368848 461815209 772511393 506310864 997448024 703118912 225352454 428190337 713206598 638097444 825127587 929460792 790971200 490026793 931211277 327862311 947670103 109831954 396687368 114190563 317266497 738621578 576733827 704193125 320458844 943635999 552002959 334176022 573019828 337335629 535240296 32132292 409545458 28201843 253349486 306943906 296286067 601969884 754168371 985753934 250821169 501797305 169330786 525135820 386574807 121947936 188687582 237204109 147078834 256964120 141408165 563855714 350116797 379236998 600570853 739248010 512336787 618250815 171406063 524223659 276847483 965256697 767012671 8348112 338761320 284029525 630091128 903853170 670472175 556383453 994690921 837838699 963122511 605370626 898363137 529830400 947560560 270288673 765615962 546824416 940848864 851595124 277959612 688793376 454942938 348935978 437177486 229281598 464844856 586692949 910233193 490180639 849356679 897691624 932624641 78327308 220251889 406437578 445811260 147316673 316826447 823430852 637850921 703264087 699238686 470683781 711754487 988046675 722760589 76246437 716992000 624593828 134587234 488082344 860476109 485122206 825922586 966390006 482698500 151507968 3506898 373102049 82232444 954131439 608632658 360678818 722405933 294001655 61610762 785839451 238916925 170713100 408367118 824697619 130732533 789714830 114909218 937187517 397301448 328737346 980551082 223341872 548369746 495733077 71188150 806228273 276020056 780801115 566338557 796592231 506522053 720406099 88225759 580024932 417156523 163477663 463415139 370498465 295429445 664777742 81466678 291496574 618613493 594814424 328147635 723461191 656590408 277736599 695155928 218517035 633407730 192805715 886985035 355062338 637442511 849362037 585586013 4507280 156748254 928934100 616285443 670970879 665941840 515258033 536199644 502430556 335814258 361093293 303456820 727693926 831253189 829067479 390357495 813364920 546466281 10476451 547255226 721345249 745203369 690789102 717052351 176350542 145137656 875879166 390300910 135779675 497730037 25198466 198742484 391568967 809710304 896964751 640325035 986437181 108979237 260886430 421251406 178903884 87780183 869866137 766808649 436221553 16272176 813184203 682767302 429140107 921348247 991011818 675766179 738276707 596679571 487695634 232343386 87798955 765991515 354992075 778480914 365894907 707866182 594978560 741899934 427022037 707786458 778873862 523151989 506465698 700722373 335132058 684040370 777589940 268692693 471587556 540687390 496514628 409565959 74661998 168397613 736108659 720296318 49098032 250366190 646762570 320908680 991617415 941611047 840585914 477354645 190513716 183820346 364217759 990278978 996329834 940432956 445894326 921611345 963939773 39990752 509511852 513443759 469138215 551592585 217121296 836221292 591797263 296579640 474376284 617713865 8980035 724246179 568963824 544295202 124605942 627411997 931645976 429185801 216599240 35301543 516668420 126484778 923732670 580677350 923443147 966634345 742402885 529507629 756656241 676789186 190668849 929258096 741609950 273654115 44832959 961618256 830960100 578275745 390349974 352973076 905066301 887826163 852176579 195892394 748634759 678680577 484268219 869080492 935546190 786227857 613662040 338138456 521139458 366545050 598845414 149336979 551825407 197352248 119009036 705378286 805872257 540558252 935476195 395141282 542815159 393952867 166115047 306516362 128143534 269678573 515106557 539045170 431040354 457090569 448782962 40094663 383124403 659123865 369176061 76621856 261454259 11419303 424905657 170350780 694293046 318239078 489265707 54727875 399415991 147932981 663612227 912321797 39115624 35358354 674836820 450508023 359610037 538460972 475742749 371424184 949918958 216576724 531150786 347912980 867386703 792090248 225852881 624837748 176147189 122927467 872472125 767027189 126767595 769478596 275958374 273940306 750288930 395364874 811532816 978992373 657631351 307151833 781126249 254770411 883625382 325938931 843699972 466799085 694489947 194629696 434740450 656993368 139223845 88639705 87558501 821410103 207897985 179709685 888593757 411888439 25327821 123725048 231008765 15249324 712466002 962595950 725011939 790514076 10165572 817594123 551036946 81310379 659334589 134071721 663985405 963671589 117815224 775686989 570083187 229502471 625282086 679752223 723196853 425006060 327306707 981103221 813919335 931407389 361782906 537073608 304905111 929005192 443543485 243099070 718103995 672089545 659766819 939759395 415966892 310181401 160192030 797889764 34334900 40838241 754746121 556177189 937180542 667915570 696036900 700012576 792267552 817658307 894548888 42384713 56266519 568021745 872567158 424711213 797755208 56649796 299556027 160346505 171771136 520452847 846473280 695285825 647763958 296423108 819231192 502998113 560302916 838223174 673344300 563879450 955832948 644743834 732099805 278250697 958269038 601260177 907206500 275502577 83769997 629206944 372554801 337330748 836252550 357281769 708667025 920202366 212569222 301699633 598717120 168907955 330065433 459917542 63431389 8526590 809171760 481539877 33887731 192023720 396622893 803937703 700211955 525072169 431583187 722691543 276575668 355821849 963741774 363389634 931095037 631956283 159515703 128826400 862246512 839486330 519378823 485312850 982646178 678892010 482840229 584796253 131373837 398757320 828958559 510876403 475173393 131897972 587514347 858785126 588642551 901496444 34386915 288519611 708620271 374684818 955438415 604984469 337616404 368476307 568215965 208179783 514586731 800703103 20497566 475265477 854793429 467680131 665887635 687302063 531244843 435556595 873795104 479569229 879281184 310094151 681801557 519218575 374986329 823202087 599428771 873129482 845934431 748688475 233143527 551537665 44924579 936284374 619779946 725662550 728565372 162011062 10218201 553472412 608422702 509277245 2568773 349634315 383656931 577289943 798217775 937343358 333125033 748824083 755819389 498717568 559086714 270587313 292397175 364366654 804883512 957641619 244982745 567776658 425784750 236382914 697267643 90994936 705299850 47468662 355208357 751919771 394567016 710206726 792082562 768896836 535752392 127610103 88921002 870173298 270649364 667618803 651172312 63787326 811348893 544698318 794439989 486493556 891737243 911297412 368777033 530809473 319847470 686751800 22546445 519401594 949019237 243166775 3160284 440054051 613499179 993430511 900874108 227253473 932639068 209808639 365925148 716657600 375818171 792317227 398181199 792332413 949877229 659892059 770661650 316389235 546809734 27972260 74917837 494441901 985477376 311417156 808627275 831152597 632105146 274632602 820450752 481165638 870517248 197493042 854822604 265373952 495810048 212894659 792883827 499036841 598363351 869996579 222771490 849118095 684164739 405343064 329958320 503993259 273608684 317197710 280616027 688197786 882321897 734346519 220815298 392916646 243392559 333992812 625116152 505208252 263553630 739248694 902246770 99808886 679813379 554241595 42956298 133709073 156687503 412882033 354831880 903401077 247186519 337865458 538479896 199704878 487346593 577140739 49927506 195422330 75894419 824982283 835441710 84688179 172646721 702164898 700583318 495535842 398719651 480164992 82716886 14461110 164159897 786303116 408359330 408922246 635817964 791924686 447478553 982034898 614032720 570232955 545501373 194138817 860517470 457768939 414386558 211131170 640386452 852500389 236474544 501667180 949196384 354709075 76284181 85842367 792622607 914397384 215488971 883262688 83739868 24819966 330461538 581349699 900981481 823213341 840902864 635530747 127086908 797982314 247906930 743441863 215157963 980094045 713174286 843303440 585556843 408477071 911318736 773615590 432505569 457909442 246092879 315783937 238275027 329804773 201770374 85156029 904822996 730697992 934787293 657071395 692132701 421601129 199113757 543540704 178037455 230747753 715078015 400791888 955538290 155198098 726691484 256565103 991985531 716595866 48330113 54021860 434351103 690590813 951589778 116370431 596894210 936208347 309257388 991041977 334450029 977267267 105472008 680817325 635505166 819906274 776082253 720295463 37359781 537976378 35380100 702178067 45530061 687651052 655897642 450376457 189015312 879820484 568203287 152687944 677596640 821157811 50520206 980640697 132589722 354077909 102615106 124218347 273167738 291965806 117049926 732922898 562808236 812645352 966848790 415811600 108615745 750886105 438653850 256351852 798928179 900581368 888059933 396872023 588421726 943611692 907103572 784638885 843017875 105106304 273089373 873625557 929762942 153030181 812360380 378788112 216674234 125505400 508146019 678309926 499505097 507755514 886252960 941143182 224292626 134407003 717436726 558964583 595513322 425470824 613291079 576479350 878275463 38740768 611616867 764457260 847333641 951080360 628850045 26247072 763391612 800128327 367770354 569104276 479162835 717417074 562607753 958074730 74435043 537046727 282908526 735631670 743063918 969703938 915849016 751396268 513036320 736102678 13505251 832996655 961164681 879297298 129210835 28616385 54140960 142889525 363865303 23977236 145259083 770792156 198399781 612730241 388512589 284612760 97193302 247200004 622273117 957097242 832661620 992104262 361887633 563195711 943393514 325935513 3141866 474285573 971801486 970322415 800698197 542326173 81297567 719223272 706300830 6437465 869542589 857189838 950360963 626239920 89481211 354615697 200381601 793076044 84804297 434356165 883260804 696462325 424334089 28443304 169515164 188113564 311176958 540394278 654972229 626256736 302939220 404063180 773632701 581568130 113801508 204172754 919560495 50630510 728851689 353427990 549180586 136948664 940222855 989363230 609899562 891656729 135180362 100227870 122288783 32354167 570828527 364441832 728248227 6150107 923907723 257093887 368412949 654285176 187421860 566981001 454119296 269210029 351750700 516376147 492100966 173665786 211716214 3774425 560456238 476970251 143926336 809474613 460834092 714190770 75998381 35530802 354189977 656215533 205672011 179967038 172851858 549408730 727934481 909281137 616683559 105190605 683341915 117109385 131024451 652247601 496409580 685997292 436199619 407348388 522883828 821786028 454923621 537736939 930229256 995319937 465488599 637808881 602435879 648379590 115158948 550914759 147970739 745953415 465619277 637624744 939673211 409420144 124303148 776007419 338276018 128319963 501867409 831696710 3680504 920276418 447618215 923727683 834044752 517386195 301196171 620315847 551176490 129086041 836098362 245011929 994891867 953917004 54029220 525827489 578800157 668341836 586400916 57350517 461145622 322789279 606678216 695902160 402457431 462892343 612175583 155316053 590397264 441977510 584435296 276996557 400860389 965313328 745772224 613652270 501298004 692801213 833121880 927401618 530124622 768238295 271885670 803524414 239140841 793672634 807357208 522531740 594197408 346248514 427461242 878122047 840748888 353072634 284300171 932874977 254816098 906219532 227919911 418322281 939737201 845282390 490632985 569831132 898674846 743773520 610449171 349999221 659543671 172155945 706640300 915659914 749725153 957317544 319808618 745359777 498560823 943741770 292672435 832367971 854471219 327382573 406541271 297191843 719780602 353953302 127418387 104103774 334210844 524816505 805566853 955775414 133053068 182998886 897695799 687665401 898383016 300479141 15678490 53050263 223449911 228436118 596185097 697198380 585533282 514130252 433159362 831044476 919111875 856043389 360952818 596801395 622040658 25709448 597500203 107984929 356111227 624334967 201561824 995893189 854748421 940398836 646011769 860513984 412713001 282809946 424688187 146257054 321930112 938980776 384169049 395181330 977152532 896803974 705070058 118638328 914389586 742564930 500452082 738779474 548892941 881752786 897356890 17782860 551308419 65382870 385859829 107824187 559946584 240231320 197808759 687472791 617431450 567242242 237843077 361783043 239507904 864679858 596533157 813092943 32327591 680519904 788865101 160886121 188747155 656024187 714940370 655138414 964313392 634729738 798841208 684032931 59447446 380115402 550888808 652934259 150949185 389625753 178335669 716769901 49854741 876278269 734444883 641459281 229447008 618768933 747974436 718705920 484893656 338399723 824342774 97401480 905458076 32753354 802563704 934637336 475178542 898656494 542066243 392671246 530159740 187569188 905363158 652281071 196821469 883262180 95823774 896628320 190733069 451838796 500107243 562433338 841580848 710711843 369060341 321875832 986579669 245801432 398685148 762168123 506628849 255570311 869003950 111277005 801226208 846730729 619017562 181624996 344430185 104774759 369021881 550258266 92872888 483259411 569014154 28876725 960249186 686504097 739257209 756654747 861315174 506475890 502504470 298886436 483218985 959444621 188530908 346991752 780963447 669678496 748257069 269769773 200311685 639842565 723867469 783489692 526909682 543886009 453323123 487275658 824192195 358586723 831245492 843072976 807072355 838006099 181800466 838702709 297232295 863404417 742852474 766453665 902661072 308746891 772842170 852825255 694424193 18152377 260419213 916309508 704209608 963783160 10775440 786994779 303088664 573580517 756872018 216429431 225288018 436420025 112252736 975753547 752766393 234717278 746219447 854932720 566966779 82509925 851773684 669501358 379866923 194723330 111216674 399918062 554728392 385292053 720364116 51447364 211719864 265710630 885193090 173399659 54574662 814869861 163809164 672550979 567821098 461824424 102714684 512479963 410296193 652680558 346441030 810689381 206776782 244300254 491949887 669874749 927662593 357938635 32861867 728646117 168255597 392598182 754493936 593762825 544299726 215365522 765129572 557078652 296929612 559107159 26538559 574761019 508934516 754709091 938599327 939740261 976415549 197725133 415997838 151163723 203635711 316839508 307125248 463051098 232266115 809865313 867814351 797193267 989083382 279788033 360796089 68969877 801313260 862556652 165578087 473863788 665650019 448170115 617278060 686970318 903059136 776556235 592816961 559054325 312834258 693343604 750882887 871532355 860650698 856773588 112769224 343073091 461693771 656267502 11923445 883147691 404073815 903349348 589645797 301684563 517348696 772130699 538125981 974261566 327110699 256421975 621869827 626342300 17776647 418791012 632847336 658575036 253256083 369650688 317494538 20516379 421448925 797019926 646779398 11678042 690379352 952613440 163720038 529644870 452345830 238450619 200477085 927280852 314685895 120399469 651023872 366820380 618698155 339930854 923999703 644248932 423292838 512724066 2307396 743451157 16220473 772583355 463939677 286714307 945201730 29105784 291884058 43583787 567890967 804186060 945291613 90432301 122052709 349416333 355925997 596386261 558871631 851181369 539019645 268539224 94448982 577819383 761119396 197809424 610473068 837015702 39240166 941958786 959603427 311075985 162967724 905822296 388936569 30194946 634460232 370447205 421616978 206785204 883850993 918927268 605128447 384016405 846429385 884887353 835124081 700576316 406619864 701374319 591881478 16986089 727303697 366070200 502405253 87288451 633683023 604971697 987614234 845956889 632467790 168190749 536308829 613028704 650430396 267516647 977232711 435237565 841708073 162166816 933948736 359329072 223240716 129359880 926231061 800097391 370183882 985027584 454930936 828390094 683199659 100392083 448930444 595805261 982454749 226131059 272662482 954279313 174492542 922750330 359920953 416803053 229478540 557593009 467951252 375882581 456430835 230705214 504456485 396680041 580316288 340503672 923384973 421978225 698468848 491513561 923780057 299965788 626001378 864057857 634357889 164876738 268799459 714218430 377355616 697435875 507762017 607582214 507727807 872491683 943298229 628349937 370347076 716321426 846540833 903392960 831254029 902509802 664946894 846295779 614042513 795673992 723128271 210949355 22817719 903346418 369645850 955852947 329661133 199135581 952714899 845415868 749535111 470995352 901330691 633189752 65931268 304412714 802688280 776913140 285200073 130710070 347295345 188445838 63413696 735717003 81506442 655457992 769449283 576254115 325231057 590598993 529745675 232127385 188552338 861641718 279964480 295979833 690225675 317198262 49734760 131705583 576995161 271629237 582599052 144910034 50216072 706465339 134889717 206426277 595953032 651358142 380715888 956466892 45829940 94800344 331062312 303512406 806019148 823424076 578459831 61010173 427622010 169107977 815290388 978704413 588602701 488743452 838756777 292871617 658920768 662800580 361330238 540551827 783408311 970884196 383154446 764350958 793053428 135192713 59757748 440322258 442978094 565085408 42460727 356249317 713604990 226478669 753510400 20450676 705854949 675854285 853333225 296445562 137553224 309114762 289788203 575086996 686258815 495875037 781634927 358576907 257814846 655961662 205011391 562171594 653319976 848885841 494682769 955575148 964652233 41572065 940662724 226644787 108200077 862429409 297137052 167475966 133849551 332919915 382867399 421230948 216264658 599952837 423793241 805646747 563143870 483036760 831688913 466538108 524987047 480843192 892277011 435358615 436459138 92563106 843882090 455385621 564565299 821844470 795056272 291566031 53898369 432923075 224324257 458724932 326434846 642104376 832929312 936980380 202884263 983962293 675255802 212797352 989124246 784773305 369893769 873222876 354970972 795662064 683175301 946738521 755319877 479679023 956160789 134363109 671727501 753532528 995864775 644075760 379582291 540003286 773063056 693689235 538685089 280230831 477260236 138780297 500626537 473953644 446177346 145944381 423080069 406627239 4179742 244155068 568842418 331329830 28985590 892115649 517074846 82277331 583726537 125075110 84064731 937416127 414838774 960285302 10039517 973423145 9466194 319731166 196366345 752665714 117776908 1167160 818929063 682282790 694700487 938418816 995907048 678870776 74084483 556573793 157820905 113682884 263033776 714533157 991178405 330456975 939067683 939718088 797623305 499439486 173928984 78585574 41074663 862637803 655337015 25314250 536837365 292809804 715177098 821948769 147626454 976608840 466357384 899404609 898301973 914088616 324189967 734154410 87742240 679785314 160050531 747681156 463112531 139330446 298018353 344158049 27108588 768063600 978308751 357893235 515867416 662267510 559305976 592950426 219349224 966073905 915714646 520832097 550476371 244127067 825517298 520264693 88474939 565524440 323031939 542802987 254869094 631068341 306029606 727719302 212576908 749776165 578813281 781935916 842988867 979304321 70457118 100048364 273937420 42296911 517506488 266715454 115837264 283415863 486944999 822144577 370530144 425283600 304215251 373232825 379389814 717516754 456823048 975621659 587503284 938240931 766844796 10643065 217309472 697551821 965212045 600753045 199516849 580315840 229852413 148499927 562601531 565348895 820352253 480380237 566095488 996213158 727427873 805839021 102638892 243201603 813811300 838397017 256025038 704452363 283597871 216064852 37460192 204933173 115326796 543802451 764214981 474320424 931334898 549959849 233569474 771793516 482128833 605876055 910838283 143862969 854077112 194056194 502154937 876593639 327230537 648222206 249132237 786880248 15691591 97468734 26416432 586190874 257359343 713958242 781666996 568584606 779779304 213668530 293355794 785164034 273171518 704716062 52030442 966451687 880103528 33550650 576695241 652991257 995388739 862083915 161245981 301270411 85497104 44356147 920112444 243642201 256580482 634560131 619752814 999388869 151226539 227406195 397560794 72806714 14476808 119261662 938329232 943351887 779756929 566013778 630526090 140752058 933261920 644742908 871801001 205397856 209121884 11817648 693939382 826249809 152090770 405769712 380358242 711692217 459829897 843328740 446949448 108803319 588517163 106268505 967489257 762101645 270000591 219183561 231367594 555854886 559410481 877133903 239083491 139280793 967808120 278997943 550634440 530965469 764199985 298585197 628022653 839442198 370640721 149687689 422074891 352219792 950320178 784366538 630493793 51014590 393869214 456481944 869447770 641716541 292944323 64441091 469104566 802537422 311903024 235030209 683960610 410389341 763153897 728774961 357315884 791166973 481306703 302632539 674258765 967500521 446103086 182896622 951196391 72927621 417090497 718646339 297337925 597955677 29986464 288477012 220955029 634327073 155815637 970334158 394696179 308550831 351166408 853721598 996167773 686137354 815590737 998348508 115468993 442045790 62274732 807515398 773880554 352510461 191083906 120233922 819265944 249829473 214366940 573700100 202636136 863465262 842623025 874876766 150681060 25138 664175196 926342419 645361791 221275485 205621415 374727432 831512465 277635021 890205117 273712333 571041114 15867072 786524337 775647387 797366020 107799209 299904512 826912333 178106785 4803604 265325205 95717997 967719722 350898371 257936055 281890602 241373569 70590611 48613662 932260701 747328365 14400146 472101865 695136130 123632032 779238389 421392792 511488196 986998709 419810066 283977246 724759535 585758509 904191603 42223500 521507450 784613998 191088574 71422563 653035398 762126798 233306825 438768134 852795610 870037634 270480526 491137600 852628453 953066926 5797937 386160397 836336830 711640923 747898877 287834051 174606119 782449528 420347493 783522859 948660098 98360545 223540996 626261360 269385697 25691222 834914718 57308457 345007869 343717760 905082655 535319637 803212083 711373809 654996121 398855253 823224715 273108512 482364484 581050362 148922546 9993330 6324874 378452087 540968450 127508015 260902642 834968683 50540155 756165767 682296112 270594265 539300291 57393042 293938208 613729838 30246694 759841621 721188549 735045445 639628451 804668598 847089992 752856659 588934609 921025675 512998401 983516675 886328060 255089287 357441127 712426080 50579984 361680975 979161631 586410977 692297129 732572779 606737907 255816801 276367363 6291275 17017559 952339495 173082628 853463115 949069542 30078685 51493953 614765740 378375783 437263517 588840426 438227094 421511871 385336545 592629730 637133339 517476741 367252881 375512496 662630450 871213938 22998519 888933506 761692607 253233516 889187784 772201522 659328651 924397949 484469286 747253821 32533062 571049945 94651538 877714122 809158538 29630936 225906682 813335979 3517144 433203457 562074036 832603476 258778010 515854334 764402814 591532517 39622432 908912035 996633057 840416295 466761124 185667049 876998970 875543686 278458695 213788404 771032752 646683678 198191378 79022610 276425272 251708843 574794233 173770930 314921629 890225298 270304208 474170228 264195077 18085352 540415068 756573974 548722955 426436449 531598916 980920713 70792105 415282778 435967004 267974874 901367877 349902049 248316253 787929161 543599277 567052447 603915110 285359417 810898709 245922797 329487488 495184944 172830491 286385864 741189345 678458344 136279237 635757023 834698652 338753082 360135550 811259257 719964598 591751974 253333790 778161809 665206038 737977309 632703715 678766533 864392080 900268973 642112109 86385244 95554524 862146324 508703948 273684294 414593179 582102709 369101689 73497629 677558615 264675930 238419277 277048858 210487679 339502073 891645324 391798059 620014447 982322346 998258407 427808474 251452263 427366835 373739634 255037795 909655183 791640957 236219560 471006367 206206971 864348826 686275187 370429210 778048931 347692746 994612253 193600258 377758566 327051756 138414171 677332271 800503314 221150478 216785227 312920096 302001748 584618341 589508979 757490426 112595398 57125188 299957951 577136783 169019884 556753207 574828931 780078166 836696879 163200742 351371137 956335469 709442011 8775203 812551384 731416474 946803502 580403690 98853659 731908177 413972553 859180897 408609850 487643556 174407474 649897166 819093912 148613462 646222816 941945001 796892406 624265677 147921190 493115018 340690819 343627031 634452427 459547703 658193106 801935341 510520179 933631643 745945572 333535404 351579059 49221829 618651677 644707934 185514241 192005365 187320390 495198643 484197825 331057549 579280283 829619709 185725245 950293529 277368500 977646145 736190114 691400776 456925848 818106912 986588172 569719035 409934774 105242865 7200639 400193331 572993251 78001830 177015774 420050200 989063256 738621663 573183489 514265347 940244671 870787044 941325722 132174443 551622178 160438693 610113105 608339189 44440313 349177015 182674090 964749165 363842334 745908571 415244571 452243138 230079706 569741433 214320889 297367828 205757401 164694684 908378504 462735526 994435118 876614914 713805041 367583970 34857819 492304517 679798595 784215387 46077247 394263725 57572730 854516426 140868906 508671659 443073142 757430295 973817557 437829204 9348608 404052298 735136600 161397547 842363338 34497686 60454971 385860946 51161709 912266074 415349353 603889309 311874153 888117015 480479034 910788481 520460585 703711348 757067114 253171741 57058302 136320588 187695646 861547320 171841825 931572372 732757474 835643714 14175922 223377267 518032303 587028820 136681404 63608370 32066015 52875306 317676337 896623175 750224184 400935214 410263270 707151435 690559976 740013935 295923360 405447424 226284164 647096993 48101129 221536850 663493384 295275558 501166255 752585304 14486490 139023876 261650701 100979275 510473419 683892204 351424389 407903627 90330632 732583479 545132127 550398118 391635255 426917086 636777933 827347536 155020374 545793165 854252263 674921060 737912022 847431059 114019502 93842661 159428236 261382885 369924879 765284605 128982710 752580899 874200023 256381438 521412857 694376852 70861248 568052840 407621727 854469931 182479215 20261596 652217440 440291195 397381222 119276837 737876955 234510276 988546078 161973557 856906768 902449135 117426924 181496873 784655794 712291208 129368850 443447106 387953108 788859592 399267770 191971567 609441523 53558673 445753332 331288001 175732211 980920422 45223355 4633459 664040226 297814394 520807148 790834664 385054006 580856224 821602903 687368236 144992332 832142172 519449257 254219634 730667243 901922769 281153915 136121878 127051005 298962897 933114959 463419548 933720793 168422610 643018636 876588204 347258940 468132851 16432521 374307357 6325066 139494652 139614586 69814759 260221332 146560349 66822275 533666095 723519243 373931818 162930348 134656064 465952014 266031143 218427878 704575885 537210210 36678329 325304588 838069425 387312950 820502765 69685982 156033392 251874332 211645308 938196743 986195636 472618772 573287110 621362452 306624402 547531138 625045461 253140352 909233223 32933940 866731345 36281008 941401905 380033119 811751575 334687720 485309404 58387615 463854245 23821406 571822592 218724346 931027744 44216870 194253941 294215902 496351066 825406791 644863551 372133921 589850442 353335462 203252105 651682300 104636047 503052565 237985957 248165144 306534764 296695886 346184462 850210179 48305624 839821299 276917866 307689904 218678885 653764748 118783365 340889980 959169877 318385290 538121551 403478830 503686539 199229256 946766819 896624756 652927899 914682372 877844870 798197088 260485817 878632684 508304293 885401458 748631495 753412620 215082448 189056654 474347083 256277602 530655938 27691521 208719730 873081036 666931555 541799809 398565655 540423956 991195574 69671467 951477942 854223597 884313079 89956227 616061048 132143854 321640829 64813176 141791279 805204891 134511051 112439905 236049996 716311640 667092364 708472310 820289778 298669180 847650708 958483552 500008169 624183356 340438496 971807789 673812638 284840893 346174610 496685134 146987307 73502724 86898932 755046183 563337547 669921799 633919098 462302070 536415849 469418396 713765824 126111084 420032403 876579973 851682696 181715870 229501056 137702762 480546239 479554057 196103313 380825825 307252854 620996370 282895819 689507421 391135466 87529094 129157596 567072578 518963836 617076893 521231136 388608987 39647677 487975664 418946451 574400599 756511065 683798918 808081372 165895633 357628718 303845326 307083850 817836358 188833089 773220250 862486488 427691172 250802363 217471531 902276896 942369212 600553201 733557027 761102703 348392772 564691037 91045265 1449902 354095072 154144163 91001577 205800825 605112089 74688653 796740617 640049164 353259103 834482960 252274230 673570128 248159243 212299335 893832734 417940692 150928479 883015028 330022612 374016721 950019204 554857218 603998427 436616485 565996431 981175174 242947857 738086485 988360562 722038459 7896006 731440787 861105172 646589570 674134450 449779890 55632445 839035371 932641007 607398201 724184218 734611490 294905348 41313096 358706892 541792139 384520925 327021491 212155470 167052448 8159694 14589422 121859980 578916629 569662616 778881307 843370710 561628343 223512414 31668988 475418982 441623682 45458860 253853960 4795487 812216221 313195386 208165200 560720326 913292880 557961764 594798487 573419918 226627345 791959921 701555266 478217874 849141110 620543626 732029283 484631443 972155209 191845639 945895340 339301944 649802609 205263844 709660034 962022933 174394625 292196491 63577577 819359648 318088247 639281091 411024784 982590271 819730802 719017667 348590545 757761590 952581186 600519209 440190376 839761336 462855769 523025658 723358399 762299872 476962446 266649508 219797605 967794350 355592171 597729533 997693583 161030413 452698262 267225921 713156317 532374474 87522023 878983957 226590102 121702562 567000146 139673220 762429101 731026231 744564867 79434760 786634931 668230156 468607550 502322556 261034477 601280923 635951738 528746788 589156158 31435062 963645266 808225966 588932409 702683170 166711048 284874803 854953233 715292807 720448265 742313771 454845865 799837302 309802212 690139517 693996679 827914475 568795995 504327799 258644696 484787394 462346572 653437389 998057593 955178443 810921669 204900509 744568034 800541617 272646135 828982892 221742656 337479441 102181438 205372969 4635231 461133930 480636702 605023014 553519032 111651110 832130373 50486819 695425129 837600408 480208254 59984962 977776955 149571321 544927181 605860886 910174874 707528807 130532432 95083150 267698081 230167534 168021076 515454476 663119627 429851774 248206670 375063891 719925316 935976947 45071830 546626190 881153625 558492682 226014384 224623704 141470464 440894318 412864971 118210217 646726043 198921395 474683700 562997737 6534702 644414284 192180267 336621541 653329516 800654498 444630032 505033425 428894891 731986169 468153201 633918026 715136231 227239554 59095808 885440599 475004363 960225370 605402776 718093925 330065317 135758721 740450364 794925641 461335917 3909084 380728603 345086783 136949183 692934976 550764675 695199469 646285798 267610729 148827889 272071777 596045521 501446131 808293128 725224208 314230295 691707752 161387670 189497815 540054261 402553407 822368652 869355003 715393365 124230345 212009221 862247977 408492226 430564685 234336324 682320247 661708665 161849072 457072567 314417251 106396503 933277894 827839468 977660368 535258848 24112842 548496035 438720524 845491273 783760602 688073150 291874255 694131813 13534657 851058246 97345331 667780532 101114926 503141747 722813116 925597534 169587646 87921565 583655517 270023733 439259118 639750983 761062501 821567402 47373611 455683098 541686421 112241888 466723269 830672881 317313297 136490911 417933555 456188862 236938598 655358291 377901017 846779053 100170123 407929878 978505343 464812290 684588762 476323753 841496278 875714357 142119708 557765741 983640504 918093020 137522557 982664310 729619432 882364864 702535569 99141244 153607436 680395466 593063509 305744604 240465078 589726478 720593713 272791197 245210465 972926663 589719279 370070129 806881644 206822997 884831430 623033771 425782306 985468742 355972434 291018572 261300 753162576 908314524 813419774 948720443 186627401 698690573 787323405 562088889 391691833 996042619 718093938 333702421 113950790 434098725 164203466 539720225 255210951 523473583 668080734 303804054 180364854 32424742 385292318 789694488 251398968 616323072 414331296 416308014 513613719 243545882 638630693 376272457 365438534 883729081 574039441 960888516 44576608 17484938 969102710 850458078 592026921 241084068 87150088 231016387 939127050 500909187 900211245 978670209 767139995 766451210 854144869 746170131 618108051 224297610 740202721 187195994 541027799 872079289 644312699 702415902 208453747 398973102 750621102 308781076 610052758 564101365 570881702 569180882 687219617 298847095 814174513 365329627 922179349 27444108 893845956 340165015 84321691 756301807 504258175 393761366 388929544 642730951 940043819 178822484 454625369 358781854 698062133 674733747 263591601 811487343 912484534 496040311 826754134 583926930 95649133 761140886 381084355 154698447 567737534 163056104 181808781 239009619 861008318 125953327 558731898 395286707 595057184 624869650 704631412 80646378 321805124 546323493 176494224 715319392 470663477 924827101 78156298 911255778 639208861 607580065 490556482 678779044 627413204 953390519 809535430 843224901 502897371 425960527 99148616 725303496 321643098 311710852 566450850 584053916 818085279 129473369 852751834 487171223 421258656 820368563 629793306 210506739 107937535 88172647 684803252 283864664 244327680 674035500 445369892 43327699 331867284 304581541 467571984 816291033 492733781 894958939 887289152 163556164 733738621 93240253 549888681 882298207 743661046 423970087 274700386 657103829 982943569 627046361 124465589 218143672 127374529 320624890 883541257 657958283 882836521 450124193 955496178 682205742 601615374 895322051 402023210 329480691 494642848 942831424 788466072 36576138 249581239 482114790 786734917 988490517 966037201 471988578 134657890 787195157 369073175 394001488 227528270 837317498 342774612 481299758 241562250 68457627 866257926 981181546 511486402 507626545 16558919 399655505 921827275 634048613 366489822 876681759 863801755 979373760 466232894 931697395 859688538 808620347 455172989 823520473 787834450 88087859 47016024 850932671 508054008 117930603 300015928 213003903 135285476 475170833 502062637 661482972 391892699 750652858 69433837 156112255 242066118 278765158 27268822 660946169 107958205 612893047 39599603 697276097 485553142 147508668 660355054 887947069 832946649 198800491 864263716 644812720 8432877 130259487 725386129 968336721 30446310 595991005 414463453 976785461 610759845 673948180 583110743 962789472 111002404 415354265 761657591 581329594 242121876 651766441 441846617 929920534 934486345 946424297 31981513 47610411 861441213 674050406 324061747 638874266 356197008 465041305 356583726 243594222 682874769 682045017 394732284 872782489 734234803 967906798 620399748 264243187 953507855 322517511 883433042 130606395 905974760 587710646 430494625 971344540 849263535 768656250 426301774 515376171 295995121 574454843 169898209 112976090 284557931 792508992 221626761 577363856 841031426 350598980 168550685 828615188 15491774 972893281 665179932 704384024 566382039 563392287 813517230 585132597 28815266 699077223 866658978 899523821 105220009 720881553 300827760 190897574 888142994 871000922 136900406 213321141 837343539 497991400 857125821 40802129 190211463 334852297 754723440 865975453 41599407 536625646 90955372 735974561 701465337 413571256 449681516 704424014 44022998 108133356 580618202 991756158 183696354 562058167 951592899 618028018 788717283 775750314 225525217 84039765 100319681 860724426 399667088 780283701 412837519 192501366 88385752 466484238 100545163 486502271 905746282 761882175 401559829 565938712 942032798 798427667 26460858 551364575 312399728 726321082 158346799 758270168 998532489 464355406 677512524 64519797 808629815 967823568 247939095 343257220 819242613 35628330 282790328 985329735 491778781 916103468 838862215 119357283 872841913 670087056 149166075 500929253 167844088 559744761 354605495 598084160 933854003 949677292 850895496 996039250 575194789 396783836 230276707 585347172 537589051 621328165 816117345 907429665 543817343 258027012 140264391 212949403 679590569 609375399 638288637 342363731 149791642 75003930 886635670 128827437 479854042 371533403 428916818 766184823 807928728 537598280 489420307 277991655 124308904 675909034 629119201 207223446 669020302 665054775 863440883 311660302 840332653 747894915 181517728 39813690 922968854 64035856 563825774 216028784 429671170 410067784 611316234 543550316 194028620 561975423 603687490 810964823 108621505 848142570 694247961 258286520 476133835 459534767 101488299 375320715 905240451 59386577 390669892 432419625 896622505 735106119 829091162 623137622 124551842 195666661 239349130 523712581 314366083 603062640 684365459 934607237 490016253 259098002 779287907 396111894 224382321 254356698 824244491 159807327 334894054 188974018 277836231 749343274 11443727 62435499 627410939 913438127 314609470 328515805 693177138 578739337 76509814 14673292 311647518 336727484 282570077 818364111 215710879 476578747 786342720 402242728 890535601 574880598 32520218 870789634 590921093 21269709 744258950 114308522 775132523 152337604 723376080 3538271 513671648 299216712 38214374 427873469 166590087 915443409 863278941 513350225 472837163 6310198 884423542 796166281 681799613 381892291 364726807 433763009 134907741 823528224 806853072 303266871 409591114 784837736 680075737 766718745 894630130 224915987 639122705 692249459 822383591 484098569 681490175 485108290 546109154 74669462 622946513 88019047 918557901 274598513 986996831 955603883 615602605 867315637 467181353 958669245 60851126 427151078 796160341 750819127 948457028 370517751 22255795 741511837 63787740 667252535 2239421 779082580 826658857 741756521 988015756 360044211 979496188 458802605 861786092 330312940 990064467 580704146 421577293 607537702 669395788 971908878 535417538 602293096 18540088 768621694 606404108 296913317 567151497 933875880 332731796 589366964 979882968 886208953 797214312 941705302 874024426 600405573 142564928 608295224 932422058 701498954 452611706 724948455 742646060 12270126 918062879 531313631 770191787 979268029 664978394 462312063 701507208 584689452 32165128 707669008 592173648 94866457 109075620 552001223 587866550 152848522 238644055 836483513 535204503 966037482 262840688 655323625 538730739 188698642 147337191 665006401 913045497 101066301 118861659 971251090 928558841 282351630 314830611 445140885 423466606 521549461 626822140 949177323 222797055 184458567 193980849 326929437 359231602 847056131 573254511 572561309 95938238 945735433 309530396 37975746 788808446 954408971 177170506 386382802 656682614 352736541 161751856 178467827 104320399 257847483 86117806 243205684 752854749 753721293 545950281 368612499 235724316 905846429 888364847 883536111 292394799 906994146 741557050 255260177 479852830 15630777 208013035 325271211 772999458 272162983 51311461 135711316 731700114 806642843 12470648 158962321 4932341 992505830 566729885 368164296 217218289 396389962 971016691 810703436 74086748 286953448 173053760 175629143 35648821 840643154 278755830 350312969 141379993 557653883 428166184 975914090 909254870 172026559 759704472 914419308 84087134 672542178 94035630 356466923 419240145 424246295 426737017 284728999 82198765 543874287 827409068 581418821 255262365 739786598 631282858 347650652 982454009 644142821 894440573 50873443 120428598 972212279 597200590 523311544 428117692 373351059 990312696 545912746 42113559 120139410 130944507 664730982 292103158 555073855 159853435 490104585 507204408 983275778 960250571 58158226 767623903 645669556 909243868 965467369 262842133 56317075 4362326 320925409 907385389 67864383 502157434 848707635 670693284 666724554 712938040 833147008 750016284 307300262 676805675 94896208 880599906 476724149 77920399 788104217 553615720 947933497 226460746 979377454 561898315 402165725 958078958 964249300 962691915 675090362 677267632 105507635 987400404 919540812 939680114 677582428 863352188 555509113 852366266 197774154 47071229 759219851 179837111 977635548 348979511 281511740 879723584 552043742 459726648 495814823 109544917 279654143 101138998 166215758 617702812 408101337 266604425 870160165 125039972 686170605 371728050 881202813 589703078 827553956 873007201 26867477 725737091 903310159 937390950 929649678 312942268 28599337 612178878 984665594 544594630 812216147 960927117 100635598 342025145 193125330 155203098 75139557 232079949 812519581 69574365 312834823 213444593 449367947 447273583 363343197 938721710 300037213 82327445 564513150 400610624 654491579 974718518 719972202 35959300 90462265 145051754 962633092 91454979 237115215 458332011 387390362 582279914 545347164 182596763 854199264 270882067 429799853 696590983 103310834 371947640 332296049 178046431 948481498 350917062 94281410 974348416 124868867 705776971 423261346 135858801 420459328 551000059 339571448 972351190 240988624 42716792 684978072 888682249 305353816 255863307 224313657 61716355 123043815 864854943 382781565 692853476 252567534 892977870 823971567 7854331 838029137 689200342 345957372 808516027 751304527 787553696 372100608 425703486 749837975 764060856 601249599 478794694 876877374 361997401 983814365 414453954 905236165 144139873 607753710 585305026 712149771 650305877 889380459 127590533 686923106 633967975 523780660 727058153 316615806 418097517 78045717 310006269 628074619 937954278 163462844 905762034 695461857 129006587 96607687 308155940 226223769 937827451 734151344 93023768 357039869 626914008 267006950 711881337 696063174 7609915 197382074 909768470 201896988 715725922 909027171 375236848 795498636 912093889 630658051 627989286 854395402 886999919 359934371 70112775 54402036 893451304 156552756 205737475 91628560 813958489 77656210 341353654 988735370 290638092 741953914 687746020 269434360 492876796 158053017 170882169 227578967 367103623 734676861 15571332 40658956 296320432 119602339 883607879 935314916 616687151 178706534 612785185 43240212 501658451 383690262 294971804 903416892 110507550 791247586 386835823 375683679 530088507 496638180 280383603 681345515 942421747 395271194 636978091 250600883 654882368 954937200 110190403 830902775 907902917 544193462 540904846 301683547 961496003 167324838 214927368 205352427 47010860 536764899 492571733 483428894 594875801 593807347 791653692 126075859 209869895 778189641 576645044 50689357 730691869 257850172 666964953 960756793 419230379 217547536 84526571 442346156 105759785 272586990 199625048 205359140 891869813 917655270 784288178 601018503 39501590 151604723 642845108 504952096 521059647 22796532 427354179 529894310 520332995 993682869 748616039 702709049 169359649 461868003 705058644 113714009 141911170 514590747 22958954 245991669 993069239 755150556 571731239 667416418 760491058 495914387 58661688 756011360 822235928 559262605 682259057 6970899 771565615 83356933 513146571 395490821 63346146 988356124 629694571 998197807 892451661 394069980 436435611 420125933 386945326 701600053 449446608 326536450 164877035 31689728 904060837 686664864 379340180 432260609 589893084 995034713 6991073 466953694 667335011 993572394 191506990 873995306 336947784 974018171 675141000 369541215 193509835 950543126 818540185 32949210 757739853 986757170 796130235 749246699 150786907 406825327 374151917 143264701 558527655 525864650 136792789 939676524 809773835 969812922 346919365 799875323 298395789 186821132 240049839 538113616 952759894 911102212 743099449 15793980 972679611 532440131 137346468 79556221 744864567 966131929 772744675 66523312 625811818 999798838 775321740 145146206 372328485 451834175 628988638 448859133 708049239 52820786 72612546 717370079 478460444 727470787 519267271 779676234 199763385 84586241 500716064 477460840 589011095 377893485 170155955 306642759 152899401 823327722 818262786 672913379 698192269 590082503 524747838 827213595 632699203 780748984 405520958 456987578 669630329 869529821 658083203 947284080 263964000 820913336 263888690 7537368 928983894 6625848 478924827 643673202 205469661 121641394 33102260 613237671 476077726 512269026 818260769 332952264 416199537 958602735 504696354 244542734 609280845 973352037 457415725 452428188 569889111 986843706 790049108 24982140 727392729 856755402 580249435 304092061 768095558 508413404 493780133 307796952 523437885 732259486 452019010 168580079 751187324 364678818 910830572 751196042 288458482 106480871 243549953 505347647 86191795 314667218 464386439 78622851 265791223 529369394 501144620 565440182 938041891 531114296 343423565 135107620 962825153 739356038 759644386 894761983 969787782 845359904 622962072 198468191 448092236 531014256 553464252 884819267 523059990 533676113 725505349 185673110 273803282 250792186 55244755 245429804 263373713 513278229 58409389 169271994 317327116 655892653 652941505 978140388 518113834 636936758 838413223 462492978 900665780 827963283 327995551 821248022 715610785 305492225 545199248 210331370 410359046 584099890 178007048 951612140 263189293 483080509 4051008 237873224 362204283 686073757 683757080 104484625 628975239 884790580 655194389 334186555 716597772 323073879 660310631 706214059 947267053 869367730 987563493 272907304 151424053 805236587 27753228 886351975 927670548 594212865 485819915 175106557 315557869 138536548 478636201 215838574 635724859 953240553 474181471 638732323 994076334 200702284 193984078 860753259 24634392 118532021 494212158 409619841 779754102 195106222 491244959 272991367 228501992 671174702 881003395 365700996 996395452 842857362 105219246 940771693 634020196 388721823 534285958 533405207 975044987 801139587 566595097 475217221 772029125 970249939 384096545 505616801 182133549 680658059 312848634 608902589 105613511 328030994 979930028 279667470 274725578 100796980 577921257 234105593 146899104 124811815 459516676 297270214 4040400 626019465 843049984 937926569 977095695 427076956 512400517 571617207 923683893 531243537 669217501 549215475 466379594 857701499 317834754 424463687 114211446 587763673 581244055 526795906 43104525 639014350 422871005 870288737 133868426 972332904 685593798 391852675 270657170 955755038 359401706 431564657 146806766 132660429 883651463 19796379 84458898 260378809 859703940 124864861 337969819 503533197 341102965 564205302 552427592 547040099 434516616 488856978 269470473 80309685 104063908 825145408 705002351 736115816 268178766 895056123 770373428 406231500 826677174 689863587 397461055 955827860 508172209 893304574 47494551 97256161 681229248 141480389 108246640 998042928 660462345 170615691 942991144 858520952 560462429 88875986 88624706 328994313 622347568 941089029 820260711 678075038 721460390 142494069 609494635 839850850 773411972 884440667 614057545 655445983 620158520 904693977 253021220 127241738 658767834 930912500 415765576 589982016 776981802 288703652 221556011 601717579 807461518 192099007 440035426 259866449 20746777 833355266 712705974 962971885 680621693 568849950 557293070 437179671 756748827 157105312 34419841 874273081 805955578 117455874 654955335 966145567 757338316 345564325 598791364 615403260 374232039 309034450 863354502 450381424 258062921 910456507 33932862 881840512 511363480 462156664 954396358 812672665 348734759 224813579 709624612 440541838 162188008 980525407 243302273 523839390 491052161 771949635 32347186 574729328 924855349 492162159 378012849 650273550 187398645 72619401 652109984 822828526 273599573 710635541 361666766 306718448 34900376 259130503 364473388 189571671 92711586 947505208 913096405 958568398 274419206 273516651 655245581 73741678 475001080 989835588 184504894 276513972 528604251 935702235 570948092 891737476 595207089 178912802 761046276 365975338 654559279 106149888 721475127 481768287 912907687 947526719 87115680 30734652 560480667 880397450 415065973 384111178 811861553 341302142 52502286 508483442 828006713 442778015 444229105 887657999 394975019 178568785 99769030 303319257 611819046 876818665 384157282 563921142 810836721 778294173 446544579 606247159 126779898 527360144 817718281 877463502 827113561 747537615 959173503 693736921 815093967 504116037 919532184 844319196 272009409 467851725 205669363 773952518 42498879 169081522 142832206 130849517 607725568 496353540 407649176 292890764 758522981 935695597 386154980 517987656 518684787 516104543 948736106 290013427 508885464 685464504 310367378 153092026 365916398 801124420 354041061 494684483 599603127 965364532 982118422 406795148 48165074 35885985 229504001 620978697 300435094 893188749 817609382 895111304 772194806 830304734 346840372 689679948 174665621 639965545 562579198 343133944 331864759 500710373 598207614 83843995 452095050 788973556 526770265 991291303 517529064 270144800 424553047 336337403 56783569 74259163 376380015 807763933 428830440 502424955 333840824 663714808 512816577 834078020 818480504 227882853 571874705 284221278 104432157 497905308 971210808 55176923 100084789 601533577 512968765 237712307 437434237 289505139 608880076 303822792 848649177 78773265 295270850 522929124 912376403 399630467 695232156 157047480 377647648 959805259 877154177 896585692 757320602 564473431 100085567 857619667 277819207 183165950 586512205 520161285 104181455 936647675 419748045 659131331 783137285 221402229 648849285 848137543 33731044 185877753 951087330 363551667 263909778 669468026 189550337 244153103 728237915 644506457 433477019 305866060 768450479 493155926 733445915 151634757 955762216 179206565 320792460 172435896 31657103 700723927 705196461 426616914 847330763 250713832 248155092 423203490 471259886 358255425 442005264 862391075 668244022 929446060 995558412 298212403 569874952 996686433 276947489 961688350 904827884 870557949 529257548 641435927 291043223 25526658 152673847 812192819 520287201 518865504 388142383 769067125 909664209 728414828 369852716 799626949 848055185 229277154 413841361 108794358 414486899 238090603 176255838 698770370 196216052 243016462 101164487 313021899 706948025 948968263 788800931 443023510 276443784 630051311 36712240 850256022 296103513 521409866 109477718 284059430 644089666 962045195 483225765 415566727 368030093 643123520 44681809 731666398 706602147 663915373 392497981 156731459 982782483 679107443 289093359 546907563 668018844 207752352 295523476 818974968 61262626 480119466 332994568 653268466 972739503 618180783 636242631 639218254 611349620 660425267 15091959 572064 660621521 208544291 81560171 227080046 417580612 720782804 371050390 834491936 503892860 889226757 950103196 553455622 80022861 633278427 765054528 397054809 177368494 342644705 671450869 831323709 519060679 236858639 912661454 642981302 976626654 35321791 328809871 781395131 562026604 199640248 854026140 504612131 839974665 52705322 733112069 169146030 406402167 57749158 117523840 63085062 853573794 371648044 571490414 150687678 594129824 668905249 80749526 543587151 732754605 913291598 303167849 468009495 877796135 707644654 16302968 415794273 988925339 528055708 499007499 411873888 629528764 800182623 387910083 474258730 638743147 62476704 861281520 308476356 318859939 291221046 245265546 323574805 658481812 896357473 953068339 552703470 30973329 772511684 105940014 473582601 717565971 236427116 484858476 822359815 391031487 899412174 136049031 634246258 237549920 652489 76662969 873473978 801498090 299182752 22814187 664089400 14924662 87643397 471508654 115299633 298787146 491375879 26775865 696083144 372690894 639348004 959833451 715285780 344444315 142936646 249525705 520068106 159534692 823894710 334453892 918012815 62937106 659355948 860789877 549786216 680809904 507893701 81391129 701044555 71665776 848810243 597003926 720838607 477712556 628239574 501029055 204659058 447172330 630503826 900408840 48672932 95740116 213625079 890019220 451285424 419726911 589186856 971645222 702397907 561763360 629936560 933660718 741282348 627354019 408905866 382385863 867386567 726217485 243411727 883611818 119494034 77386451 884829957 613136452 215076714 754335886 109570457 539530658 438686476 555343879 265149534 951862141 245130277 916020773 990789721 812047921 803276867 745477628 267290343 28191428 547318243 621398472 244255963 450264556 28263778 255371243 656543588 688215291 175990284 174353393 315908391 69677808 16037136 652819341 277689123 217934710 818732173 197464474 893899206 14103001 38801532 163866908 486726634 287213072 838525442 906475584 667530182 116615614 485854541 594598740 808788996 432141606 369537206 791297497 739517105 640022074 847969709 854963055 932735038 438285712 961980087 127819489 135509132 833672552 169751622 3057445 861769184 865537704 342795700 181801554 193605092 903868897 846766658 136059566 132103858 4039752 855054874 745496484 616443844 976273598 219124557 555712200 285662979 820702411 104839890 447931605 24075702 418193820 156226958 808692397 539855766 588048138 471666504 445473371 869407171 498750099 492298160 799928853 283086780 215834207 457462627 275267378 564351090 83714620 476050145 543933243 394682171 545143458 660797326 84412628 693888209 937564595 243303619 878739159 769089629 635673139 569569973 626009402 420118634 501254288 689461638 320662564 710407149 955746276 343930433 630292704 900520261 553094385 158948306 905122015 523407670 718247191 860617241 941103295 506705388 368533867 335772370 884983103 774658561 818525601 565987498 96972879 101171564 478245657 537731632 592408574 546539670 947970525 502852831 501816204 327043916 148018071 171795477 396467289 406030787 823255203 631492126 54651632 851981206 901011711 879430442 105010692 103786190 819829584 875345492 891049844 289808598 757541866 489495197 126909249 651826564 502908351 848728557 567548562 599456791 961288048 638856724 18542786 608233518 631966790 866128333 489701446 165363932 521177393 865042874 221155782 283805079 335611845 215407971 957526282 784585016 246577984 375758394 845829636 260991239 400192910 170077334 228529620 854606767 107617852 750583484 83188154 513350728 446996865 582788052 701825570 373077325 882338109 50280174 523802527 664167333 948655094 67368450 137608685 186815901 81627612 187997942 145208047 907450345 381138887 214429326 809589167 362871974 84408884 647939455 527420768 20265564 626777167 495917409 840101984 754122998 569538784 279784885 940161840 958608073 653538149 98790115 492517756 95585173 382638330 306000703 132501270 522115451 407563622 708952063 461559037 843393547 495637530 305595465 977259601 352649016 310662444 490764833 691241308 851617380 726581340 199631227 278460053 700476753 23128593 87100209 98454420 460730667 69402201 481408512 371399712 845622153 871390188 893398936 971137824 191081833 696558378 554303364 395841963 853371951 873578267 40840771 349775352 558293671 509768299 68772400 797120111 498703880 958341237 840406169 918028951 533199089 521474612 361089197 58284068 390916707 442548565 368194695 155328500 22889167 645443875 141750308 103951626 675843848 507278228 760011379 295312782 210915661 875398732 830999107 887239638 412859457 786469776 710579018 779673949 705970675 922195791 232727343 998100932 484115158 879403550 366335609 526242267 102989515 89799745 559125399 766867087 61450260 506385564 863153634 974123521 914149985 89128894 143277215 823601775 591729605 827999457 266786806 89158472 144101823 314487522 511646198 581039647 920587825 338244424 246595995 321404844 472574059 412440388 186786757 502299350 506832931 562008748 100892732 491279272 816475765 265042687 47996085 762738261 102579428 377613924 103475652 661099060 640803425 3571374 674467825 342219470 961592384 133388878 900277407 768591053 685565758 636652392 245252384 198097153 216372864 834263747 146855857 34269031 216829586 976094413 654145137 621818917 771240045 386586266 648342120 131904129 25356907 848013041 430644875 602944498 115017555 828224307 668922030 971308820 597797200 542266990 983160471 919990952 766157050 108267105 940585709 985368218 986754637 9322083 335968323 23799548 179571629 397265024 501977614 590319372 377791211 743388774 701016501 64058410 28082230 955188845 135965050 87251684 594911537 319216274 26839447 383223788 317198817 227048320 553945887 406594334 910479279 908591491 427612948 776558205 881799794 84897171 686335330 180471602 501764971 48199248 329101784 644397716 941927992 91372289 414384944 431100186 309052399 102383765 185090060 941788013 140624383 600714914 279630324 594556242 8941382 281865832 6324824 936235201 210097418 701427152 477769108 912551123 466485754 226200681 618827754 580182219 32049962 373844072 770019966 938657046 390266134 875814319 431087719 434528837 561161381 675205826 51692443 451056661 815596578 91519956 715592701 980282984 595341892 968433592 262583380 693339723 677797672 674698993 48646483 962624240 170631509 957217445 621713043 758376626 520374964 855647139 571027861 819951125 915948447 409827168 131689667 870561987 181633488 592270081 144591469 392076433 589650796 455645768 676878282 653830776 975070724 188946087 13140994 437021598 438978440 923222066 369863451 243705422 194842459 364732076 322309890 258491640 315665213 852650618 559336087 239861562 824931422 576316846 205845654 655919833 631992402 909623036 165593770 688857786 908511768 825201349 999128167 989331448 290643733 411843086 49358402 267711689 318797332 297129866 847828127 587216785 178214477 672823439 980684487 270344154 401341018 150081051 957821929 927799133 569630020 856475092 494208032 553212655 463870838 992536844 841448815 99398551 717002693 396969912 742956218 931576190 473587313 171280762 658608857 395942137 227141147 636792472 765808511 407956865 231819474 980527875 669323346 65629884 645309711 723285837 11819992 62168435 534469289 364767161 835818117 537535643 645131240 439821102 269613489 356451407 925904509 96338493 947126428 604544720 755962999 885015065 310416752 362736011 38335830 65865637 608545344 677763093 766429438 113655396 802830851 927132965 231554240 771658122 155981725 91780002 29439055 253504751 265822419 734464407 793537222 956852748 680164696 881781044 481470893 698261772 835284424 282260439 385786352 472607679 32204448 138423043 267244262 526861467 70699853 62671202 982741834 964181440 504955679 432883147 39866946 537272308 476949581 923443250 370850397 839923623 334574845 380604099 993619596 981171185 260372531 819931842 166534450 308380048 225137891 917839270 135763216 971748844 909415652 331563530 868755540 352366612 130384380 222714033 148524949 969290176 420593360 724103557 664947916 669235791 62526450 131179674 827355237 778949061 85806303 782988076 915544102 63588822 298106610 47091871 104061515 764497623 583411321 390644602 265713773 720559817 40053154 868064885 430565520 385333326 22394248 73948008 741578790 558489020 469625646 471966297 200151808 125049350 14125690 353493619 78475358 917042127 751206206 406558469 957317092 568151129 248982068 458246798 366689953 692577942 747659774 298800050 636445703 300347425 461279781 148646973 945916149 324088370 256252952 366878749 166455473 822814389 901304373 772771952 256932327 76613943 415638710 798336636 546071979 403946992 170418378 408332456 992700030 350820544 916689280 799660938 401163075 378518577 851691730 758259421 629522502 639484522 159441058 181706371 896820801 277618762 817377209 597003145 348374859 464920143 199816391 43187998 678396398 233363869 13213029 785656740 834448916 754714373 862482197 887464857 804367892 396536316 883523648 436115115 330787757 837748647 295902009 449006250 873339649 208976328 441958201 30261397 14599068 770580944 364904285 568310159 818772857 182053337 77409714 892397535 121025521 4449181 130597418 246173180 557796043 566898567 459156380 719720323 216122675 940288419 104640715 133853744 957418684 825035949 352906591 905233654 170352233 634194686 157687529 872862437 153866653 610454436 75778019 257945656 676121378 278168395 670481068 566610770 511505969 190185288 999977618 226179520 870250340 614903454 485957317 828665653 470081477 572110579 726533467 479243914 95044029 961782165 709102679 488532674 354616355 737384061 954118819 209714188 740563765 229138251 198231311 833345210 921594263 34957378 974617940 22382662 496473940 402740052 536232725 878222419 698231014 216396571 179325147 504007085 682799655 519717842 565575956 524359494 547145567 708976739 244442399 285337916 983368759 965850971 837554744 151303632 750345928 957714928 56716428 162347118 982615694 153564934 191227435 774501034 645586799 73166883 700192779 602407741 461280950 433542258 365968659 435423501 336548890 845142481 8482567 969138211 386503865 870268856 769159068 567270066 182946326 329390162 277666667 181875736 118563616 258077041 207063280 489820121 848434477 309651846 186853277 301035674 817080567 230939831 494326972 928652597 876646820 805636548 542601867 924378017 173043142 931181347 55118118 232601601 993574476 648254439 330871706 654003621 682330520 72282320 619899610 251827706 88190573 198917958 256953019 172651425 993612534 751253595 562899201 62332761 489874382 97797056 114559061 678399760 184969964 527307480 719505221 604738777 910628026 917765035 954541903 871667693 160804613 518189543 731759569 130234288 556698111 916208097 313957142 599457966 375857479 277047197 451414350 342341021 545087713 255316926 948383123 600783954 12865084 294051991 899541734 607296215 885735726 522056986 396271920 420296273 5328627 143498221 107842628 642348055 949179183 551434322 758336218 776157860 99441392 781944634 865188242 76198555 610834862 876897342 259632631 977627589 948634179 686735002 613199737 201936920 730506228 314060342 730311795 154207406 879762801 831870117 363769634 894045389 176678349 446567960 201794229 765820124 664636295 812402293 170653242 642818928 663640962 901463613 762142123 536699460 140416524 555754403 114512105 681680703 257639900 848130941 618577598 74052967 820668175 383376459 915321818 513560559 443170342 634046771 183967191 155584311 786269972 304345860 414174775 543696319 464906795 75231032 177399649 983437619 345303336 62077677 725615526 402185060 325663795 705383915 816349765 720738642 272661207 929342877 559849046 302667805 932949256 2926623 273086445 536178705 88717862 5969708 444894961 696351137 715139574 713505072 931084867 17025129 848801701 545883192 726378654 370340906 334518471 311810300 712980400 523691987 305964632 124560857 525850378 241691763 410268610 91176408 658747682 773157960 151998926 353965481 308676188 114526646 946709941 463880866 696030208 308181575 252184078 609583043 639870273 929140653 739962854 807501490 152205365 131099332 977080228 921956030 331457758 850009233 803005473 963912160 304710697 94117692 659204504 17634232 137271010 931259677 636973745 746472587 213168328 87775658 382460791 589630536 498956151 353163400 178678366 38336904 47791483 139782791 701892934 952598666 619246404 186003090 743593074 670505012 726807085 305353931 391403411 643599639 330127733 925269361 820514491 363405929 202133318 561548787 450893158 903753481 947600307 579809759 63374205 976287871 421715891 15229430 743724618 489639930 124519464 120242455 99831174 703506258 415679196 798586705 432162379 993951749 401463168 128973010 473237022 417682491 970636973 161918714 990170094 760440259 342705378 410924877 652502291 180538643 856822071 618205808 449962050 721698381 622492155 879301436 985563305 602861622 565387366 776582060 515844815 771841343 187933937 54612448 498189740 360950396 147972261 661120804 892336031 602490032 947176560 564823279 507574121 845348163 735792177 933888471 188610362 435135295 302858661 128226979 639317929 254350944 959789943 852710202 976455855 566588418 877440055 734735287 712024754 61667374 886305118 338650444 175771011 979138196 486723150 518351715 359525715 130669962 514562898 825758341 158004160 494404368 919385241 547778916 24891602 741488076 906691388 914017244 615923189 367556622 357685310 314471923 79301885 897310414 543266697 856362704 789836583 789725866 760054506 187616712 193806875 664003818 887249694 49213272 119205603 672857726 445661381 256143904 793255670 117636860 661948262 59596782 903392561 469258146 202548345 354814132 134391513 918773851 451954769 980853132 521965724 519347378 991075118 94088637 625617294 65264865 539745344 485190063 791393327 39073990 485236373 716346358 648671585 151272171 334719010 372522063 950069619 663508346 472725713 372215449 473842456 754085198 482981730 906242531 792503921 521261799 775416460 958380383 115881470 582326635 991790569 648530280 947721138 738175399 243475703 278100611 291978720 271323924 743511582 56601688 807992388 541981908 405917621 420893375 461516038 585778347 808858352 733616814 933000112 490696201 332236530 530556746 665218617 116814084 2130884 251862755 328877054 644148575 219873625 125220325 707667141 835173757 265965704 651030510 320441 290370415 556856850 317581506 299599985 196891117 60731301 478881612 365902314 681370453 417081034 80051872 718143369 69816495 645029378 914299640 989355037 229641384 710804907 740827321 793855193 990193309 764635405 28929899 640843354 682126726 972820314 664924868 67845031 623896849 603550895 884408735 71712044 377610888 222547207 560496893 9733054 345223140 894440273 769306892 67491228 9984199 109382745 740154398 545875818 121851765 204454877 656978351 42144055 206428636 588347771 358506849 391844727 462751382 831900605 886827518 628646916 823218659 634058005 129844862 713619753 145559721 51353818 19406073 817209998 298659701 536847954 47266227 4712012 432541568 230584226 674158100 440367070 17609645 91831516 69689269 216171820 817719676 947455226 191420239 622168960 125985315 496749278 821711299 931179667 858513780 762715217 294497052 949771132 512590577 651100419 195315603 489509321 302837952 592379791 312895103 642636383 765093555 339247730 805881184 718880406 792082238 320369434 497487081 496069422 45911170 184575191 267701222 907354954 767906630 761332706 277899864 312370553 568299002 880600154 400946782 916578476 976865202 155165004 429189447 238361412 686456627 236306344 587639427 399095814 70895581 954577734 403374764 740996383 613809348 599189995 147911307 838435105 383493024 827792954 959123463 480680974 173140941 71192265 10468658 206133320 804382037 814574862 894508365 384095135 343579109 864453230 444519863 48489031 662024149 459144497 51041019 36324826 561891620 688939909 895463885 704010851 752444540 678670470 649085446 873081676 605121577 591536953 35037615 553301611 397840674 552044415 513073647 301851898 859614730 425200944 187834906 889642148 233264165 796135170 700642476 160100980 983336547 633763735 361500230 106806750 542461531 691227256 671110329 596662207 344065354 754269465 6358513 762598751 845064988 759969230 46133516 31469416 90079583 983780572 952942414 507748592 48862793 826320746 329044258 539733623 604350905 757282958 441945372 988546270 158901303 917604923 542319351 884033654 870487025 62326871 633922194 784265717 202360256 93183913 805893376 793479539 704518691 477435616 40822638 619420536 205886528 952425370 135452731 21942771 862791913 364332374 9370086 201119030 344906129 877476990 787697696 733297921 228682586 954870627 121724601 496780152 896205834 294086461 347706538 919513640 742481173 164633389 521349402 10348297 627572874 157501758 516261970 84100981 228075567 969602913 906353864 488078641 257558631 721981551 550027284 88325997 737365317 737674536 698675706 158365115 841901948 416760631 892441961 763059483 203284335 389692972 792374639 837803248 655711778 336229507 412516424 32689675 3402313 591639705 453015642 413774748 431308087 997579706 599601456 680289860 313234923 352206102 661722237 825214215 17364495 160758984 385258265 822629970 646375666 962271440 126415370 272652540 94729865 38626327 136475003 405867840 72489589 445312366 799987647 821373895 55324924 938297489 233158739 680817304 602785294 822801180 131291862 556034605 117206596 883616668 131761689 410058339 616070106 884965509 562444554 935961468 978366395 510142249 771174855 939630377 74089074 215594703 726580370 213004158 260450105 891923357 962776280 337690614 470668014 595431846 350777899 411416186 895758617 104300004 555913542 172182615 622212329 14668086 746083085 705412926 975415351 660120935 638106506 329967185 663185021 8662055 114409203 599602960 89430505 805606417 355505313 909502574 869622340 914402723 308443670 889533884 390886410 390246987 651352064 890250171 626108763 472277333 625577777 353181582 213129465 4391678 36239780 248141763 210484052 849130854 495273341 990068556 247134600 472830871 493872135 63278219 103693907 213717632 498402486 501179971 768039704 188919292 828573731 779714208 932335851 416874446 448081685 319357498 503163265 308254364 330884979 911326990 48672825 334769403 239896400 698869119 52267801 160813150 359363564 931508061 252443092 103618093 101621416 800271579 188510911 798134444 886995982 686752149 53704667 292078096 935270098 149721492 620883402 302571377 541051088 118309442 935503075 893799889 939260940 822466424 713507863 66887447 674059695 722353777 312961545 355938580 697065741 986445009 9831933 483201670 322589856 438203813 443963109 681336330 473023759 714297957 247234647 217304363 188348960 656610286 427864467 566770007 689214924 469522819 144246400 614028524 971612459 627580883 229849261 513081897 625151358 727970290 328875601 389497398 399730999 608704606 654703434 751559718 89658595 6622207 79921189 766068725 850449471 456801052 768852745 538193789 696640302 298681969 984840403 987650444 883550908 425084949 272679936 364591316 863224862 568631440 714846136 908690668 605897644 673388498 929084618 36428631 666331117 798928941 9990828 362896508 409328263 728200031 766860417 808132272 601723731 739433354 55597581 684946729 969444167 98449986 356586174 614511367 982693257 354685305 814000304 137329239 264664677 267852427 340309407 172478217 713907275 598598461 591833074 352934900 571099867 593320126 921896888 107522013 264933333 240206501 142257581 367980651 446917155 751139307 323712040 40753454 290656989 930178039 842691128 941040802 116654649 18526102 457876104 432334120 988205215 909581824 241398896 733997575 280671125 367888334 999767281 343404658 684025554 263529480 707557807 589946499 937042227 334464283 80114170 477808696 262263223 751514587 429953996 608973438 717972107 185783430 746835650 841159204 379441153 369783745 394016550 790070500 368782743 55021979 811885794 747856991 176888557 350422149 224199827 650897183 669354704 466044000 721225333 2352018 9907252 922082675 238417773 81159958 911462196 509398885 27563535 872552683 182631954 96849488 766699408 843091256 708218938 993399217 41614544 615396369 437419328 929020266 692678999 934749804 762809823 849750731 361479761 985704748 787045111 938088330 972729239 376353820 349511320 513748162 827548842 380419819 502696178 733768696 14797743 461525043 68785507 216845852 978219639 390470261 630903658 176849026 218625911 920950552 200422326 450337257 969383633 313484658 34398491 826810224 854996808 554959803 707920785 550002603 383327057 593996816 691011901 929895309 97834495 588829566 379877224 12046704 479928850 621379321 665241993 141775392 455554802 621512786 736442937 965992389 608730033 947666770 905175612 936879861 446503425 26601632 78165373 322884527 168360770 436308682 840082447 966942294 895661438 31522639 542383916 34746042 979868258 38435723 641458746 533837069 392479304 867893195 943396805 446158575 997377327 27180604 6047354 869524581 913806778 322703866 964209213 928299226 483485757 945744392 857730312 161883687 598533035 767819340 229045262 432868741 452321959 802388634 198609566 295872667 868936822 452716971 966563125 70651510 570395145 316152860 160960117 520819341 460583157 906521467 345315371 13492668 521784956 774127927 212509767 903053128 563215491 650696107 759889385 250799071 377263259 507518228 404048975 293198996 481187576 994021027 977551337 368218601 541668223 769018209 538635079 538340541 833889457 110868301 450054694 176428899 814171329 560819780 219446376 938433675 667322501 303409939 898918171 599936599 120157820 16794216 16526702 799106379 14909902 148324831 328905151 927965520 881402186 96922360 104478353 913645251 763541608 249308188 681862030 950039387 655561799 406975389 686659211 847743295 657824941 319513780 685787778 297370621 270217995 526367874 393135766 536408457 258488695 887978768 901647636 445496128 247830447 584882768 909470319 904627947 822055453 479452955 510051393 136099762 185601743 271470641 556639821 464041263 57733756 219482940 473121663 135092827 129401219 42234832 497029866 488412319 99009772 275756131 395176137 883934917 810953063 931777367 982177153 315576835 630476363 418054644 91463323 901550841 290893973 738566510 755620811 957426856 178117612 914129884 284442604 433924482 124289957 992400704 462476802 827705433 932264368 674720900 504549432 50831723 967793586 869982842 356303074 498038621 40374254 332682969 913886075 232426043 491084886 743839552 429904292 435695740 429440385 728020030 94514730 827133439 410235821 494448194 196491776 225214214 188222400 819424933 592096067 417545024 849966157 268680870 22789173 188566721 133163144 366704243 181234750 116912904 903108435 946446361 774081782 99701241 814480947 388390548 216021270 113460961 153171033 405341378 968035715 366398836 132820889 464771697 828161605 795414741 481982839 79288142 46117779 974602883 312235542 276253684 511265988 310907757 817192776 538569444 44331870 344530153 779281282 411486089 6093326 433945012 267249895 514584881 363719077 122933492 84401722 529304598 819577885 885465908 815031277 483591258 19978651 860405613 947542805 87014153 951659370 810557432 953591411 8930577 65393917 32259997 103427951 941112905 772527856 931410569 955494164 850216569 944484868 425769807 120054048 395731522 162488361 431671279 610906349 832000573 837197164 109352652 480222850 500544478 601521420 162306998 115638162 80598154 603782254 39084257 199621235 142063750 948604952 723309034 274809122 429326856 285948099 933332180 161036361 600529446 761256006 139655954 716613173 213097440 68347044 708537971 691629023 361567012 979360013 928105016 84804068 831380417 255190737 979872773 219599759 235652207 32854121 195259624 682329036 203199439 194595963 182778964 65429554 161475437 506206930 609205547 700425220 446746295 635624803 931827373 640857895 293117449 370358087 494412170 406190889 182654370 371944385 182827734 496744513 661536940 793131836 609893648 70120016 346421306 268092493 990591261 474014684 440548421 414920367 341456198 16888088 649582763 889626692 777208903 469898967 42400822 660108824 832225848 663992729 190401436 231343967 547942307 785694855 867039856 451981937 824108657 39103596 499165752 240654807 935915769 738741957 452047195 184769335 918497527 128581807 539950635 520957540 273472144 890802670 682182625 61134431 295225172 113155574 681912733 678537286 94687544 727408348 40856424 820833383 844223895 901153374 558749495 795476786 732438071 517289705 679062496 211982918 990251079 161661061 11038246 833766244 542281048 441635820 260885936 889888123 362735211 31782783 353135123 242216855 517734628 786452547 901961154 186485241 38906770 682647271 103885092 620454147 348088231 470997188 852357505 920731200 20512195 991178456 805774858 568765282 951449835 636270284 551805142 179262791 899108233 79619567 85604843 770346736 154573943 896690229 640335405 775490184 425163247 645004609 682316911 507916388 624128150 551141208 645102701 49212926 702403197 451589227 409696197 613922043 164496917 792811791 325901057 190027812 355627324 680363909 994716818 166002284 158942778 505350322 55817682 262474224 327504570 257377066 852991492 223405300 992950994 228261921 472595791 171300579 582047744 782688372 209049027 363125581 885877286 282226097 552090716 727609071 212382870 868017918 933899770 331665069 238734081 373388347 196911719 111852690 669814919 905939170 116159825 399460050 234347690 817233692 334276438 99299015 820915293 557149368 24855284 769680885 9140975 682483246 644872599 587068676 451990817 284176797 675460236 203668174 718272023 886280651 651293714 434649929 855357022 908296489 362240071 293040280 186946797 320487627 997044274 952139786 777238047 868177780 111494855 994752273 985142968 598389384 793887712 571419719 720216298 738468635 499227452 849566831 433906504 614333664 94478214 31854450 145514447 719442230 974612814 267544938 96922341 84375593 488553998 863643022 904908373 412426083 998113065 59120960 737612884 831073085 600347876 960803086 519505540 161872823 89538419 32548778 932178150 698557817 922671601 234250992 831708392 837177550 89760602 978763491 821049440 525038258 112130460 733455020 963570316 871881669 276124294 158257056 113504529 535202633 279102675 201248828 123277560 613051441 303525664 302137634 209444285 128674321 582297853 434332189 466575417 892749356 592240598 386926879 604829619 602606184 411131911 622803269 382451925 174409301 237454328 109673936 615960761 28938280 390066776 455565614 86661081 899299266 538641077 255775731 401965338 937997227 748825309 236018646 962576077 80907791 997738161 704087743 289313186 856005064 583965436 665683381 417588156 166552917 338861167 316829165 315160987 190282205 286363810 642250179 70230321 645203503 203013400 250109371 307192526 800511424 253927482 58425212 54317107 352409013 591158360 328469215 698168197 725395918 745331373 290075866 302594127 10692480 979050070 74378389 660785800 761042146 305285987 515469401 292802445 635728304 83737534 361794711 740514597 199494226 625283655 690910444 159590009 440050392 984702906 264876318 767824162 612657661 919977925 827140629 552746522 365943320 698833395 85664997 124504779 860847671 108458691 906425291 853858303 958291206 479794835 817282343 544052458 631376350 654095535 416077445 706731052 197616061 58849349 485074843 433449674 514509386 459778416 482856256 50323248 529326294 614966322 608073852 616142389 793200985 927949171 739758456 155521555 81195886 494562309 340347526 719415154 205758817 952617889 612815651 616154206 889540893 478644199 701892849 460916045 318941500 83187041 248370365 755522589 623358973 304029314 971489657 659518225 460527687 249463457 531871552 204802007 239345321 320233216 301537364 655536261 592787544 667620297 397574181 62139545 32062521 140753165 387876419 111863798 69870540 847946180 219184487 508767723 982846022 99624145 709518969 306529836 164883837 299155451 638378367 173119448 943674606 106515188 646746289 388683892 960212676 474408024 100589928 576642795 923576523 572312228 825916712 317404820 30364538 592625991 31994525 315939372 690213619 545325963 642014361 901116632 438585852 159891374 118115605 261048615 878898947 131098576 460739640 835987981 584099617 426497274 763472205 80362980 499877652 301921822 887999940 223476087 499540548 401354006 756755516 696821487 269335488 316307361 84056951 890169570 314417984 607220840 455934815 24143185 461270560 272201217 794612233 591539354 221735533 422285278 405427374 123104914 837009362 154537831 175503539 793302889 170417318 69281504 917527716 156214462 19003115 66619007 531635507 549189783 714597191 434194778 854168634 924594272 381192201 914998386 956438975 420449262 105429542 198746546 229462251 426029697 99198018 146277098 808362770 582510010 592722337 876997846 970634928 956436650 280410931 874244628 171598440 239214789 831905934 744609327 131204615 30134503 712143092 574541975 744010619 455127126 355301964 858244622 326055394 250076609 453426210 877200795 728852610 304823355 436670641 614400930 102599107 903867968 492485077 415202509 627256376 451792570 586749462 757519636 735030175 361608179 393669543 777043030 320056792 820874398 353437018 453766496 531902962 773878494 924441520 451806434 221810972 250560821 805927378 664453236 385046455 138111375 976951439 694579611 106104383 280497730 279158108 964466361 929681508 89367311 638346074 693004326 471833592 375715862 938633808 526117144 855735799 472408296 960563629 261934256 186012036 907732857 304809353 725818619 76746472 521059620 590156704 224411110 138108571 228082096 165427295 658601549 710661682 240469581 611841487 207258351 267901815 594952330 321743018 420167031 831990096 314802540 731400531 442434932 657207507 825625170 932318924 570493283 421165115 711733772 677069255 946959779 275883497 293265359 412278681 808824189 873375083 672395833 663622978 690625057 405981810 121437259 199110250 400400811 737098202 287920248 192409696 743131675 57292457 188526482 284781853 405501019 955102470 809842134 83647036 289500986 448124745 234207725 979253256 788630644 114230503 546585567 984102512 372841385 446705545 530043940 905986570 34004322 611316726 272138907 323028757 519320593 994587941 644704644 509345913 913304335 67898671 335126163 478879429 11031452 161303127 884267478 591771441 844186597 817418248 412995793 636146330 894788086 368393687 533163364 686048906 775970509 900890750 164386529 846922286 197139782 431710434 851381496 981868382 96446768 23485196 404353738 233559452 763953208 361489201 373134300 286280970 654670074 449190058 9439514 625869181 891464182 122522365 969418202 90960230 82134165 68749525 669026521 318299371 477984808 316267777 950310204 384658125 541923562 322457985 275292048 138643326 508030203 911894647 706474701 519983638 868504933 346790701 421378890 970208597 839059223 319495960 942787538 950988446 472124397 651656915 578941075 562274055 259249060 679407902 244560412 559164479 127480044 211522027 187572337 128376749 590678611 972402502 706923506 358813010 575306575 891571311 721343086 321110241 251669828 11475655 420838428 216811696 992038526 275043544 317243033 609645760 484352299 258997595 878036968 922133943 445446757 431729701 230474616 978270178 435605290 807107898 778059036 743066683 878569834 775456203 274140693 215286112 918390513 244850980 144453638 814393499 230353530 367666117 337790972 295715543 510709414 109135953 984507757 900429229 191368959 467766415 816307508 165078111 873775860 943390326 375115419 672202959 685039843 296953633 495299148 298143377 988814599 558212051 543014748 31737816 805070991 441921270 897978440 56743047 204001414 979519775 911496185 426441508 283558125 381905926 402582198 428061662 225121694 491373461 519665466 844800396 213207910 95157966 519499168 166955183 395830519 973654764 536668781 454115947 746560486 676285001 409631631 115635600 807256506 612167013 910498648 99033496 169043672 285780970 458633610 212313504 992547218 623310259 652093000 569851248 50324772 580984242 347052833 575635576 961231532 766617875 38717958 557397198 894353460 515611162 150846554 467844657 963583918 913396031 586458588 586413833 685812211 503465497 20752321 394844516 690075589 999423087 579965844 734897147 481882314 372190507 200929373 241262381 491380374 444055905 400923000 255360512 229246883 245143883 186099642 732531492 440624721 658399050 275561043 699374579 217335784 969532655 931783651 203963751 798010780 920352747 535068524 388981032 222091653 970340628 425805150 20049035 339763619 237771638 129729681 909872000 728399073 378381622 677252411 784320940 46492176 965592747 292691462 689853267 440873704 549470538 147534081 418989157 878911757 527917246 969438365 345633657 178930436 559359951 342305465 169788623 34476352 276364657 143322523 760804685 559872285 578426300 656955117 33998211 784120795 427393270 617763016 244540585 931331998 607437450 441812137 434220956 501343360 415767565 587306612 344018407 931283317 262365238 223995767 415607479 116621661 897851372 956529508 63777760 958508549 563441467 142445917 697358056 757360925 85158993 446398695 353693683 66770236 750634637 733126379 586639054 357674727 306742130 144222912 34872818 797544324 4192682 345997604 35607936 165479526 2727435 877937982 551816254 670657990 669075084 312675226 501458074 337017796 344943447 457708331 494750125 493089133 293424047 932475985 734409268 397435310 52715277 380371920 289855898 981636194 687908361 515033556 15511786 333636938 488299368 509491447 221221855 902593295 475407125 629764400 475122134 912152130 562998051 607598824 676666070 727244895 616966351 763327469 199462032 706473157 653792632 406352496 332373851 428430778 18268591 117142034 132508981 394696567 658381858 275314393 688443076 634254094 365673134 932889135 173529690 694439301 355676505 497415146 393471215 624365248 147912523 998845770 283810591 664565911 56806359 298292720 764252211 755795903 630087544 162156268 944769818 883178200 149631190 397451700 892826474 441024880 884902328 763224869 232896102 907280116 600490515 589404800 168882163 72979904 442924286 836296822 129435036 657011220 236104130 204620831 361128352 270404889 179304649 275948016 943952858 498287072 536733348 244452567 66324689 751467620 635642639 140150045 520375991 645465733 692450287 694842743 755529822 202125067 360753741 925641730 678270026 453207210 149467485 637012295 660956065 963865849 698870650 859207983 945695538 260434299 421052201 353881102 548336245 120004248 133581843 447835560 753569927 274571936 543620620 924081692 542874931 978452688 757092369 863505147 92944357 85082182 289061185 100751927 431153333 908848396 371663338 234757937 65797985 709675286 965236866 907953066 776467538 280676664 581044897 479810258 89749914 390775864 275453960 380296254 662495722 442190781 93448614 724466412 42871721 262181721 823938702 791608897 637220821 43566978 582360314 872087814 831304484 320752798 586777423 853688951 262826221 107499510 928187669 271577900 299748906 705576120 438281216 757297708 649446025 800860927 11961584 247347687 569517396 620915405 329741539 98372911 989860997 887278857 605687813 229351489 888135610 621855365 816071851 649865667 689578811 565445885 835191888 605121474 552412408 181971471 506564247 367209140 424640391 725115461 472618057 175257719 85719846 119455248 236797532 985837390 568133823 516282058 68894954 949575912 766759137 154037686 222138423 357052250 745362112 455768826 873917358 387415072 599288638 808203945 378849506 822880547 569669093 756725693 492729999 333926827 996059100 206101780 57295256 627363697 953642755 272729211 382654982 219253648 461013716 803416993 88836624 917981070 144805241 911043870 148150031 792267865 993816254 624295286 224861318 514869063 207644958 919137299 323135779 843425042 213865655 604954181 86798772 226244835 490077262 394851394 409559610 749099330 756141652 159135280 597113045 431905578 666997730 317105942 321439441 868063990 581439412 349556709 589781408 234393452 728719668 752160889 116395998 854104760 232342384 499456142 59883088 748179312 417468959 778460370 652660960 383435664 41831073 754913749 868297632 371200895 291171581 914626831 344905167 725430539 481294561 693255139 738064074 748575845 413899941 474011289 711101218 262999340 239639112 625028963 603659657 567524202 684394613 783474521 684932568 747662470 964539764 730935677 925578261 753502808 974096963 926563256 771577192 770990110 402670972 564948444 91719464 885124474 343068269 126850723 652952527 446567806 727482364 359000236 158230012 582520733 303386057 269812096 541057409 889947315 391566094 798521492 589141580 945268740 875974069 220737086 849346428 703401026 370158923 869008577 61201492 717100670 395042824 774462277 240651069 298549051 429649869 878848219 943263947 895552343 110721310 681768317 304021174 821360419 50177068 259816203 467198696 817833299 746252241 744880208 221500011 813858309 926983815 843422719 294313581 937268158 735506296 294897578 666930508 952253037 257150836 650463450 863024013 167948389 38990832 686330870 888091355 713184101 685160463 910375247 832788741 699520399 495191954 698216476 544760077 767300212 83247086 596914560 15182865 730370054 543047994 884926854 934314589 478177702 985061170 457616412 600307812 376967958 745186879 813463071 992814022 617693575 210464879 964071500 940217920 276038281 697864827 853769808 100834499 590262557 257554114 186003898 972597852 49949862 931433546 658228995 865980234 708208116 644959684 294584974 240859120 551781946 545166983 723962786 943947739 918243350 474474382 554598770 886463672 109902990 47369351 218403865 620132714 69089806 800211645 629273493 131576559 375740266 30116392 1020623 991962485 27706596 604561512 878412443 531988812 761720605 685259205 503486640 766517236 956203555 735529515 711985841 501574925 463811692 413228596 77244199 268900194 909268 658362399 631615104 545232358 814284963 108802771 546417177 474426041 174747269 283006174 571643699 918124568 944417164 130818425 929623543 371413874 739505467 619997058 898966131 476363352 650369393 534148737 781206949 308873096 451637633 911593893 409161834 887605219 390395677 788537541 232042127 304130932 317368674 215274336 444545987 413615729 258768854 816022944 4464288 654391344 893255528 907772240 700992936 143364666 334893421 737769707 833766466 431033657 379073182 908333197 251409856 562993662 629569061 685164288 641178207 494101638 82685069 485606065 991389243 174989043 901583050 951162041 863470175 240378512 803604286 334493655 4255164 912382163 125165738 382723953 941197358 706734165 409042748 739715223 705118579 884154841 65607051 89024255 346273844 958418251 585446289 471465482 924281094 278661823 74955190 281025985 731252063 717146990 86627271 860259280 33087137 39575743 916146680 841650318 421867796 777830712 833281513 326868989 469621485 457304465 374663066 465350339 94658882 596394402 360970364 323739438 821228308 960959859 62559847 98869815 850055759 341652520 524787346 422591100 155111618 396121882 86411430 773282117 693933863 131453123 519187377 67417472 362354206 148792260 566338341 58646215 360164658 334563306 227175905 119040598 617216981 323877673 990084395 178035225 841219165 830766235 479218606 698566040 959302413 838854532 337559169 697725201 568398606 610198094 735625250 832642142 471696245 351043470 70041972 536838667 561431604 354699521 874846406 832291908 604940595 867095172 110494927 80675811 534201655 301942567 778107302 295424866 842792688 913064476 463851992 691447791 413149692 211778494 575885132 832966741 109879261 39246482 892405338 457348109 63195894 313100864 264193216 754813492 157251996 999431326 269816994 999995540 504418056 633340585 87986060 911414426 328079452 225995646 776705399 53767776 743757216 901125487 17233340 741296547 189877957 895298280 869858853 404737737 510311589 49605517 907372505 356345829 540607488 198773018 487511667 789139883 217672323 958781564 514807021 981505148 451355066 905077962 619792558 252950878 804076578 108149819 211331715 948593410 826705436 50740018 414207390 504645825 348001521 449625407 152061601 167141267 432606671 483141137 588540046 926096678 814202578 851482757 578064853 526781638 694550013 230626717 703985481 650693740 643349047 171641221 37515049 706986423 435441233 673980046 766274585 977767148 674053125 187867193 179986468 284442622 16001779 10787874 691654596 535401859 205425062 16854811 761327827 749612470 664125073 729280530 192850329 334193541 551443721 890018087 84709822 641921402 784751182 137305753 93074783 963132625 412370577 544042452 760190451 336790628 402448861 65821806 51706209 2648510 330143533 938260257 615516406 247390733 606595937 505133261 983847529 249252646 337494597 191134592 241602261 514291342 750319494 497575793 391481280 118684775 28914627 271059445 574252057 114589314 13115257 827264145 19216178 859390294 715754513 21873137 292925899 268758276 634752734 34930408 533819143 165629520 72567834 521161587 772866423 76801964 907615716 903815090 941789707 975339055 801417032 627670259 906208037 961580694 35715893 860470951 543937414 832401483 604292996 448666474 732003166 927983195 724782073 539572226 488907077 540853374 574630201 596859478 941979953 791922711 581887449 374454397 589581708 309931303 156474703 296094126 305281572 183859550 962721025 412150096 50693420 520638744 420960050 889989103 977460291 995097683 449519640 320438329 726382954 360584624 814137036 406569997 171142677 967354246 528476748 302953838 273038869 343647947 229128326 911162759 684559526 99874843 207327558 736230827 176596849 853301951 654295371 699500119 834720127 353084324 613482289 213714474 956014668 550533732 140696707 453170932 398148782 609945151 420623029 187190437 783312878 63590683 392626715 861607002 977099961 66376326 788648187 85948757 295577634 248480953 828531323 81359874 230967979 607514000 620578220 503034613 586793268 616441240 955346573 104119785 699592204 785072380 34314489 133619391 597217771 727131284 717662139 3552388 723473642 629184736 963444101 879576685 506104208 16888070 51070961 65240784 988601293 950735831 408055933 198710326 458536433 344054472 532727189 802596425 720989628 334426875 99130250 622551257 585193812 182345780 137665940 931429092 64695879 815645671 944711383 581422476 549760646 298939431 193089881 369655070 470010227 353831603 553770253 503752717 373150416 602992116 384831691 958794227 842495436 280601082 8372055 2976403 506998780 589078907 559085655 290058968 345846364 473810135 423189852 715847639 166619220 233327893 760188643 88902603 993435823 72181475 267696459 644669719 929013922 643228059 466576861 166565188 762385611 559649848 783443402 783288329 179416624 420961892 313293613 981882431 174347581 947925360 912838150 523862249 636832454 835495760 936224063 427429939 544138508 763798949 858469799 103264369 493499059 650925750 942009081 223156508 926541255 848974963 919054039 251727323 593315517 940944753 867235785 672634741 958866802 144134640 136787518 496631519 205953068 849983704 528521110 109266997 143858331 517818552 887563020 898621881 908709072 407609032 358963916 774637273 313152075 315824614 626486503 413330212 700777199 463057819 636038228 196375384 276619274 514853141 265710073 806169177 837894485 61976616 885753753 555201582 407378407 886198874 975793386 189957902 580090184 757023183 334130308 408891479 753836647 443622483 213670633 249650565 314972312 469983331 775165313 258042184 185766551 598740507 443259805 5782131 16604554 195217472 687177078 829973758 529951743 250401096 268676400 628006672 558761707 261154372 698230224 289023475 74103467 252823543 226167885 223883034 724237315 551814599 422670971 980206880 848061730 512182465 979368476 213699275 556408479 842796702 518194140 719921666 862336626 304569024 885943368 703996635 776352516 644670762 666669790 761849487 773069858 983133071 66186494 259351171 584770048 600109122 227847921 989564739 627338813 888496967 391757541 773747585 745316573 823097664 685259766 600810774 588149581 756423808 900811047 503340555 984710498 510444031 242331741 983457670 986642523 353715801 951725421 667239133 890993628 344355542 950478094 749853835 498077427 495620200 60287459 294620977 690874645 124757155 117052789 553032349 226651420 760515272 921797939 60098752 246312531 404769983 461405049 123927225 731587429 759918099 805200519 406944199 152952165 99127041 30253956 736969814 577701587 970711908 795360646 469895931 444137107 386168260 592798341 747190641 577567474 510404690 539139678 117357465 113962150 308244966 870565344 67546753 746551757 139827453 125033913 797317467 942889705 863268028 645113731 777357954 690735082 221771768 320870077 550213243 258495782 953416741 343503829 748647662 185657945 249236577 37673751 548595122 499946920 103008886 545141184 47105472 109996705 990047187 981754609 520436796 502846262 267597964 87882931 725994353 646103241 415836258 645422837 11021776 376413471 260333502 896439441 609164024 108220256 250029232 431799882 186164395 39379750 533390314 202273225 577826770 883402607 958499280 933357727 928612740 918323099 55986537 790170946 209428986 295186044 278393186 973755419 679994776 113522502 476025621 594240618 386054121 762329238 578574205 388305255 52527776 209993072 423135812 7024423 216883352 47607364 596061882 266229167 526397653 759846372 342337749 396197861 91332483 204317328 625894452 769855644 479074034 113730796 783629086 198921613 354121889 558093062 173436804 150251097 350510129 744100693 461050878 266060680 352269932 619126705 191398088 666495887 883557962 321441891 385576651 22156741 53394403 717648663 38349462 210980712 512557434 8200675 334174560 352602279 315461242 282750530 867040776 363883920 504679544 201768479 338972185 377200412 477682737 197128897 158078138 30256686 715212419 843581409 685521354 629218446 306978685 182396569 13870279 884207598 317885775 830847602 260397525 535784166 877735769 344153175 758461636 841665529 914393368 490418589 70106639 188513935 932123454 670018818 236114385 960757754 306417818 666731436 230688467 201342066 356828458 316011048 461823874 501300251 31281934 560380266 685042938 165972475 11042196 557934545 654766070 823847685 180401711 830781473 908555232 44005648 637966713 802972294 61714886 356694496 933402675 216982934 907009886 208006687 49484364 477008211 995192330 461554267 484968408 727213083 717929937 64401934 604579855 732402623 473539167 103959709 952700502 342510197 541938188 114187852 187460921 315407830 505604315 110908752 947660137 245162476 729988975 998725825 584223938 393339938 595260442 554797470 142110024 898476624 133006803 85882324 649905190 580040111 838056246 812956466 362483887 245915111 712293264 602942578 724572510 838349829 431359435 75391031 992569560 871626620 190498688 890870789 398962407 138044202 842884080 120825682 4586876 231628888 788250368 619413623 900297654 229498800 628549697 402476978 665594071 112217670 237186537 763029040 588654920 332318875 805028310 872552704 41971616 143450513 605357203 391568924 348249497 101868406 396138058 825784676 508198164 16922883 459789785 364722084 924702495 835959374 800779193 552320397 767394026 96754659 616333588 520741044 187589845 614250923 531744442 30840990 150893408 606586876 133785120 660229042 293135926 370895508 59227241 648937541 694395692 748345243 716280662 691690381 586533181 486302360 860905052 158750380 741305226 338021766 791980944 78714282 54831712 785850817 194976946 285169789 399441972 830088459 892076075 821702646 656498847 572176531 505411588 531127518 328472420 789124593 532208891 696146653 782684014 717979678 62613869 580089216 804840402 453087874 720437854 55677762 578554571 240233449 555608706 109637256 464457404 188614026 213735212 681426070 508929327 844909057 474284384 43928739 115261401 160075344 76169923 964286657 119859090 510620394 747396770 613774583 463995234 829900962 753274617 728319533 594977649 147711925 759299939 668916529 889878548 540474057 519132200 423313345 282629317 628376553 625420601 187006843 862490406 949989770 973199149 631987434 990892038 968255375 915368512 346076286 825000022 177586743 25185119 271823762 494975025 824325937 946297619 468725626 736909786 820000404 686154905 841394211 587692222 796069851 643139787 934592985 704570991 132229869 177712948 959156612 986710441 390989591 945846018 250117125 526634829 873467404 992872972 978214690 176214377 176192747 502947282 143763090 777981999 790744378 111061628 447083753 246290170 876996071 846352343 723132074 422861647 735073859 855902810 629336383 424717782 70260495 561987111 237454328 478354277 235276656 843490819 127906062 668210678 26426866 209763423 319241892 646586799 566096779 16969297 424306626 287965654 749527702 726514841 203111258 618458082 309286365 564772508 963692870 909396591 115408777 548993389 279874372 993880124 562809904 461737663 42587650 647173432 287865299 643694068 700206604 535118199 198061265 873999637 469387486 201956399 787143932 314837452 132580314 934105800 189813897 683456630 189432651 132272076 936498961 268612878 247292765 240047601 380871839 593690687 850778923 410187020 379702939 901766741 472355767 108872485 176996063 791370310 221933802 641105765 643472035 130494134 203211416 535118624 650141586 427074281 488021367 464825554 74955444 250488271 250037289 107659039 940231554 281553663 970874935 266353615 39645402 992588216 613339922 239503576 692938748 95266274 404963092 171886420 379357595 847200014 850955390 855402631 656909513 552749936 864180858 176695516 371476994 95893225 905110043 508133095 406858800 678603263 424798548 20931681 586783133 891470051 418213389 383978287 985471742 402544234 308198154 953552989 881375344 961363732 158115071 440655131 340162170 786443786 517625222 654124486 642501386 970502682 426616863 367509221 748300402 507422396 845140786 226212895 102581363 248039183 57795858 4995399 277255468 280051928 287452921 16266585 698750514 999319432 782639111 260952441 601168247 870228278 73948740 840854003 602511447 352893348 41650595 71549240 845999255 957390644 853313276 507281637 941374481 501633530 953878805 601066684 963749466 610357419 837479310 905489835 493011055 848457639 257678336 437149888 451115785 778059763 53590756 474019901 913542390 645032512 384432278 993234047 135525231 619807719 706157157 943149333 705744138 771506660 4907389 284493232 30591186 348742626 119769082 824125740 426523443 182688044 461289951 599664783 465767169 484526013 673379347 368965120 994091131 143632688 650519910 152870869 797402178 423902160 269709716 749917576 592187499 607640972 93247039 12380863 459756386 897697530 102190059 332809280 414872333 563153497 325184270 985508611 283592619 695337104 995053313 33835806 972243692 327205424 495275778 519479516 404260070 581815921 121169724 361292195 51199250 312981550 484311490 336625413 949684060 779869425 293492109 626584001 823533835 920405995 682702715 23410361 713223126 852088559 139575641 172151287 79233247 924903806 580144340 145265583 378733986 846592451 506912395 132550461 947014420 938840456 749969658 206689314 400727688 747099974 867161999 755658508 492513468 273111325 610582933 271187150 633813202 498602452 664752970 499520355 425391450 137726939 382506190 974824685 946680651 731520583 719598892 953779382 462415100 632040548 205209426 224496695 638197050 717294070 592365340 128162308 804078636 82207152 750383691 640211173 36359275 77540030 286253956 572698307 517970418 423948927 879384927 829058994 364375337 922559226 447149392 902620401 673302489 201022428 735734971 554067421 504665146 545973121 778645479 563179778 286504939 154595298 447731462 299036950 639610607 898492332 885010741 181375478 351868082 639686956 802814321 262082976 305217290 788266843 849782178 147023172 358260536 842862293 172407199 448038450 904032988 912439522 808236570 630884070 322772230 376914034 10254267 938515460 670865194 705629980 652371464 138233688 850413608 559268384 923148915 874214613 856768835 929750375 434281811 268645779 580683046 813052541 238708973 707635416 483160811 811361689 87157863 381118223 224622348 452906139 2817748 757320396 828309615 733199885 972199980 518105032 598361443 221636122 76201042 132154857 519588505 311068572 955379726 683470904 484632627 663477010 690900499 708279787 438042293 127300515 203543032 994513242 140796937 440971804 103862078 175925513 730772104 871531513 825900625 318038181 706628078 743613012 284158849 444608513 963844193 526639865 539589125 340551189 383736172 10625364 686620928 115474953 409615623 112598909 846860925 857280036 710404748 354376501 319175786 637958364 577736132 159678177 821245858 915892170 249589210 308712081 473697001 572099252 342219365 755478266 48720354 825569924 822281311 532186241 917248547 424838222 624450353 826515497 879353893 274077772 641913764 322103969 435405380 920934625 797390065 572382016 630984657 537960344 231963060 918622987 880120 722455078 504496370 923192737 604807893 922362726 11756314 126994007 20719720 36606042 267730174 76037408 478226330 72174385 375751390 433006494 557838652 745564727 350982495 9149979 779077897 104206572 496858762 35515521 588699297 573748468 922791643 719214953 140032140 360534809 97826859 296478480 339987262 99133519 61776065 318518885 245491214 319988910 272217672 231560174 290636862 716659836 742393559 853083881 582864889 156034853 677858797 298250288 326145869 573691450 263999339 360205135 19009333 358764664 11341985 218494321 30787730 837740739 687716675 384493169 65427247 62881570 773493872 244299724 25538233 4889550 555536301 967386536 300473804 203810335 989666277 121837528 280972522 555775896 940300911 316834514 509316476 924786916 653412361 938681013 64141011 633553112 705988565 76062789 558001959 45520751 210409573 112363510 757740699 587285195 234284715 496299741 43508277 11383864 231320836 747424184 368484074 344395561 227145783 515842035 958181011 880310331 419974256 351538326 834677998 86320173 352063556 499917150 169773736 234552558 342661555 373235114 854047825 513331344 673596191 438162815 760745313 182838865 377761367 279426700 23370040 310912399 775217038 134260523 344172068 158084313 233210982 133569880 56137810 141740255 559348958 294585788 20875486 989510528 776291945 534627495 701116616 948798654 358500569 610406670 955305464 816984514 747424108 441359250 854403650 41647589 448688070 715855738 254093406 761485723 980691192 559227318 9730799 392871308 708638323 534423002 96463736 397628802 680816918 576099627 469096816 396995950 59814951 950958472 8638768 869312113 834569299 479057545 668463864 613878728 858553516 501264480 793008626 900164067 672075701 289705198 221711149 715721040 213461071 771894456 31665317 786385 944489671 365583345 496735288 150318916 801280981 483648878 647608500 121267894 148625300 154081198 715867334 268498267 846390925 927284184 813236235 255474572 674995369 871274174 594566142 640468942 583539262 916845013 617125649 696593357 341606667 627741243 515345294 766424920 727931698 482918842 621710513 654219633 668650052 124327358 931556763 941037879 710339638 525450339 179353175 456308980 924397666 809918820 979025619 129483550 511104145 855747882 70571496 266904912 805151724 279171013 450737244 451080014 634686478 950284779 19143637 941865473 681915886 553097210 207014373 608419964 146892022 955970300 792807173 774167804 362761201 686945696 666202516 451910628 153543892 903378746 606956254 509468351 511241727 388325070 699585556 541260607 495420084 246733825 450730273 65585216 632091808 378328094 150772368 657069256 947131548 132115237 637571265 62969598 355732707 85573807 18502323 592786745 607907353 209298691 830181405 655648497 889756748 319976467 209799331 408622027 569860595 457098870 945132236 36589714 108243689 661117035 413678349 877807161 814426484 700821206 803113149 572501725 906068803 993243213 685122842 494464188 807254121 995218432 506426450 79712073 556642917 354351314 300349559 957602833 316744984 8937546 519803517 774908369 122896343 421147545 404676424 210934124 914423374 715520659 836140195 204515569 83300771 119154360 488578108 740020367 332675413 789042224 610506414 535512480 802750549 875228362 671512188 419454380 848480757 313182974 728549133 580214621 452063477 512825579 168637872 353391490 737356920 818871127 349392034 259824667 339785487 435584689 448805380 783981387 113407403 804036627 166125279 222529113 372413099 806103096 477013538 592363708 656186067 755396237 234730920 357980944 175915090 132618269 596677427 624668182 736439231 239243934 831001451 671424443 708795667 143962485 314824929 661144079 24996534 837679780 328591121 199400528 540192885 321552349 342130518 704063969 702220418 867265909 554930689 353735500 185725057 841013613 122553662 463665991 240468080 855374954 74988585 155480491 550174656 98157760 849353153 245687419 204813382 979692387 440505841 298400483 84855616 615325424 472141448 36288055 527737939 209916595 381006914 555245295 136543881 179226009 898732993 208723890 440941914 734044985 421668490 835714122 662001573 641061587 67632657 674146475 441305261 421227597 106193070 572377583 144712988 11382070 401317029 523610968 571791374 525762505 387560732 532586327 275601916 984873441 254664487 900553334 179541453 341150726 834772668 440056441 984302028 395858536 733119425 283374398 943744176 872866784 52415736 433632722 217943704 833990379 325353242 419609451 123222533 17604272 925711804 362193503 813556968 933318655 137734752 955217202 856373652 347242064 661163886 940185490 467289542 76703426 184410426 143833939 230731174 839096602 264701693 769664876 393036990 23268043 703539670 988421 884072198 787511273 488041422 99690087 762473432 953294901 68851931 845270019 11881215 407405078 775119824 602202487 482391968 970600346 113077105 724887687 532817241 61982074 44735848 591149082 298914590 495302167 20926791 976236363 412989532 551146611 131708293 399924300 666287583 882953024 896150146 638854023 617152216 89088981 111309194 745263234 924306920 167782194 953359312 250009334 69337109 369660670 824050538 774237114 596540360 820152968 587116632 722214868 77210075 380791753 460707720 209405294 179546759 132442204 237614536 39562970 127214707 313580685 526431953 371703701 551046575 95097926 199999045 918846786 723821739 903722021 624195247 852148394 369018696 186750562 695570045 872764613 756944842 141724139 74457867 907871147 7893470 30697801 472764310 346601886 313975194 378933177 516066382 989927434 340552317 261886997 492025152 109617286 920939113 488655337 958401381 874820040 168375467 263254112 30867359 642704569 423930107 384779093 227050937 344124254 163069557 642749509 504157025 384220143 344338591 410108247 255489840 303611842 914295906 952366684 813145005 356164193 371272474 557620682 853854778 248519794 89661824 923657152 970515503 588513997 304398010 624322311 437421502 384576871 594556758 162126349 994857742 593649768 789668939 321513961 842067241 338010907 794397169 283307352 11967227 2809585 648679184 133503944 93514335 964405895 185781718 64481858 506944792 567775391 876872409 7948927 844560335 390403365 824029204 542392799 760016147 475457069 539484653 593302633 736954976 886019312 240050736 953267147 215107862 210827988 917613334 818231903 995963774 285480546 924533819 964714017 514616266 680008271 723574176 9073082 490528531 169088628 872805049 4736890 156387929 8467671 242282837 861369431 234088840 458811042 236985013 489363695 203849326 351342887 135244413 10558605 351992262 289757924 931091386 763522077 282815026 221570168 895905762 804399415 312813370 813607349 508613074 855799066 71390289 702603398 421468368 248152495 902638541 745109004 724395913 560100996 293915122 747145099 503671568 732016593 994821096 665156456 78923749 250714994 920671424 156731453 394583274 350392306 22755444 95527873 438386291 9177984 954851047 746097625 101939501 135926514 204811486 836552080 928314171 497991878 907759375 479084059 98514207 865690150 299435791 809797585 86255302 42800608 88567905 923354423 791000200 802307949 35076974 805074426 574052387 249799657 241631369 257789932 304764344 400068892 884487912 419035658 648203480 125038711 245492144 859256181 302097270 752450575 207207145 477452406 533097198 711738790 863080065 863513479 59470602 710246304 812724055 815020607 46234868 864245777 182802470 949899870 539848256 339698091 868177564 681023191 792300528 567082192 830410824 305604279 38927205 61127815 970069925 446410301 573439340 378204543 582300945 434011592 388738877 739454735 67087321 970112233 992180596 397128247 533673773 59410766 753091860 936311454 383471908 507481047 875052177 498821011 771550147 931478402 212718777 494843148 966070766 617740925 223962570 390682282 587687549 690212637 919774319 205271732 279355172 328495322 692524207 199132955 918944649 885178200 339234563 796201074 310629422 467300196 584491846 77556986 160720781 705627120 685218750 114760604 653673720 114077976 322400794 856854247 333589941 767878431 139073645 507705361 322952168 203647855 574610997 554284025 803870633 269136796 120273238 676635173 481856492 177920096 699280672 522975176 492174743 2638498 315703622 646424246 970909292 166610026 390976743 891387505 424763429 838354413 805199751 804587294 781120851 981633157 615699475 721737871 695545981 12806582 976316896 46563126 282220811 376923690 207183788 433008950 282596941 944045239 836450974 564651353 297619067 301154645 136177473 551790601 522454458 723423270 339624586 328520799 784252176 688492669 486908630 618869531 220895601 518734277 568725228 342783395 821781173 510965917 104777466 930978054 742171805 16250312 151815059 393914622 300170192 707755313 258359477 478312680 463340261 999420138 909417668 131005645 547594064 677948976 320157070 304991322 161970805 447299174 735361867 834313705 99147930 779113495 942278037 798552437 704550388 114553847 893095027 206077865 446041500 99118558 15364431 373124307 537587346 651637205 712857603 884016619 351715518 814026497 860724168 821284239 224333300 455049400 897857608 807117061 246188778 480823673 996977805 992579393 455584324 986592736 673108491 548984788 61438860 110500284 624237473 416443906 599384625 976943875 462299284 582670771 488905866 683566795 840716693 719589489 29538015 452172378 646047666 920969336 74024018 973177884 436890477 322162084 735816698 109107362 79992235 644748929 991177676 985662889 279091894 406810425 678705581 62885141 292725576 123048101 5602914 14413807 348121468 264668994 27933344 83050856 662085079 440511039 37139457 331619298 93869126 530033250 98329088 675760604 601620254 934774569 953209100 677714691 555900959 682227630 574497654 918998310 113880427 343616445 795042932 153582406 476844177 540690115 327483691 988363395 446755204 577532117 457059744 970071849 137271207 627616183 992451016 402085802 222800054 733266892 829723772 985585572 572731878 825401127 531332219 711591128 20913354 9556091 608665966 646856243 942923873 130570282 292375785 794040005 143935499 58723133 938290532 566510797 177055384 384565343 367191872 808801965 93620032 758975208 714486215 778211310 68543135 661684699 176327206 97804871 696191927 65450716 914734207 114552977 159656694 15564092 682055371 354167758 480746807 340061425 815846902 263664684 416997038 259357593 216652498 236629503 227129353 190859646 356348696 702658750 486411600 454242447 13308011 107543566 121976571 534986081 173584209 941245631 180195045 470407731 822942781 855394237 727350612 209038832 539426439 567121190 596902389 267149605 4457841 760664383 329487583 120204552 886113061 105213810 833558925 380100731 725095858 985183568 221363687 634131714 485971476 82095514 638491959 473986511 948886828 179494188 602322227 707506360 477355203 765911576 294531832 26819903 207473287 773301389 962661391 438984068 538641172 202978279 937625955 304651615 682781421 276613035 813282887 678993218 335796600 239899777 449095545 217332047 195693065 206075198 942314016 315174472 91441366 931195361 847293642 847400099 794991109 701661831 983137385 629599604 271021722 72151676 690457436 116025723 237347209 931479353 651359339 200465948 93223082 808012626 10698684 799349869 195104193 150125457 323148269 989132319 886113140 58334171 652788981 655622292 755345494 483374664 868919098 530171346 929865696 957312528 63115404 140352395 49665906 629640856 930301726 706523155 212483929 307811436 923107983 278655339 143082433 400709694 702338275 413389881 728561094 234483176 269712262 466893517 853680746 428996464 337431633 961732126 374470551 389547521 385391229 403132109 765228826 365386474 773555122 44764191 759373742 214185132 678114044 350900482 477029369 847949798 695305683 416557331 525396348 776041063 106539281 562400652 997404081 831935007 657494011 828987988 393581800 314006057 910106943 938588414 518239082 705938890 152156660 127868353 752256095 642531694 706953877 860371575 572500693 931387305 816502281 852300716 923072708 698866226 370791581 593175951 427073556 376277743 993830660 158877942 322048393 991352042 455849311 177148000 127683028 357128025 317379632 927265525 959733395 940485269 979387238 478154116 225811779 404664096 852725589 700968837 126925389 412961961 106360765 430925845 384637957 17588480 864582334 603356926 636530080 693470499 892004843 696031148 365460550 889041969 943694133 304511546 665035259 375211130 616292861 636378727 674217648 877012591 864291844 30467735 338255683 824318378 29957754 813847258 404476526 664934897 382912757 918836202 190943203 263762988 962378353 61489701 521588011 966755699 376517202 70523536 762761925 393118717 111297382 558200799 360254734 942722606 382734053 355744611 90208595 453315987 937818473 349924385 424788163 222255071 628631542 50783165 871597432 101997035 222426366 844942724 583640434 898893498 648234837 777309557 381364125 762097276 928503604 743625512 329269961 791794049 853233988 872276711 701700269 848782147 757719954 297718944 255880429 294462822 529243283 36242671 699360786 852800695 63618083 108268044 600121997 760872489 472312456 745403107 559140277 770625492 189322609 552535554 518289612 226885120 845266672 848629921 499805695 520253461 335887492 41747357 621870940 526465446 761500180 957078142 470692829 255689587 321557226 253367415 336710755 90239576 508074686 240464218 832031415 745657957 814799532 673174187 377798794 879998413 414416440 655257228 537219702 830216171 665070672 437549265 306326271 602632255 552961101 929861615 944331656 912947577 479654118 726546436 276547430 608006760 553962309 435699674 700809296 793392397 903602163 967161311 231665135 393459076 889333225 213270826 188317635 268060447 298342787 863975035 712979776 462510924 344214406 416425273 308748864 876101801 761898528 941019250 856606341 168605176 742277606 48926686 975711926 327319335 480978645 52578015 544054120 718365766 202916689 404860790 978289168 96166033 104832297 307539803 50241040 2226029 849604755 50999005 1124277 625132899 42169640 75897855 526675245 80475430 718236914 670521191 450423184 990833810 110179679 132498279 594085858 502938540 920841790 611695346 781487117 449079711 671047890 581831850 525066206 68290493 121819324 891370455 844224018 514303616 349014287 66774374 2688331 689616012 124964155 348375281 589240591 857961393 373347358 498018741 27804879 160235995 672197374 967277464 701638886 749672489 222945930 299045932 607284119 364666333 737646549 521612201 952223753 447117155 866216287 809007082 299701068 475673934 627641353 305750394 147794269 471812955 828732450 957630087 129875482 368632680 485515360 452554217 817913421 909201544 753228512 12416540 714683560 155657192 857880617 534223949 342972612 698520038 786859556 815628612 765620770 459157764 851088170 932671617 294294317 264783089 561821432 399047963 903396914 591516539 403224496 185419487 674788460 808163230 420940516 180647737 602002177 653054592 127703685 48543297 714301426 530793066 434052595 648348087 62845240 904247763 756023537 168996355 807869864 440751184 397627567 713020721 445650437 262918056 613233342 251552251 257930740 365193928 654794785 380377791 408232717 128901312 768604216 507611783 178503620 87780301 852023252 888997373 368012412 615339600 178981929 502731900 86829185 98283480 695557074 825190148 588906238 950145559 792488921 388067131 735412242 897000421 69119655 656658542 498656698 673307208 455487248 270531736 78729444 16491371 419331417 311019350 357074015 966326688 353360415 564228336 935700448 921592422 762204019 158913365 945712913 403823964 880127434 888507676 400963698 249182545 923694849 786413700 47870587 639918900 550842717 911113846 235205250 489634083 819926668 747750271 964836298 617320288 637012643 269037272 245756026 862413144 380131102 884906846 45850278 259189916 20252642 185264284 304333124 24353771 883544129 221339071 58248504 141332002 437596138 401200796 917087821 7935314 862308350 69709495 227633199 356060588 620055040 928129075 61887865 954195596 322296544 720275683 675129518 285215604 737077234 476172603 543634230 359070992 556540915 684928346 457257060 573246002 474306054 379564554 249378414 557278424 861216444 812301242 718568824 734294818 251028745 832929665 457822860 352861278 224542026 833395738 73982617 231962624 785989186 475334898 605522294 213228191 348874788 721895191 202513131 59869443 83785601 533244991 499562395 407011602 66436181 911867336 922972697 643265251 848683784 783309245 95497697 266704304 401378663 528071625 973470288 589365470 180808103 386447430 866476467 892785398 486249317 416034611 787603000 125087917 968593572 441083190 290274554 985875421 322224341 300954270 622611708 635925131 797197260 705895014 617322021 296588767 990423750 526422313 797925444 449252654 173067624 698784304 839858199 95199989 916477633 222855786 915760188 193579477 507092546 801412462 993398334 223094680 734513868 1490045 979202958 224378423 512806820 820027770 423211652 955164870 869132663 788490235 628909412 414327437 229221718 975722032 983075156 329748470 715400646 496667644 732645734 543951764 578703783 231330279 311847829 300027682 199792455 342866462 362908609 110255237 867760989 807258490 294246067 710823109 601761794 711239289 173570333 241572632 879603139 823578691 121426582 836763096 383069317 394577831 949573283 198468491 834667169 894800924 528611755 15798230 699341268 182319811 856127487 159190165 608889924 400415582 73705689 375786683 579332989 267660133 267227483 469663598 597385588 329918182 625308556 324038397 535511432 257380264 848096608 707964374 763053439 250678797 932764591 652938647 616769664 200471590 64650041 959623683 211345960 923454123 197842856 944476675 24851313 851558395 659203215 613836463 752745919 605310234 384417381 211152956 236544481 691524797 733172618 514811669 395816716 665408055 315102028 874306748 20808669 544424584 334846682 586948844 300777304 268645721 193214540 155030142 435724781 343555064 54043045 932887156 223295086 518864477 111519179 799728378 322735901 44204068 738101140 220075618 34098843 646668184 936426676 793376810 528024820 363718824 319068882 242742771 604778146 974875115 887390837 47037065 990681983 965579164 119405578 440001247 515829202 865288873 167041777 897339152 49788743 41383836 831453798 462173537 457859573 151385521 771113622 73992506 576837974 349749184 306031502 960726066 677808466 231364952 881908301 53485827 453084983 813646758 93576112 758400654 579091126 8952447 51443073 674071776 410441457 429667683 414223218 640320556 251765099 27766394 843483675 946146767 795907345 847162771 143876606 338400073 940085561 570898215 835449990 881020230 607414943 610867537 357972227 14688412 428404841 954916061 779474858 720525636 697955623 198664758 18754725 568241507 781275081 734473335 917344501 853521985 685121201 831256156 615354768 98616658 217400992 916304206 659226844 606805815 303448007 141093981 756451055 651400875 902227642 586012479 944646172 400803229 795523957 929515858 42437226 677396513 674680927 647533729 839482704 888364912 321493316 718607065 515125807 973262064 815008859 46776401 296903503 842418988 334156606 637382919 846566628 175142612 61697524 602861477 354492933 913724360 592365036 347577465 601699764 798496774 94101755 309335675 364188122 533610175 466982490 242232392 515612746 883253568 310063026 54046504 531201466 438782473 59709456 415389710 925189840 941383099 727952107 195462284 556214032 17768483 990886683 64223204 667361263 536261937 927999976 804658175 987127748 612642308 941168641 856825447 312956112 48973791 435100792 547696985 991754814 282537769 545338318 525421230 264036640 496984696 375722726 800016629 277349228 748977547 92816909 206710356 229117191 681584703 324491769 689505709 587835576 517030307 886198982 298942836 646321969 268325608 199310587 781621467 513677833 54655082 204123268 281226921 485419202 180864175 133515190 325813848 920839114 18570079 708646481 991598856 356749676 267226701 52614774 554027649 562592996 683503222 987007927 435254833 546543444 487051004 351959044 332260396 445210311 520634412 707326654 861369912 537329958 292273273 31440299 791515321 535382869 498177405 870248948 647209405 788353036 25223931 649197875 606128634 656680699 582957023 669763169 983141844 978857392 465568572 573061862 552723024 67388068 843509580 234317199 623111708 384954939 168600183 399410577 414894224 371195323 862334531 691628935 648991916 915286615 877299813 999752315 427578393 899378726 231037880 249739477 602514466 735622956 773301569 724281197 874852545 129116243 293725992 83612801 949500307 906965096 552705477 833740468 572061411 796679465 606878863 223638551 179759771 788658229 876740906 515886362 182547798 434605076 921859683 447111582 398930773 842849082 606227243 611225574 692827004 511343359 764876191 212389283 545682011 630076067 490689538 350979815 20583209 211011152 496402367 188458286 661520068 887858713 155242088 576625761 883508918 262830324 988491450 239742411 339364396 497674695 796311961 779578658 518288129 940457559 385010957 734670722 659750063 112037460 430016844 972286579 206912865 680837726 884935089 94726366 196076773 713129712 684815293 487758365 549447091 299956085 480142878 392593643 236857830 74775870 693569959 782057068 384075341 685738631 48209 164045102 395434833 80759662 218935873 244814889 269449228 302738175 954318530 147908022 777087293 766365223 101333318 869719197 761906760 393106114 165032044 938882826 162676802 47661715 269209331 255205266 14487774 414582849 529787080 365730868 896036222 929743965 277330431 821331287 803790887 145639521 830910929 904779968 489264777 658005420 576308645 182501551 29227259 756257420 914206208 266276025 333653373 638919982 659323293 509911783 208581812 665580207 448504914 669975204 41657075 38500365 90945058 579897801 892158255 419535154 502453309 355445134 667284486 316063216 773483507 846755743 907157699 720844544 947602364 658462467 85949008 857003779 833227843 485374258 305127499 781072769 976328522 945916169 233393644 494554607 876117197 597641676 222192416 747376803 623505890 432616493 209348981 506346973 882856398 94689594 479014177 520686795 517726461 779005302 1888256 591677050 654456319 287142340 16063137 633631461 322848403 847768178 640194348 717443566 541970586 509539381 90564220 912875100 437682464 281771817 314444051 169952995 447259481 676420050 39014416 37384987 981317532 140085282 105718347 897616517 454102133 598806637 789294389 588641160 564380038 919758445 380501486 663378555 71349926 825669706 264570944 957717139 288931538 824076688 794825627 433027313 633336620 261578293 423172114 146322335 354669567 867412884 532708200 224415374 630130109 749009273 201035778 824609434 242931202 421860617 970085361 28747904 841566355 809278940 164178411 905233903 842875995 267675890 377725518 307364464 235670122 506400172 312866852 641517700 63206654 65671900 366283805 368773257 303207544 186749364 105261962 347410886 732221032 299769040 143659891 750311793 225266813 624680250 244295031 64664992 178572690 150815580 214980843 993545813 249138351 72321034 525205445 918186107 489578488 56956805 417276832 294856926 171959750 441894511 728579275 337363774 563177875 140608214 830567727 653188921 151277825 656816434 642958693 815590231 718060765 196707676 385476527 893087243 304277526 12172700 321829615 810357932 184164045 841756063 808153015 611017345 690518850 862591865 654806848 146387885 101248226 857858726 747962471 453222467 608123710 10107153 3223731 865839420 132084498 3439616 901679444 304027004 668711746 900730671 517427746 776587466 369714651 900949941 221537437 903074521 690718989 375546652 833887465 598316097 419368499 428124239 649436374 261298560 215935699 166737571 742298846 991791108 677402004 42885846 629114143 230897949 869653841 403219983 381865567 972694789 521796605 739940056 876860684 610463705 638084033 728680488 461775939 444965542 220562403 41156188 435748028 824205406 26659290 596876347 278946276 771116248 542833219 50401775 854229704 252150745 839373276 11002892 141645087 569377797 594923666 486186135 875409992 498187246 200220284 950179820 422184523 514787088 552123603 912034271 604015319 741222604 19051767 677019299 104953924 606438762 246916982 573604819 501567632 907687194 316821253 304544630 93920354 631592697 304601469 555302650 186717196 137254917 821640416 824572982 117519491 968282153 493184092 913135203 183901284 313144628 533266754 249441576 42283259 837053925 211201553 133812116 728417077 473553621 309131112 868770072 678036136 129660306 403950357 903086231 577917590 458607503 393159945 602214227 678136549 494717216 638968416 818996729 843790114 181236874 627725919 329935773 314745737 668680949 604490607 81214142 186541045 341544818 415474213 632211010 238532845 706282493 224423482 986193015 528464549 403341941 639364500 819015697 955484142 159560611 701226813 885417771 330894671 59465782 958562406 630330957 60584425 324275661 55048561 1043299 942494858 887956964 803700952 3865282 442869937 455227625 53172300 204908584 628354932 713144616 917286817 702240700 325300899 41796063 236167119 452235016 832776615 464978987 445746683 649116676 794495129 239270424 271323761 586473996 737759544 709351831 72513441 854903524 773261806 984818049 502447913 837488571 608578758 665605271 998577356 965658663 346697851 52975745 352960885 38057762 21954921 941209298 785333814 239264276 553381018 975752708 288346959 322317768 167484091 727506039 613980956 676968313 915709732 893323637 672548652 287714237 297627351 35426860 294211381 994770331 711231863 705378491 390929933 440432003 766436948 256462623 434157242 533635657 550162280 352349760 607547241 591327273 821810256 279217909 595202152 110581195 697408852 55387379 442333495 770156856 62302307 378777562 50601849 813212905 491649555 138557495 320310773 163872443 387114151 872293496 487921058 336605425 385020672 693288954 725447837 884584760 428615605 40132092 718670627 409849259 536855545 783858854 38088356 41601470 91698856 250525196 61751988 134439775 276276560 94202660 647369739 737785814 587687197 920507092 748165519 992715994 427868644 917572320 196890951 807004038 320397097 383985917 747943787 498266468 409772814 38090690 316842837 487429471 533960553 193052592 773117574 505945289 843780266 43511346 692358060 51441250 597637876 984865946 103285658 450776403 709395214 851440929 101280841 268436515 390660456 190707172 547404766 841025993 800760600 22709745 45704613 975591075 795239133 732830775 721602318 4122999 88148510 364511887 845461177 974550129 667386860 123397820 325218660 29344295 552764415 216244070 445584126 417266838 136684979 418404640 231429019 704285731 147244817 345792865 840492658 576971932 561577926 989888906 771265768 42585654 150760494 724444646 959329165 900443277 632474693 812460199 264850700 469632936 209241267 508308194 853706567 509394675 799498693 970127263 899021885 799619653 593320054 282303680 15110427 358689494 798574947 258450971 664389429 744772178 828594132 215182440 900671237 38978501 742257337 953758790 77441326 9317025 567326119 518506819 483388799 159445446 12926431 195070669 486861285 815694454 12301638 696797502 548447614 997535587 4233584 357572310 295915408 844160926 664324752 552212673 973284483 257959847 83638406 435681293 617421034 882522723 839635419 727976628 586166914 632100380 330509501 499992731 471459631 340098443 413293569 604529799 626697722 45835980 66260522 755982122 402621974 533675621 434884190 945415198 832734178 359566402 969524076 453408484 25313244 232183993 457314509 401221607 994441141 858034055 767310748 338214261 478460218 566682830 713450914 864372427 10593131 955257891 738009171 168237828 960034667 408009077 292366783 920608305 252580737 285060643 977123240 499154495 331236389 39584240 345931385 458169350 581534958 874526223 156020797 805469259 934523813 314555920 496824746 484354740 713796401 263231730 826131236 524154580 294410404 850624538 664603054 717471012 695882814 418697303 786745850 149908487 985383518 729427675 498975071 804828864 391515282 639272519 534832346 133545097 125517964 39400860 985840149 376134516 319740710 859849035 295703646 728443270 781028199 305633319 435098540 170138025 865977206 535317102 801808286 644132010 538837418 442111173 174425212 64296006 364151675 307511099 646320183 607987228 647423119 761272384 458205536 119318200 980139950 925797304 550163007 389143688 660668366 552749028 118205364 115529448 707897098 78052980 792851538 179852057 771970468 271802747 43058001 928601411 505778952 56020599 799521162 55316342 29407945 276232013 632664717 138656429 755787682 876171595 158979459 203808202 426410617 300225572 316365895 669527188 714742101 721936634 974772821 429411009 75922026 308354381 380395479 616654564 743865111 975610892 519127193 918676352 525413083 965490831 962392343 623414275 84317796 692853649 678141291 423381945 572955267 466150965 850471009 978881245 321898292 714550027 898656357 470197646 227396252 830744329 599949967 160460504 111728133 924278921 817544095 912129454 891435747 567644756 704656122 992618981 757148111 299634836 618587058 899853120 871036812 842943456 238262142 257500778 220558859 591896630 812312508 546518000 116126552 238792186 46713972 483330896 81563826 863538424 784327511 497038313 722924413 175569769 425373880 115516933 288808512 450490087 82014360 988763603 229732276 771493753 228494241 697824877 567137713 325583498 231350815 453990102 550186555 47978993 452214026 908449527 337277051 161619180 782228737 28808353 927043526 481548574 648407884 746968716 114214552 579083671 570205916 173629786 685809559 559314376 358899012 881808020 276752518 631692949 76833735 926006701 824136033 402097469 727832138 17913597 230406973 946389615 106691677 830718658 218415969 270986560 251872312 563619883 582328375 296821809 612057016 281098310 578131024 330279457 127286631 377194766 709457771 399607650 470262642 645294691 863645034 732301478 117774002 781319949 890951510 943496719 761135526 645986750 587904614 79834654 934444404 885424144 441202932 49023169 629204718 58721159 233249666 550684750 477828488 103753350 596278202 954516099 453689955 718031714 558044021 926014339 599270213 150991702 155928487 437598428 954817949 245089664 760808312 884409477 246388612 652827115 970871091 566195160 443970746 746715271 565424968 616175775 811218340 593023021 543849300 481876482 350556753 620751262 808245534 333190042 261291898 260709510 772322699 725554274 504594302 996026486 542819251 801993155 32828773 678446565 41746894 329538693 128916442 151369012 441554496 47309278 350998072 605039022 475785366 759957616 911532927 703643268 720377988 789968700 179352917 146644942 405681888 24274611 337116422 80452495 180696244 276788132 328723088 598064815 113408039 809411667 620148108 581213182 447993740 71523681 698705989 803824954 916839518 216847578 687699113 348734462 734137412 379210040 755675983 90321624 39665670 490417239 225121399 467994168 704052891 490726011 812512007 280334199 679848473 42323793 688766352 399765461 315574980 77793517 793973063 721020284 982670346 168838352 21494030 588508286 762133886 743606492 716045930 216640471 838655962 854590048 1317515 205145696 764542978 367026448 553269577 853663723 719226882 507388429 569080864 970818596 927934987 174336214 15821629 189324711 317267833 487660637 590059626 546432755 122325969 166866932 570483234 566762355 60858298 73487965 48581760 938249334 775810572 921955511 62812241 200416824 397241025 543329685 986840063 94219993 917476349 500101608 845261989 829541731 260493062 599553553 149068030 718314693 610418007 865645776 407599220 252307674 490779524 44706392 117355032 687889252 768945750 933777211 82084255 493515532 867814836 593219446 658913383 906057827 977505717 989842800 833591930 568582369 881012114 98020086 848490887 310992871 271566511 313593404 473040355 419611073 51701143 370681571 299426188 999409310 427276029 146865384 580578609 39009687 615697083 339411392 328250137 843068847 81655511 154358591 679095871 821300431 896756347 43197089 99245376 728703686 331676408 410216841 948403047 411106896 400360142 220049161 99299230 604726796 351245468 853089425 263783298 300080007 125644337 889317123 181381711 998710317 621640573 627456929 331981293 458476123 894018458 945804058 652625899 203711568 284110801 926949507 525095038 1439543 619009672 326561881 144011659 254271521 943134294 240159616 371334549 9307910 774141683 735490631 594799307 114872777 642405956 175373154 275461124 19975472 400011604 659931377 321572290 334587379 452627799 953628023 866474285 68260771 595301542 324487904 398170383 814521799 801114054 225879429 914487012 386273477 996456035 931189534 488627656 918039280 38636111 98823636 438527364 714154882 274227844 526956852 321470856 754135963 922164775 124575540 690784747 395438915 907801986 104792367 587754090 832586860 295039757 68223723 15078254 783405043 682215004 30147988 324305159 640178324 276222263 900285125 231576042 520409083 646823559 739666803 146694264 293228473 638175585 264911112 817379257 969529412 11552767 971920464 612433496 124236291 564525252 513254019 133621170 852807739 381452092 486914107 330202308 641396766 919285531 259384959 647233331 104287177 249307453 339398585 827134544 99649336 295006369 27527362 793918996 8964438 486911349 156829655 283493402 757120757 957802508 975110555 444661423 30861262 857519077 196028956 864471997 296989058 2695324 107652049 481602012 649954458 360620800 338587284 336330063 591058312 339798023 902808239 652598523 966306724 538422726 17210826 510359405 965383730 773560452 480853503 824333790 148354392 185317807 1080009 342944560 268991785 461524 356769803 644504294 290887326 155758771 369833750 133669939 954236567 962447407 589745052 522076395 18410720 276760398 45678270 600300175 904003367 816557130 976821759 249450821 716449289 200612475 118604364 714901725 719882242 831504229 593463546 443996110 35894913 929181618 380639432 621665336 969063123 99516470 931540699 599209187 115779380 829433071 812361663 924737595 174953922 56103931 830823017 688516954 387719050 862512808 297248055 230329599 94998908 212100714 867909869 429889681 896693616 948800474 821352378 897898782 360259883 381449662 217578549 92789854 640780112 393654785 186850902 766829490 107066485 599080115 315730569 943576863 389048849 713941267 857577620 74081364 177165702 474164352 736044721 501339564 584796446 933781898 759342205 948053794 952431881 272333027 873738746 956699486 586339936 278849637 846846617 569380531 278474281 767907347 745232429 894192659 672327237 411002137 966532596 978438687 639070348 967272139 62597012 179366942 632097716 425337250 259567641 79977218 245757022 659743810 446605048 556481121 240280599 360712825 342615312 583640441 338837580 575595576 559451556 917007921 35673945 824865433 997216101 716452889 685061500 623100643 700035429 585107815 431033315 849696124 68479009 76914173 465806235 667581180 637197439 367267937 56717470 590258972 217782477 795495107 61312206 961923519 172238783 267830775 976730359 689208818 758629236 766186113 321927621 23470822 761137774 311208322 822400724 119426809 623506593 557093329 768649638 591112363 958036058 370381025 749122724 501662122 836389210 186849230 290704927 121492424 624447433 50838118 623262542 58132992 420356911 359770133 741517652 573475355 207493509 134205681 835172925 492737141 826641445 370628283 32357877 427102063 741170905 577379289 901399385 988053506 970879688 183367261 499633960 184936942 277107087 302748923 788264205 393414178 871972387 244792339 759693976 168546223 613592047 311226541 225704004 588483791 113655230 809586552 756922481 716264934 222500550 650488268 193944168 913392770 719253924 206016680 539572058 241131091 92261726 808418227 261600611 459180087 941140577 197731899 160592000 352733485 230371712 457930296 162112924 233108836 940440314 841780555 195717003 441156398 98676 319325110 708864515 103189513 493278463 170317168 94971045 592360339 438028809 797885706 893624314 872111770 100495477 192177864 126547577 368163857 412202628 426204044 38118770 930552340 826026982 174258155 599188015 349940967 783791281 53365014 293835987 100732914 323103840 281893363 640889714 914159818 849693264 130167301 623205638 905599021 650980202 600202363 445123694 299432696 356447176 422372140 858517364 102028093 569104 9709978 734485450 393151786 39214792 599688171 696686602 938496028 546967002 426601967 900180659 700533657 60885408 353945115 808901936 115077704 984074964 344332942 670585041 678536960 400864412 85337107 342366160 50279355 480293255 247193366 471343183 161161881 888576648 294681777 159209301 917608169 504705021 186269087 401475029 399020573 295538858 298996554 175026089 792505553 142221503 208016578 565137551 108300231 79987919 752477118 741975859 24510699 979215574 961151388 295771175 502124625 445683518 158138469 639318241 463604018 141964752 686692292 127995588 937431796 63564485 952156182 4949019 149478944 155465142 905344854 584554261 438160234 963347114 94347311 531575500 295423663 96132880 348543723 547193920 64386032 788327099 141830790 558807389 5617241 436945129 982343580 456522224 71528765 62602559 155934072 971724472 955887382 366710474 527998215 612649554 285761162 946628352 465276382 905622600 140746083 584356543 703569729 697790477 120870290 77330251 127925011 213389815 980015160 763890000 688234724 111080009 702219922 529034214 588348655 965110828 200632591 674615688 150935312 953595059 725793857 749987101 923722191 347304407 965933540 505446642 188922715 822682485 585485275 935852474 710663817 35035738 53610798 524271510 839303132 575045945 465901846 561165064 234260090 904050598 356703723 593210366 540497715 334297385 15192112 277068494 153224061 368644642 117181328 960286518 136548980 544812269 36078561 144240986 388581863 514026171 28425245 718452425 35818305 627766958 488677732 553402228 48121494 993985748 485748742 208779450 439169962 190053148 999271539 612161125 702995172 624634974 681953353 758213020 777630802 71700316 759782729 665146871 254374058 34892224 767694429 529683060 675297871 103822619 869824668 222726774 622544450 210199525 786945598 165419725 557096249 794669184 987466153 431670955 631911559 130129460 36361830 796757679 348125485 296036918 864238634 984015327 496905937 579500189 854066640 949947049 394472644 403332456 473169499 968384478 431465213 312919941 117350388 585967550 660591385 787899329 460951281 445546736 574614880 186848727 919634125 958394239 112503236 800580967 413295912 912574945 400220376 123311357 303383763 229950451 84961505 808026887 618507452 803499513 206587073 728808160 611832578 612249506 331838728 320610251 986491878 671957250 302858991 258362862 783300821 429402520 82071892 415733596 162487136 619813193 368626625 709090062 566173764 708551008 317521761 530734565 22765155 746264469 535291919 455174571 788181960 448491778 63272774 701914639 798571691 154826544 188020019 972960173 723785825 181503243 941643167 493846788 855536751 324962279 204995334 340763518 853513089 393856640 206798212 596068974 409198187 526810113 731876837 404660748 789154598 688243440 591689360 158012024 598873561 858237510 602635943 255698622 894888394 619365987 595164894 984575437 603325041 262101510 205722279 303892863 741525094 591854946 149872393 48813458 949317745 349439752 676895166 276552887 685411958 459723513 101204519 25041782 807982734 650696087 981444681 160298832 413251570 731492014 844610516 331078562 996806151 8886905 511605025 169938105 132462423 749945489 133308970 287413953 557821586 187279612 692944796 743366359 932900761 586388262 393262532 193558520 823521388 352500457 590062491 724338709 154988598 219666301 588112826 814885623 421960783 974371978 106913136 857567580 876452650 33282332 672337320 476107749 683691889 52019880 573262332 636601368 305053933 117408780 576261033 832586091 770870671 221725326 954629783 721443892 743646838 621244125 600278610 973880501 109016291 505081352 3888406 111861273 426203459 778972304 430929090 102808428 590621735 97161052 904655835 546746031 228904781 80179895 653516945 904461757 885485204 582354775 353392059 314597728 255799052 493301081 38073816 228389453 306223591 333773121 784333840 515223576 990003581 574808831 756890420 842907208 34155093 975815397 464259257 627755331 667400217 724310195 720922044 155525976 602890906 931260556 339844105 518290887 174287064 521930753 299625739 692300714 267429874 743923971 658951900 201947919 354544182 140911346 593807676 114023396 8127510 999590800 199880846 427247876 674062638 46836751 641405159 525023025 364941632 298624001 460058363 718893589 223861561 772800101 699555624 722954556 257842217 439482524 232391799 422500133 338016846 918307193 675591064 569229871 778441740 259284527 129873889 180710307 192552684 591490906 300426833 387020466 406094499 482921473 379972240 893735799 430686731 175205007 447482861 375452657 454002726 236853212 239406177 573554443 143190819 710644771 738715014 550684567 898741074 823111178 176996265 131866954 41037361 683898273 352150710 699380170 403875169 216832857 938081094 496867741 382652845 141186832 502118809 347562807 809815560 253756175 20787858 426770926 746894992 1313532 318011591 393931529 695374728 831178996 440893286 289153193 737732184 883418737 449587545 361884390 732397718 666696536 20862494 172279990 545160956 983811319 988198121 959032571 40031855 400739584 428377489 26855807 79213302 846293653 890354579 623414770 611944650 39117624 200293657 876176622 508198722 912925659 220294640 305891573 690967010 114000332 145154706 942331758 668873561 892452812 924985627 843104173 644177012 8420099 53104213 862887912 216721203 187943930 800773805 936731714 335530934 137278374 726199101 243717575 372125516 151854185 189147328 616738149 164866917 991335684 165108897 945688309 666328732 176499621 269930479 983184440 213942713 495107298 357247070 340599256 60237475 207752888 508690257 724708457 546590573 243529101 982024398 289919840 134667091 248166189 680105605 761680931 306382778 985737164 459844299 817494772 425952555 506084618 877349791 159664652 223300698 478508781 268003754 296047744 447808290 649389278 815107903 597569875 728008072 899077303 300469582 490436715 373763254 732716976 836816507 105330077 114740735 505351540 35025419 204303264 642304990 610859789 315812076 175271191 156270839 333462513 997323451 989322634 341216533 618073850 280078512 898733674 289258026 75035508 990987960 187704850 710143829 154281990 629705825 651574466 630078420 770116555 236504031 516756386 679904278 617124152 836115220 74035655 745048237 128538938 196211848 6647591 995444053 974926877 554189416 877995427 424320495 168111250 539490700 141694980 868418953 854062779 594397300 131571968 757285716 589184794 124167753 124757547 820785583 589414302 299199956 650499336 577647897 197405850 449473685 516971008 846134079 571454415 887080866 585550183 859542516 769759072 395791560 154343538 464908853 344147162 365633911 989954628 33451811 701933619 916702147 423843559 316642569 413803209 669204844 881569357 248262747 374201950 769520858 860404554 223313589 83976739 282982428 204694183 683253720 701796266 486424554 44161543 85541556 511171573 442313891 729596670 987219031 362344548 796767565 167634948 834054399 645368775 959682199 59122044 407134991 354020179 71812059 781157553 445315603 987159460 760670741 874376398 792917946 777994688 779188462 108049905 175693028 428903958 610030519 920598043 632737939 202374009 641827941 603533362 345407218 772514344 48923285 87601418 245186132 465998419 45829267 126209119 361460789 432290146 294166603 783058893 291446839 506252400 415752276 369680351 176994084 910266319 223519473 113023750 348509172 861291970 908993286 436527261 788903103 510677497 41529634 2569701 337091529 30339718 767795326 558587140 937138810 721515240 705679355 23121934 911428204 95692039 770039579 552638975 838256724 750684714 597308176 765006771 987543321 252340749 211999666 7644917 76935365 252397000 834425470 252434806 491822473 508679907 347109793 763945936 522945733 413390920 427891939 275595908 611411960 797044563 377754301 292824828 424403919 654355130 857064787 257585291 917115678 245727655 217590628 893910373 460435934 443280547 50716009 35533230 835953205 745835175 672720498 58162801 35754349 53461519 785795905 587623067 844585720 629128608 957073212 79958538 914825077 513015177 628245363 356855420 359442336 728443996 827564958 236775580 62033261 395218969 701338396 70337787 177121514 168644387 732515314 401851665 668034898 726661960 650130386 41833025 949494284 859672256 380627220 961212626 640543137 767600420 886536116 886471929 585360578 692156540 57734234 881480138 546999119 167273014 410072407 776068682 69647175 640700453 210087840 43526754 884223446 225889159 812797400 143743458 445082193 713277950 297801539 423628677 885781810 503948959 345801937 115146728 315853087 163284184 218191385 537557658 795149791 672752522 808004184 176974602 108164966 881042937 414983548 404437393 403570387 232020178 278320910 980130414 789756261 88742699 413670726 971588303 155490696 215128450 918920710 485723072 589687250 556865210 260500948 754617151 341186045 183058211 367527136 191589161 211701227 851506030 846739966 578861131 983731366 756214717 193510834 131671891 453024612 280416914 821636383 799165405 869750912 899975645 594075927 911726440 534236799 237314544 968514830 362035296 516113159 126297741 505793577 252877077 554294254 16325586 342148138 248584895 508713520 668808020 192070786 281693310 496307441 912717058 766448457 223019104 708150905 419796031 944325181 875093075 644021055 257540811 159685061 332030768 937422554 727471575 484123634 93532090 878010642 482864372 365483899 471488923 495462094 708462373 353004221 2636895 801037092 610919883 685331136 58747012 215311951 861492148 708533303 538926701 842772146 208378391 688757877 283066205 565636055 538334094 350262906 416395400 569959794 399502115 430300142 931729930 184400990 124608319 349487649 468925923 965024161 243253431 241120519 978497785 185001312 591959500 778092098 768559649 600053238 913582881 455283227 249186067 533815513 388662467 258075775 109174638 462793133 738815784 610543619 833391040 342388030 855087148 874361066 178407030 232040065 195221015 786844184 490328299 171028365 558860948 486669856 644081760 270671528 679061432 828122679 717990143 813995839 342395650 214859069 811148505 314811105 654427733 55159481 707182310 310585933 234482944 35508697 699700233 290585699 625115832 180507253 498590729 231945520 547957402 973704204 109692056 46638824 652955178 242523846 849750099 937956582 887340633 482594931 680480694 630565549 775868537 709206409 175604780 392385255 354088774 506019368 751274247 379800679 500663272 517633303 111359616 618725674 699583213 141954757 500042936 883617621 413185350 872761416 729036985 742011951 636933462 715393120 953271154 790481709 473713116 434930806 422504640 474155242 871050508 729171865 215260768 273208362 21259126 536942462 114576638 2956504 915228952 60282246 254718253 238172937 471635035 869916089 776851040 93799411 111752966 425741763 389114879 88897278 597380436 622581759 930949711 468377268 940178145 645572712 969709443 753683914 434662831 364707241 217340084 894120472 794582829 717935120 153425634 48832419 951396146 218772628 177634296 9163669 799708923 395399127 84253641 616791362 697654314 86049565 442337545 819088166 967790033 334107989 996804700 572807141 383720288 200061974 480753485 893291334 460382648 246619810 414945099 517989699 925296159 598503646 122206894 185168113 343125822 381649498 451318714 482272148 105535532 427738447 64656281 524157340 412737899 137352603 81549146 825735064 325557720 642070467 716311287 391063365 760799175 715818487 290125905 438302853 592568298 286057232 185650736 751445604 780158559 315652495 712606534 225530388 512831914 876864150 369215790 506384882 730755004 452216056 266211691 581463683 723230950 65008170 215908960 699944815 615880936 302193999 682655331 62589064 547783655 448101930 971680938 972459725 622483821 951268398 256655962 504349534 562551154 936217455 27730808 485445771 152805716 912236461 423246843 789104834 622985433 969496401 455737527 703600033 17631528 471777385 599073391 559816938 959170526 612711851 728493261 294948235 957025780 223817078 588371808 862577811 187357393 332102870 684468388 950696512 522233665 674646134 570250490 381388021 314449530 755459502 175313834 673283645 101674264 835423103 667945444 642418122 559738914 732386189 100766660 831620216 867392004 978554153 216974666 306065228 429751188 284931658 19381600 914963056 300490000 327201426 361073878 791832632 936075549 453440069 777643367 679413788 99561413 246937424 603207345 683606468 854019457 304760913 305831233 814309368 24664619 123113858 264473991 255873452 856498701 182100428 416418521 624899323 986089166 869888958 444713085 975857194 228732555 862017679 403214491 850076322 114227387 776900895 442767682 157847542 892176708 328370421 528666479 56440549 450999671 536215358 962087934 863047247 824626948 632357846 457501374 205045310 584481549 839747640 71332188 42579177 372068117 204326542 434026612 83038120 800015880 737825957 863934086 80779777 212601662 830415093 913231099 424079004 889939827 879385503 112893221 613255760 606606283 600338791 745505084 267456278 402729174 738332350 381502307 981687059 362614662 162906813 954195106 156311950 867804733 582577696 715973610 700296705 173612475 866171475 605251863 311468289 480680495 640982111 79767524 921169235 898735153 186853887 629555971 244462309 972016568 599862417 997785343 416168900 779468081 625268765 371677520 661319988 530684517 421783122 658832735 206006418 147951496 727351686 793706348 848840810 741516858 91615164 737884079 498274163 584430206 606181784 878063423 533855107 496988613 432327018 869178139 585643167 486191073 931001896 602908977 599144436 916155918 617817204 966986572 553360084 829946356 244873109 725533741 44502458 789908129 946131063 398275694 338597707 801332104 893164213 745574300 510349137 300197255 136732555 246279464 459526079 535110114 267357408 177646957 446513583 449186121 818489929 783683241 321534054 198313166 594269174 710449156 907424335 139673330 941476300 422787731 482083838 419800729 760921679 42034767 289584312 665436173 425530799 154673430 912945086 102645255 384075459 78004148 601652416 679729824 594912266 723646682 636503908 930989669 106064557 724632097 38891526 718682428 598935931 290790667 996939046 932621181 547453926 158256126 667479156 466904805 104940822 166414672 641349059 923872153 457267405 323056182 502914056 652796710 969410680 499017684 575289455 459488642 268723765 873835058 732529469 277613067 818830780 312539971 826070759 195231876 614166906 282791900 868419846 904865820 156426620 757543109 700111715 480785512 747692667 689112480 955519717 833741924 282205395 119609858 243715232 34030968 774184330 19872869 959440592 636079214 165401942 951398697 629524951 617043071 972446088 162388374 108157249 425862723 205512995 271433953 12990656 273532611 370044876 78368030 209720627 273969260 972819666 819139668 300040601 532230675 25017903 526063975 504955425 221125108 951596928 357750573 129466137 219407031 502555916 263401818 669379585 482911847 238680773 966055829 98489467 542677880 994370366 821470307 517278545 820429771 372996795 849329205 994525049 308864929 369320990 299941990 801900298 3966122 133354491 844848186 209759818 591611133 721741702 857712599 115171492 758480914 824786336 272509261 444814253 579847635 696116176 936551319 449606684 828696458 777144134 476236692 818744536 908641521 460939737 218701587 254979563 635181855 58599684 61292480 315327880 267134364 325108469 253981750 995632394 867532119 60597622 285538551 142747126 122232739 86579968 702210922 539661557 849134910 557654452 316648674 687994074 328123214 425446489 942740377 612688291 992160351 58570586 617150894 951982449 406933350 341673938 996915754 122020752 271008451 256419459 395243523 512102772 709564727 181618380 277790989 42183607 114190067 996752836 639151370 468294426 305634953 704928031 993652900 796276111 602473976 829934139 504445039 177471267 41400233 123144995 990812128 797908756 11763040 206949760 532038748 981277380 331410269 641717168 463317033 590748353 550255413 607006641 695949179 976195512 250534641 461722662 404537193 749090701 312052732 691179365 939823860 877527613 172961838 254848604 166782982 204210931 689999043 966585269 487870067 77835015 293189984 623484591 953931505 522125039 719141651 540731451 544354336 951357778 461504848 449780722 764743055 160263674 164218613 932880146 412655785 671581400 798155590 391584133 203898314 578154252 712335604 612454615 231952692 69276630 275053328 583634238 960738319 75082146 517165083 337123998 666262381 597759749 506806519 230071677 890720071 127398325 746278899 255824903 753838972 472657306 374971842 810116372 287985883 252974527 8283781 418204455 241723919 745285973 23271613 167766372 749589684 455996600 291169882 162562203 558876234 385969261 226006962 66667586 774799679 959022620 929690752 707637628 522831837 884230042 215526634 937498637 407166306 284534244 508570241 427047268 179465455 715440668 813087027 90146203 183629964 693281420 811414625 45776494 155227691 866320296 450294224 932120647 250015395 316146956 333148336 431574835 919305401 657394812 909864082 473988587 253987858 126649056 715010678 499408588 295026757 924916047 596360638 984383200 57699780 338729473 652183357 891193044 486291703 332514138 101847587 311590403 906191140 839463143 109429004 295222119 824556412 805088344 264852228 160638123 13669912 202173069 452050037 492295453 4721405 550049415 524615217 906151602 693016335 845284462 209169017 650410766 468931875 258629275 151440881 138285687 516069103 244265605 357699751 74638553 365513750 451226065 426792719 769381580 31415586 904469323 733781769 70501523 946374788 162186722 245845719 834156307 151204759 891106744 536249895 442375897 733690774 269307146 302618382 24430878 600799409 9781065 487622411 535283397 950966519 438393858 433155 978500943 56869214 751374836 937217345 470245870 333621964 469647874 565740669 972928122 212509449 859735096 335611601 170034800 668349893 70441673 851493831 641316860 672497560 403628300 39690822 1456872 42602759 717733002 160489385 246112685 47165304 99055596 282782890 736449131 324286529 292673029 582126193 708532712 286227861 619331790 116903816 485168278 662337433 285683312 562511590 672968585 207433044 583017011 605163752 820092291 346265019 270509446 43822165 7679464 5836962 450635533 375635287 651815369 348569039 688659844 389394051 741491934 386145256 938579674 94367707 63504004 377208193 708127520 377996735 672094406 824290320 561072532 5000702 264554833 216932090 455113111 359361232 685343354 188843654 962277813 816925135 437493829 465052391 65085089 694397697 117572438 894921522 581564470 818660307 316845052 199455852 873870968 459819549 572812081 112168063 653902483 556171543 833816978 330371385 631407065 251935338 144495207 544500052 851288770 935072548 441714334 836281716 869933561 203118263 86555089 637947678 875703618 635081730 474535738 720732104 202583188 125280332 945331911 40674249 840066314 707376705 1260037 517750625 557620711 446406387 950696743 783419322 196032406 79111394 543344657 426653670 9802408 954778356 367160137 166592478 788678877 463249783 641245438 951265667 255051285 614493470 698002951 455260575 293463386 731843591 598668004 280094947 32304101 148994231 545625275 686704870 284117003 587783450 936880220 110776109 363994705 74966408 89553726 788545052 403413602 394855357 417478275 686777866 565853205 904225246 590300654 175301166 891851361 960193400 189149425 806926249 190409835 464604802 380959136 764968068 490047615 203037785 907435455 800263856 509857037 187363519 236208048 701315849 21633459 746486499 36940680 173992013 211252789 808664668 379653627 170594855 446854524 979834406 650704742 690258471 315884188 660131750 708532437 416364229 55177169 500771241 117291252 736193127 263896445 266635623 431312156 515317329 443388716 164457848 461868108 391903161 239621776 221992677 935561770 252455602 230139528 101881370 670975494 490559813 618997779 371380206 137979862 861917782 824339806 560594588 46944572 770313398 706476732 562834637 181803646 730807331 502446505 545513608 339929996 256400440 805145544 100842054 194230522 134122372 118615010 139105254 867185930 386608245 321390830 753434026 338738340 459458149 352050438 587628865 526179927 886442643 761047148 477162176 972226903 929334061 821909130 935823778 700291718 185562175 70627577 477805009 760503659 152935111 314509933 408173719 832023860 331848098 677469134 116206504 668901308 886908572 597810982 752067619 347922046 570362217 841173160 510308751 492993954 480187035 853129135 706074838 205437689 298302649 905156543 33903438 252365048 479418665 631098755 972222390 355178947 104055102 6467022 216714548 178320411 266216241 540828828 838654546 604803186 917773603 723337231 255374855 74992094 663198237 421010803 239502511 220173602 801182481 541867066 770338065 343647650 210976728 301166339 950002520 127847022 959240754 555382412 989401117 711747390 952762061 309376708 337039194 597486448 455284274 812329406 10954101 456120589 149103073 587298484 32302141 531249601 517261624 825668362 195614178 823153125 937527428 870839626 533380104 93254523 73871344 721116712 518693554 211186468 63127197 582704001 266561354 105659703 547147140 810465109 127090090 622200996 348940949 766804179 422526730 894132752 764469663 674438984 511471380 135652542 111743320 440503097 320399061 76409760 381427815 641633087 325921726 715715662 441252432 688308524 178407088 934893573 384696456 889934576 738014960 496792235 84073831 199861160 509145386 675960784 359277869 245869208 113948277 152887215 53474053 368857641 149892427 292777509 33808896 155320047 233050772 443608502 690001431 283609765 578359965 229553813 538771243 486200623 76959769 486040472 255234052 659954584 888324904 771556160 978135893 65560340 607699023 77218995 764008121 448780797 829019515 468499647 172282285 925365972 992844030 916294362 838621853 528975178 444524696 806087720 69056473 908152623 794623088 231866479 776285339 248180607 190723090 984091931 904979973 464844635 655917939 116707911 213171230 294471950 262763502 853945775 862983384 77257489 975024458 442360764 187173647 18067195 591490231 994749565 695177601 519295117 952043462 126140586 342654424 954652854 797697399 485354656 57387430 196195976 763334957 706498922 270667108 124695617 415044023 442689460 19709812 497795134 659983945 662402263 304047390 987736080 383590786 147330512 555286419 658214761 952455782 571609673 587202285 284724514 124257635 267023247 289558317 747300929 558122828 524193178 340898620 850126572 403145826 798734861 85896173 157027711 514919239 536720680 890247927 522304879 358937611 824740575 449850876 781469278 270360350 26368969 433077124 950719260 721911397 397628453 887025156 643776155 489071647 317570264 288414930 702598901 994562556 438676596 563276081 619223660 553827345 259773486 765851463 999436911 228252635 984152296 389847848 813373071 387526463 230184488 293608910 28580741 723911051 292198172 325348888 672905273 392405107 164125598 255306195 764379314 252935447 610571050 119064747 461357350 729872631 344795113 683273532 999788273 857841924 582005162 451625480 773281684 2379924 532153061 685653622 372263866 410946149 276908984 850976218 975480376 61501847 636931306 699143788 269853961 470869178 517743340 721383500 803505228 304015559 778578645 297534598 327776085 375027733 608307043 799810568 579960207 294635886 602990079 401752750 656575385 644497660 348648885 398833209 941133878 935596887 573725246 464908111 125651281 1273979 403292410 993563268 612926716 904249037 561794545 978496336 981474932 807081496 558816977 814250265 420848925 554409622 963925999 11836960 922441599 593422818 367860558 676315805 279374416 598059010 296763285 369245095 773225322 899070563 426914064 469369919 753366738 57117910 572573880 574447692 599706033 226633888 506574638 715945892 866334555 499750240 288551352 15458045 807827532 617591335 16961860 104758009 832936230 291048038 741992813 106593570 429856693 579979521 880233836 795183337 820406765 909581623 978003756 646320292 315597031 75463094 942743103 531564699 294935016 951217558 113024726 91690992 340410717 945911635 223641814 455301561 20275157 433621459 145012419 409541102 761567502 626026850 942867660 433405553 941033194 710073524 35746250 279436296 458198646 66003946 716936253 282893160 962798307 252300681 733776200 466429482 505710735 947528569 398517183 546660813 852521979 474498580 809891095 710480059 382758610 433231126 557653617 837814599 23579368 621675172 751787920 694170790 916069690 412932173 694101479 344484350 842695401 952079363 295122316 850778455 28010049 651606820 867111486 245746848 156541876 234721144 632412774 284772533 567803104 695185963 481078802 164620887 528106886 156623056 79524859 469507372 506775187 451265639 376788604 795260105 903319830 955157589 442772126 702495653 911980880 998694245 680484626 379653155 316412323 43067085 860405041 143934859 787550102 401165612 948228084 322124046 380373729 296471943 968647432 596969158 235499100 542192715 602519480 421122743 306012428 432337483 342908414 455754692 319695644 576720838 316142458 254334146 655135968 451567459 401204849 422828907 791259603 11617066 122407122 53063518 601487252 331947927 718833463 539880230 121466614 359220866 271277532 161198387 200536295 852480564 20357035 599836385 689786754 964889177 157431600 353565548 327822092 40078595 346589095 180094210 989216498 82613684 247234538 384905139 116370627 607319631 750543749 214715511 593219902 309125152 315611045 345004592 535881026 507703006 967396896 7999655 985320673 287530920 200320630 294881166 92525127 628179969 605232336 605132158 197856467 959069908 24532221 69854456 520123401 855983483 806849905 490722662 10236560 643694769 219070030 245042200 287548736 167737240 471492700 547769161 559472661 167813316 709192201 66893080 784433965 388823335 300081770 840272527 352908756 473541917 8577603 116093601 777362307 123370346 374114041 634055461 508455630 937191489 503340443 822673884 276478078 570006065 580900831 191009139 644647549 359432506 956885285 175109751 713220827 842466243 140048245 762484835 188236500 293627287 651864190 255501974 177667022 952520427 389326488 501710174 661810261 602122590 250024898 884152552 204693273 217673459 10938019 41872464 821227509 579153176 505151880 679369879 557608175 233378725 939260780 641392547 659723568 899626964 695643373 277989704 876631565 925724490 478764368 43171905 349788161 912497433 818535305 176086828 619429293 601396399 44543275 53890450 580396767 337737967 432603508 168573158 878784392 244529947 735179345 638199170 663546567 974764001 671710541 285574055 202464729 92622425 647457950 245561978 957169455 695212797 547111977 15020818 568512859 879161523 520814705 498453862 702637079 990514631 967735717 189944662 63835461 553630960 913260188 247642030 543757811 685815373 479306712 986122012 210746707 46770273 191148161 784957757 368451520 477536024 632460641 273876365 238409151 655527627 429444083 165945978 830916856 146250547 782588247 637131860 523111747 582093431 744279376 840740434 857177494 483344933 996405586 163705753 826953494 448301619 29507442 515425328 610201106 853316090 175092081 146978312 525733624 729150276 270120882 427168250 451924327 416885052 577585737 450452171 383314206 49708923 559663595 438991390 189119757 903107831 622092535 709365643 674278980 206936347 104539764 180178822 651157760 517241520 318270226 68419698 320608165 98321648 535160363 402666904 907687354 572712055 964844728 157690923 324786424 16420937 380462695 537705536 181201462 630462161 983452803 652077022 634143353 83798761 415071491 756930027 278368236 592082635 435752840 452521273 93995746 517643037 148364378 134392190 25009367 420313580 570940262 230066273 505661293 484737454 277414724 221490278 271297391 119563840 720863797 859913219 851840466 183607785 180267807 990197390 570338992 8535635 514376335 160824649 140840526 868098965 225983422 267620956 397089813 536775980 812283791 236664797 969176984 365197052 578111363 209352895 987554198 259376727 999424716 188076518 724344047 146915562 472002883 972568861 645365165 897706971 512474211 733149715 385696774 775057064 636599383 425010016 81078614 794000965 639608559 904869771 722606877 656741376 862189724 224649718 110281736 666597020 822748548 295447542 896923883 637474108 663175276 571358149 59292609 155645038 817317829 465250178 114373291 61122854 639319201 338394168 636591863 349263299 341612484 493439704 7098390 394897159 798181010 769320251 897697956 608243491 755023902 211836193 762878823 96550570 230092319 126708020 361814599 276412314 76987375 907192838 864339800 992732250 46436250 38038802 650301397 178307253 259812558 165067188 462372130 837906655 136856035 763022394 673932235 776048761 11854550 84567252 230239361 745771909 54706770 603544730 426031902 61797745 948965027 246708366 217010602 690152467 660803776 378856091 341476686 342991016 307953996 540368014 591984479 830561494 894497162 778919716 862022228 441185705 301613164 274300159 905422035 391566999 387015561 858420645 558696104 910934652 226752541 948907142 959986117 149941918 649210387 614247424 469794116 368019373 845529337 278911571 656108138 4785850 696261383 179730598 414395811 817349188 688466459 272667148 585105281 864818480 735146172 438095999 474407871 298811341 354110237 958714335 847748160 407784141 339017742 214853362 839567888 120081999 856877589 567630960 444848227 466275545 548398167 728247279 930555794 34197591 529195938 100022511 263548453 174574878 217003886 34838488 138714048 731199726 754193629 389075713 276133948 75262442 466888627 52939167 861302418 227949470 251766111 295946453 948819943 622339074 906707448 472478377 660068994 432569968 238226753 591735056 691579613 262774962 44509084 134372064 621316236 777725936 598107423 886809310 69845847 540494274 120718971 654040755 837396521 818908967 663166481 961508844 825520659 250363777 695078633 839010566 454817616 657911198 947164594 362096736 301246023 799109813 269906885 894624580 692498560 846296928 930671645 592241895 909555120 754655401 424690279 521232730 919167153 504650489 980242925 354719910 141090951 832954663 686241447 282851762 41921883 971634543 816265783 162452813 155776898 139010166 634771682 626399539 339251323 301308495 131632795 431912707 532466659 738544487 232656882 852465993 467763848 493176225 723791660 819439219 236908382 384811327 894318896 765114333 548737150 246041583 675163276 756489413 409776687 859082183 725430903 800880472 417804249 981911621 617177041 58887960 680006927 622413644 443843614 665725095 838980751 262763562 287016595 229300029 946497337 567194262 25012997 602269491 708223259 436443052 968419569 177252406 531709031 381069043 976130174 990006499 282170488 628835154 209207679 107043771 805997778 508447270 96025705 594862629 527083553 428057129 463779676 735591285 938822965 536204414 967062303 376010720 740592141 791779766 395793439 664101261 988372168 503939782 159955831 584174464 147147961 128423944 999452645 109013169 580468554 699403844 651685070 105751281 974743322 859518886 19625797 83578373 818916592 769956548 82478847 3902616 991843506 527209882 427648859 426283833 306901108 633229968 619977311 317617507 910900084 209456496 636122046 923825781 439227157 640042610 86331341 358221497 362008542 393738034 899439244 422088800 278294662 490814388 953305248 225686660 824650984 994016104 110731869 597262375 685202184 144634401 39592117 93976880 780359183 879916829 35449419 138070389 900143953 425849856 290885218 552029097 139137864 792140251 859633647 691909232 375162011 957543455 956270215 113127252 703277840 180527531 171787108 56159175 337840801 912872388 254396534 367825950 779525731 326299417 402772806 166647457 833004443 495583421 614571023 244768371 426967222 43000621 226835629 315088039 72241222 326478670 85788587 745564982 604346374 309162354 426299699 536804356 604570074 276245065 606853153 152196569 649600205 711477747 201851122 683674981 489661458 686975219 200033998 50245184 263528965 944823095 422459013 426994670 588912425 10649365 89047435 252007641 210646823 996635211 959875842 270487887 692733910 440791805 881786034 356208778 689212974 305392313 924469769 132365742 639050581 362488689 937665823 732596931 135496596 375752839 242565552 712230838 539736929 391376319 589345320 63677801 485340242 409459781 812387986 35490964 942502961 100583340 450504106 64937700 584885220 894070009 575117770 599492590 402215553 550374793 760494590 29895207 365232704 479307309 12651763 285076975 598043531 980690969 463085054 101153938 664287207 490151403 844518435 923300163 451449607 886770345 654671108 455879191 167374795 762300096 17675253 538189073 503696179 981767428 276917482 277632281 283956075 719737779 81325957 93784835 251372740 303944051 140211213 57585798 548279999 663934030 31095917 55906630 260195066 675520703 769399617 142593481 809640513 751738014 931962054 983202434 33094538 819318835 254597605 164403402 869722860 561315115 729100586 88442339 795748527 927202712 197159374 749856242 645218362 69104893 582811826 492327694 226433829 990000955 972226396 520271406 763942438 28061601 523887867 918315572 758884389 246438882 327418726 487639783 486389544 157779742 511285276 265607160 289215846 928743642 293822277 832261637 542510651 142440450 678192817 721784715 385564966 556661229 63075540 984792052 514437334 127353685 261785042 227047057 166607390 468617570 912149615 64847772 231957753 385908385 810481434 887025464 662827912 942066181 579578605 498133099 371627801 17298927 689784485 948535847 187683101 968330529 964388264 968256070 417798706 273299403 588970251 762828938 873305880 236529791 822965374 297370 778078652 69293373 716192613 52796938 181077042 253852774 964564933 781532499 921412020 986144206 487590735 208721107 752946599 710551974 233144406 747803860 427697301 695040397 962907360 328271755 751919 93475719 365620112 184754191 353722196 804264190 36290231 973616992 293833989 244319694 373086024 79307625 589203822 845235505 912831465 684588027 136173539 435262157 284342236 110520781 485433565 404579245 920269842 170244482 450658048 466244423 944163876 336115367 61187611 218984057 970926927 816945831 655162394 853104776 808622968 977195996 755628065 684042787 915221557 959280268 758633325 234787934 120482742 868277213 938040936 465187764 356481504 696025824 42243498 771477262 814380343 144530831 28955374 851705527 183109099 828461002 896355348 641671013 654971090 219294813 695900203 796241204 90458734 346824694 369673315 147952811 23140325 112498738 838874903 318166455 329520132 754806927 493617869 894965418 795329095 479520631 710061359 182744390 861023689 86011197 159994894 829861295 725054546 170583318 588154475 616156528 324131156 249607209 398787429 640103041 907238628 324105851 993337668 980375615 126982848 296481279 615296130 832118891 740451155 797541263 682524857 766571062 422865065 242752489 623530409 81553207 881202554 247640249 305639487 57677928 987933221 419425167 288837006 41811758 330357683 10823399 713207249 51674200 293936849 927620380 109497709 750287133 595571928 419725183 335289834 945940502 618925254 495293244 406915839 438137419 405809218 87769713 240859013 192462886 803929247 139796761 358606975 274993282 550941647 12974625 427882008 382076310 949065077 952750681 981679782 992159244 179659732 433519994 225239459 298966512 778447584 85863720 116366001 978949047 795180847 699707371 633019547 58952509 869717247 821775923 268662868 763469510 836655414 146060121 357018107 807728133 901272678 640750751 739811793 677700875 546150854 539376174 12937023 102229332 5983284 242949657 425333722 692615882 372751160 104023383 718628447 335939254 371185154 572686026 617603503 994763983 794759272 24762940 51208148 207780913 160611304 205068124 477332231 703140962 494865580 151767750 62840988 403139155 316110467 782040314 805300763 997747538 520110561 344179554 255819310 95909921 80172776 326424399 352810408 883224548 261738081 776731384 561087108 498596138 623272630 345141379 952029926 171742949 321284354 396269300 787015194 874952564 744463876 883727679 887937425 465332127 479713060 178763068 116162537 724917644 567070574 529804462 493550049 595295192 90238623 560421438 4124521 581322877 453980175 786161789 765828752 515802591 906790856 465967331 802131606 169406925 66858364 163591377 606137051 571479675 705450881 266213523 183888360 820866951 336949205 719641175 8423542 355814134 705487646 304551224 878536286 52255287 856039854 34925112 334364065 439235869 622079100 654104385 11038060 936119013 580895783 508578846 175840533 144881975 356810741 436101521 614244112 959557405 945429719 336634422 34370568 288148494 716606051 653090199 138834370 990794982 482130902 974451495 413030454 332188911 205107485 879059770 601247871 125534926 758694851 493941785 768094685 53555614 527023103 94497001 119941309 308188636 314938803 974837944 886345136 509681773 226920805 615563142 442699895 297901468 546999107 274115376 543564016 950157856 956254757 740167299 689559081 850906135 123241611 755135018 247272275 629544452 19414941 782613956 646825673 804304341 301884454 649340624 156336402 779485664 500664738 175951798 768704983 541354978 303961393 835697867 835900137 296837123 27334293 173883715 306912071 731590090 983506752 682171459 235850258 366759728 364269387 71837140 290070935 676093845 35419250 539144679 312575559 933868217 200064286 226532180 960948670 564343754 666211167 123799261 694980033 47578721 579162602 266089516 521983290 208283512 635124513 822002384 638189372 982694007 70457864 476554567 468777987 576513574 604459857 597722605 103090670 326176704 613633107 163932685 676219024 335231968 859891723 889347288 721001878 577436043 608439331 207808106 785362910 5896494 721680873 890349761 62156909 167417246 825937746 146136263 185642856 465647387 530700803 340619598 676317993 224249417 272202814 804550159 283020070 137477427 968254965 621793962 897484038 783944270 33627581 287000491 673991572 189135738 617166295 991217024 69376960 262996220 819125034 293755782 782101416 261245568 588691524 4638459 540400529 757583389 792075359 321485320 222452450 286219597 535283287 124608194 121792305 894253048 757476791 526444063 8012086 918453099 832813994 216103168 297411033 733340507 265785865 37453104 43965731 453702372 107865173 397011553 782476614 279359372 18241202 713940776 273070494 882883649 956424435 566494732 497659313 479902297 928524684 161076850 112658468 505958031 876838047 458255276 639837650 698443785 442461937 677226997 266255537 232618322 858433779 734538093 459243238 800781157 10223544 31351068 859339707 162024090 777853447 492437494 170551461 444615611 876788031 944755155 736058431 110384368 433837685 122578547 617024842 285642963 398439263 376665729 370772405 933467996 117317977 820330127 138130830 762309364 328569966 733295123 82389526 732295016 158230605 989104239 801473708 487150831 626477387 726839790 80135135 624282913 320032104 680130754 300069982 531719687 999750479 94809602 843364360 779660559 204932936 547496112 826973918 930728458 871090769 574391991 987486733 169903674 552879366 765333988 572421348 310700353 884650158 100002549 766670309 380853295 131769914 704405641 296203695 272679543 192260414 515946536 542252045 71063798 596705535 199147845 882537203 472030451 709952862 795019833 39147389 397915931 693060078 595303236 695015660 304164480 30823143 953081746 484738991 107407781 784042532 58159667 388718280 21380972 693770288 525673247 230491807 160393250 893768505 310775864 394865770 639240829 476089367 466564167 501545156 903254169 774069575 195741694 604392162 492572924 305243634 5227255 316845853 595523477 15226601 212661937 74397687 709153462 493596062 176392085 259098908 976196640 7454519 147401206 616194146 495535093 192150389 899802894 711971523 525129669 999270349 359595006 759014753 675671936 862597713 536877772 491211400 544465035 214452930 452474734 984813227 907387044 692606857 285999290 886904676 649319166 394230453 69255539 458589307 14666538 14327547 639071038 44772564 187675176 404055226 665777075 142893449 511013724 87872764 738486086 1092818 677920148 262213233 38022746 105597714 908152324 296811628 485167162 827589589 721943883 257979374 752455701 367852751 823636076 837266593 975264261 624582361 374671831 17009617 789604872 708440825 26048605 304021366 531909391 198862680 249854528 912320817 17031653 872986186 353910307 540007238 520100418 512978763 574420498 818367398 351106510 608132607 926612103 810560746 455134989 657692973 628757848 467635022 545187952 400303053 506939600 136476093 107285844 887421432 739155101 453687491 956813560 676914160 215361743 18963863 855828868 545199396 427585255 484762395 436166924 830253863 621691590 584233683 932737671 45729455 529225153 527811568 579274967 242421925 184984454 454703691 565134790 164284687 595458359 270225248 170988293 951528484 675291220 146132827 191282987 292667712 143594448 587337733 50923197 905228772 693087998 933689816 677866272 16326333 831818907 403789557 223518122 967220893 934712266 526213155 249051792 302925181 651176221 864914892 209161718 977736069 828571525 316944655 473298150 232583677 889513313 480727207 999278159 612419673 962920310 266991611 501305864 34297140 397602804 541623835 284839897 808288082 438916460 754209982 715882596 969774239 768304605 525271365 986979903 675540268 617603501 5346738 963554530 501720630 428415654 562172348 181990830 230093598 763656962 663166901 397916396 196185716 440311389 714288541 51017423 225361126 396204217 90453020 202543724 552868435 638763909 871773570 992806090 400951482 81526424 559449796 332450254 799920970 856976687 966188677 478067019 69195606 11885292 787048967 128299513 403942233 561709281 608640572 23583354 356830708 822634623 45627580 223413336 5100278 447561892 660182727 706729221 363871822 427263640 534005827 523709143 29406490 858938629 273185469 854416915 862512798 491238146 722930798 541678047 243102019 60076814 488900407 729586508 224639389 49788426 307987356 798258262 946157927 13791303 914861520 141831902 369316485 247586424 285510312 356808108 660134914 684183226 472719524 809527154 881886481 780776340 369897195 480192968 827184143 724919541 778428491 474124337 764303227 309398829 366259771 232056597 351334149 122116092 595848669 304776388 766493820 282443656 438229750 489633914 9564894 300955484 382713590 259205976 775210320 82594672 268696055 896952679 734164138 167080225 346811826 353826455 373195182 894625330 416927380 329984448 896114602 340958673 741233832 826061223 953856979 869758356 951197866 193484275 434674960 968898680 617351412 285234740 694611062 276847075 946030738 443242726 378784323 60031649 97892400 859082344 602713812 28221416 549263654 630812678 687878587 660990036 368040564 667937009 100663974 258118380 800647105 824383295 742090354 3144732 210351194 193634546 872005156 909849787 900968506 479930613 397697510 794658053 163033343 687877144 700413965 674175388 870114545 154243095 165835791 223372436 859642 17152656 733346708 454768734 517049529 20710414 538427238 526116055 398870889 792125185 366183544 735144518 855941870 34821314 892865767 831150679 362769886 621261972 76065010 140426528 614442351 237279390 601396744 464093215 972509821 344411892 895427515 173673270 33550481 204363407 944901319 274293175 118487769 338272334 966249999 584595795 978285356 494066682 161085340 2940712 87497998 682295112 170529700 139502270 266374305 573448396 188857730 569925377 649504182 207678221 199320761 779098949 596039364 804782449 836913141 739322951 816047085 298096457 986027013 114625836 537778163 711177932 256752872 350643335 606797641 749591586 568220355 66074948 345133316 717192271 710606559 781461448 535917543 386205764 160308908 67537620 166838612 699239390 185763530 566116502 447847520 287424221 162676219 467459495 569329855 863477222 420647978 458638332 582354894 704300944 783823723 397868547 716674456 342329170 456967927 143520644 541524427 705877132 802305586 458407607 196122815 445725577 360712617 214588215 116851827 329379963 471587855 935990024 542337933 831153782 268504892 164834716 458442333 730178690 824373560 5676742 720528344 917579909 87533867 927375810 872848034 94709841 907970153 378409014 47556608 163706012 737101677 518474545 60271328 151349262 365134557 861932582 144223963 170212906 941560446 668346354 701628721 290364005 355377226 923971548 652100549 840136981 162299736 48827536 106249771 347305598 142556911 990335269 877484695 643860425 134351735 255450647 359686379 368263687 486578051 167763529 508402090 563287854 611926222 274402316 54546697 967250212 174947648 364665365 939017178 985859762 964061151 663858812 765089 895744647 70350305 758641102 287651969 85937210 255714209 596966898 626082891 888686929 52174752 837352770 65601911 941881908 854734218 855796600 966958370 468438835 220887350 795939003 117950231 9831815 583877018 725588630 179363010 244330579 940594143 154087168 854173245 595724191 380864075 709029718 47030082 667711325 869303122 608981855 807066686 826598502 123784850 458757189 926981439 68443514 520864205 251113887 637738234 791969860 11207660 614967913 829818830 71690327 803148292 603260427 101889735 656142375 779147858 960158030 497959566 967526425 159557943 149578605 869188737 823742324 906262080 479690495 548079000 96957290 341989663 893451020 970924415 87458841 889347246 976087556 377020805 173677947 745540595 748718264 357682079 368716412 941470486 591649128 257526639 594343919 624064623 91703481 43095865 418333066 251160949 272371382 161789167 899468530 666753995 808697303 488019750 477216431 268581439 160764919 662090272 899349809 380493765 348839259 459817155 929050577 828385909 447090611 995524509 998929872 914820755 895018259 740049382 877861211 360047499 695851254 860401279 722258046 289204464 719874885 50830573 719801399 927311230 939597642 711452769 277209956 80008728 927430334 918692014 27659217 772333770 228512955 955396954 32479019 123162053 372390086 849236105 475766799 898294373 687712718 139344392 485932286 579456558 220982057 758069841 418511199 613424074 675744658 293827459 917272196 24832015 171322928 917004901 908253352 532497143 67688334 630156644 922031597 652242595 186149540 253798298 416042328 206817886 932401103 11192263 760408541 370092449 18356689 996298577 536587604 935284993 206081755 683909957 636978561 453922116 106792831 448593758 139708682 862527060 260260284 295720696 566929538 178368073 520419323 486336540 902036834 966131287 534880769 674773114 590256395 447590373 679616522 780888681 371776966 461611390 604903345 758062566 658173893 615670743 300070138 864891802 750350880 103083207 93689685 822213077 55262683 115572308 739375764 400845196 525654237 59461034 364955639 589312864 406774 340685851 411178786 824662681 986218208 44564003 338503459 555827236 600686912 788656226 475875693 119553433 588863898 123635881 694142177 775306808 39284068 785520871 628462273 643039720 767174386 727586358 818933692 54825017 8876682 196094430 398650087 474133343 300102997 877817417 33658558 890491708 820231264 627538440 612118056 567122006 267883431 418939606 789276530 381262048 924209933 17430683 672929105 944891308 263907158 141737565 656711649 164976957 160290105 768597840 92158375 427341494 395851852 278253010 438873235 285354733 718979091 152082021 651277561 132611923 409976050 328434355 314720916 232702219 685002049 463204496 575014796 527546329 774713394 39222009 657059696 478017838 465320687 980822285 858213424 374102307 864323961 485242651 125885740 605025650 816105413 893815702 976453162 779642506 363159212 343467033 354494553 34636916 366552815 67509348 599525193 787301866 33423417 143185766 62844410 142104906 122587671 159276595 352517584 914975133 957599495 318197507 465456028 831897486 27323239 130224699 306867344 698643067 245129856 369233765 816491849 831482204 155597190 243107383 613137102 714858975 731498130 148521864 90426765 865802574 139214242 250461278 813804118 257380259 441693092 568485092 835535213 222799485 675598181 520563055 863443826 834593313 930811551 537373561 828592247 161317506 25895668 60388003 299615981 661478453 694659312 960419768 183637684 423127417 629732608 475740592 961849872 383291188 660327550 832596131 208987310 56734202 566696109 628554962 712312485 252908286 396171190 889779630 623514478 873716000 269253545 173479110 951095028 705203179 704365950 144423638 424260736 148065415 715500058 675263173 941986250 730969808 465316164 854583958 596944876 681684551 780944047 213680260 645801071 650508046 650850546 628087782 213414974 515654904 330547854 495412802 782784686 488432253 21414127 963844675 510064254 991330232 519887203 611252920 710932179 757149557 463357477 113009570 960685625 677094945 59954006 679558945 442140069 385039057 199233536 272972416 688626549 538236488 866800917 816815412 356267119 653125637 917581418 316220886 81088703 474671818 477876167 995575085 742213880 231988893 3005900 13525281 339060511 757970114 645434644 372573637 85485969 281973058 582181651 353818198 161715230 293229003 442095915 533703734 969253630 576089267 105311139 725636595 230360010 662374906 587884721 203375164 867223690 742541386 106362731 766468848 463234218 154080751 30087890 150258192 70137859 292176865 28549330 93753032 593352138 954666686 38159163 357044845 24213421 400582611 61760197 524500343 950846645 866083335 171605522 925201545 321215061 87471351 936533164 363590000 206866287 158622176 979933699 71372322 350351687 739034282 142275187 482539444 741800071 85008101 558494264 523374449 875787848 805158087 946359422 960715708 806722311 789511727 168227929 913454382 748795814 484772 685355967 8666496 108580471 578577238 215757459 643140756 545894956 455784479 519831453 518633851 626505442 396295289 973899148 484923233 719281952 539722126 830162943 891400869 738645715 757765166 703562866 108359625 262668367 1808847 758112595 30167163 279235921 719102864 758422767 945232523 191393280 617548089 84009598 678511349 614339048 221843001 437881640 69751004 964682496 417721000 20839154 95564940 684347044 284699205 55768524 766079099 332691097 546717045 691380370 498515007 922160651 891150408 337443845 391320477 46850195 135426424 484079050 77890947 509401898 168447333 583162233 730248961 940255544 90583825 245180295 511058514 16385416 383806766 597476949 537279965 516245333 613333780 51638063 713099051 210901813 944209857 588625730 564401132 213791278 642554076 142201517 489287426 334598323 308874679 685206893 788632939 339696020 468800582 968990315 586987349 50225937 922140714 106617466 953968401 398691279 273516970 645347157 243218461 112391641 594354869 148480152 235640857 999098788 611652578 699290833 245821907 667373331 771472240 521563246 463481402 478040677 826427976 715644109 213025649 691128648 474323705 798016810 552196020 166737366 981999799 86809008 377809010 570471302 233247845 510692467 729317693 530608706 489896838 188916326 626169552 298269526 612443471 909767283 162236430 56865397 514535315 953275483 175107844 942077630 859198930 902774738 745006564 153731000 328547383 656856948 892843018 866980430 253391498 773786559 655372025 441151956 877962057 423966748 435841368 892706058 166279822 403667936 762396163 989358870 805763878 984096579 911709934 200537219 532988282 313539171 119097406 479858245 684923558 731892298 759281985 219165370 902587241 696033772 103732583 433728683 456366886 373014817 181032269 164312641 9938672 209264554 88104885 842075666 412910716 186773041 111371917 752952350 634659628 177793860 710105571 312505543 495323398 477625954 565793015 884444637 352372154 164426473 789236010 647720336 505224092 500730656 198644489 841318789 8982191 956023612 380535108 100172730 172346265 841924181 769553338 212434850 577733801 782551404 814275694 886608655 279315669 385096810 917244553 218672958 533703871 655555873 26173278 11504599 610285995 703090250 544884074 406774245 658356875 131009156 50458960 746654941 398138100 568436061 471769819 960328093 273794089 315203651 488266748 129929067 287870478 931137937 755261909 461862130 717775411 873893252 473873824 341709643 157911247 146828107 500457934 648490734 927831488 192083442 449562354 907179206 38488464 334309238 970331848 52317980 322120302 391329720 826662704 638080678 48447793 7675776 571058999 489279365 279512148 156126592 36353552 919218232 771648773 6631248 638487063 935679665 480097806 527250546 873934798 2741061 1241322 973862224 336253153 491001773 845782710 148459579 69527842 746956306 402846522 485313132 853954448 419373058 38425060 426024195 331118411 575418224 448833743 188014603 171220126 653714875 333859253 101317493 954153469 687224996 162667775 120248857 580693252 615143774 417959103 604673720 438539639 775751037 472972713 86687487 521968188 574107131 96038943 83619962 604918895 542467135 158252324 272322982 862789187 783635735 660929901 694848741 482713633 965178807 73459791 606502267 913909647 504516799 107736262 44885662 675361349 372001072 59697789 220365926 561838877 178996090 303360192 583065813 319813401 219797107 404396939 418272467 962531428 642616404 750505080 299077936 318604627 337414089 222054354 533274025 774431072 75243227 38832009 177638874 934104111 112989692 943991345 124075602 934620298 876120336 351494152 271502207 124118374 423939160 53652475 138377915 386753759 562274055 260779668 992981319 48881972 694618278 41824015 801647436 700911061 240526655 912614982 780426461 746892882 642812721 431931333 452173550 152291688 672933835 613387958 293082729 610585080 273005760 193932021 553899278 518223889 611961650 765199872 618792087 348646372 841493664 597034492 599291287 246537932 808138749 699951293 263590542 376623180 223533211 363266229 951741164 165098769 485734713 811149318 702011903 924605421 355489016 174246774 566060030 79335643 858318954 146102135 428517133 118182399 926630021 394076957 996296754 717124771 193078688 864651560 285662309 614036538 584715398 947458304 160011639 490842978 721979749 412209591 549568302 553722078 294311628 498788604 322462772 631113879 32769215 386346553 877917462 503473825 34540446 461983597 641532754 545903671 474475833 653010504 777360454 450342589 759622596 975256871 310486590 685340863 661060319 480742916 905203049 39783661 51163788 855988617 336538847 330863396 172281403 53150721 128603557 192510314 469900732 242124905 370801957 826712807 748086869 173725533 168108199 546948337 490220963 684840996 249669998 591389183 847524535 643237807 811669145 869354167 22161668 175626642 216304559 368072420 908884333 885800723 373216803 722700921 988997937 294416 905006159 991557266 404999422 287179808 547975281 766054512 153491427 884106103 211000244 313052802 293752438 782629874 677242668 710971224 177006468 975492127 32423119 402850992 673291618 773996070 707379839 951687786 766274755 303741155 298635014 723078549 693357510 23589075 541180180 739330400 303388402 403627293 468179522 794576937 601515057 171643025 272459285 429944435 944991706 804729511 121826032 423151593 601777578 7234172 832092969 916155997 136192966 851227098 451378681 676610252 93768125 759529521 998860414 207320665 612952449 834699669 856961220 122810190 84734577 204493253 23684796 295084064 459239507 138222891 736295743 101381739 231097427 330613716 138190092 285159918 471936006 184844920 819740624 931874201 136339051 607587192 951257884 79331450 547742948 209309147 289486695 807241426 120368197 365650508 402167059 87687427 43806651 773525033 60427112 715604628 140508137 586808426 391842714 144519485 797082577 304087738 303557056 913800662 524757475 70551658 352506333 63053669 251584241 309900654 292945112 991379986 501559610 128044393 541616005 97257524 112187749 298229917 892115868 567969092 559756666 757101309 269525180 404934374 95881716 600677662 339120499 55889380 555985071 440769859 462208046 367804723 77390830 52087887 477965384 759905516 917201248 942179027 148770050 432520022 73533209 560027655 359010439 384131544 810405528 739801288 366707941 805352968 453618113 323201184 168338198 90550944 501259744 984383167 765412350 828614276 392990381 596270839 766318437 947744702 634550084 310154445 718253307 554772613 115272490 883310180 670614360 352700463 728904525 297218447 115824385 585561664 429340416 214229185 358040413 438140776 613041925 371749917 784127933 333199990 199087739 498750569 41092187 507397990 427699701 361244178 378278743 594151004 161099364 696981042 641690044 334542500 135695858 697539464 89809530 570222510 65350661 310287228 272837997 426906136 40994344 349825307 840762451 132267687 420611366 641422365 257138134 139272514 268742911 46543330 37189768 443211263 605774869 52228209 341788130 57099799 346079798 818066296 946886980 122163952 810435992 627456337 852453627 90056467 942581209 43909625 805696309 655746869 215237372 919249943 56665864 128289070 484890224 473003514 19351932 167860999 561996298 663549084 576777848 956112358 580785929 867734171 256680909 736391456 167055629 347817788 76702259 10080562 827003688 284140403 115322972 866750652 519720141 257670352 477667744 311253900 129111259 194882715 581101986 797905301 871511188 540833972 92022957 387040752 939441832 511322285 581171965 506326498 479282223 767705790 765518784 743162326 139123105 293461703 645849094 910551135 40482789 109963594 822025671 523727160 165486407 558685311 297321190 241209924 668527742 336315700 119262250 669214352 67480489 470694894 11059271 39159119 764214091 309319634 885975252 821726427 498314064 56243635 857277269 938490807 794617360 808791811 63112238 175844238 786569543 161866978 912422838 524989494 954583321 866181404 62561061 896770217 671658260 680185117 892911001 929729544 972293424 467331322 964596508 538002593 168446663 42048117 480314787 466106085 580003230 186164212 201400836 630296177 887839461 328572810 324508419 625318663 221730864 139411433 219003461 831439253 129293434 548689267 100772189 469590825 625674029 542274350 154730694 495827459 520039185 483746252 499251424 552787076 372941150 541684386 359737076 141617211 454070450 919642286 852390964 499326677 249156114 348854171 756043962 533197616 635360744 404696756 536934532 666642001 702441742 366749171 123117185 788010082 246138303 739341558 538548602 22080951 856578719 313083909 636034353 657846216 130620860 865880849 986935105 317487677 545675661 895892141 210666037 518057437 703948268 761176347 332141182 603220895 587176227 154628929 600994679 506493338 766368474 249664944 678243937 994012695 353022763 429132190 373729123 522458747 606165904 927726059 145188494 742252127 940506094 849130526 448379614 28837497 388155286 602186085 522785589 293100462 860141113 953799065 706301785 797939212 40398583 189605433 765834492 904579522 234110290 278048618 338262202 633708081 162988604 751508223 781509904 877941462 169555719 834386285 551525738 788734046 379076208 328127698 357464857 71839648 781742494 198377977 37544534 154781842 533605663 904701260 432278336 23119706 783545828 492665321 892664037 249902404 86745167 349744777 439558707 172668354 302179104 575301782 672211202 228810608 599770250 74006817 753136920 172689166 533216544 66010588 804313371 799425165 494342879 263894060 902283162 470106109 310692909 670123031 574382611 81573015 943243477 606238024 635945956 480226754 835795725 527190554 231975769 25644552 1732724 740258957 913774751 339270685 318107406 722216775 144767187 68887514 474849352 174264468 623639798 743939909 66260984 791407473 352512239 110881670 307471709 241052281 880126611 781396467 722065432 497726711 637307543 565097222 500692793 240507348 181299613 785917797 841988660 726232750 907468081 319807190 59925992 615384771 389678786 157309776 2422169 219274743 316838570 956429295 993704948 493239259 209726250 741943794 900200977 109276327 533020011 525521864 473241705 724565049 997006464 271306244 610627043 924348696 472662112 710340705 203957965 514772852 180565228 177516225 894460379 684921894 154411249 171361838 562608427 828970922 983948058 290624990 715238723 427636011 685516551 751933997 400766479 391977333 726052404 78279068 188002276 294438398 625280271 587975639 190734978 721428970 18808805 374175920 659504652 134151420 434956273 483967780 129527823 113318 790946899 39337047 718870657 731243264 944858902 45612176 509446845 17167815 14649899 112412232 252747405 194213728 664539754 307094806 834445080 495343070 837169815 753221825 42648568 909663225 786692183 305398319 216395818 790139407 322932030 870851703 77552402 727011620 890510279 281125843 69529471 154846701 592554575 926938793 324712611 500649917 607002147 444547711 451263260 20351378 356440689 877227788 350239219 530974488 849182036 296446251 905541521 365361565 299407055 208103903 111716557 598695190 765087175 166383440 977393123 962438949 692171025 623242201 165023097 971186190 825511525 408784620 303912862 815609795 949494115 258750515 631721157 319642843 880815253 329177719 329518285 248694674 107301487 497453226 15187449 707316948 580626500 361434345 316056054 77270319 171597661 914779510 864515292 725637078 136637404 269216702 528327209 91432366 628358616 175082323 652406718 469056058 830998089 553125104 899841770 607984812 407995916 551206265 449994597 281714394 396704494 350832888 880740936 391527492 732854433 445939107 286695708 977574162 908354492 620601042 775359179 992277777 459087041 928053259 836161708 861577912 818262299 140718582 601327484 194563624 204376599 123738984 346554976 47041064 569322995 131211358 582407142 579171624 326865100 600890618 666211586 812922942 512120750 320813703 223840276 43230251 671608202 571633783 164539359 726731859 234972728 355387238 239062159 630088646 783614845 103357976 55425211 53075004 564972029 225474681 763716702 430829334 527540301 73800858 287525346 263450203 130926562 10551224 824022800 639627704 153867811 707622708 535289376 743936388 590138196 204583325 576071855 134195649 2931626 262549413 348412606 808953621 129746492 868892453 376845761 708009934 65598479 952568864 918788999 767048932 692269319 693515205 650103120 4451576 63165174 246880101 876186306 806990671 360095387 940333946 985386219 924605656 699455632 868652202 503849788 367899948 165679203 760122046 870475415 14989706 219230593 93572013 127806014 298296795 430806600 122588813 618523872 908922280 197028086 977398434 697860498 470802223 783488183 223006300 605425360 673899082 506778777 805216331 872280449 555388804 900198040 218538537 595906546 855853837 963035282 791748058 155076823 892419001 474490197 732190316 680949326 488411142 754103695 46667023 422865117 470511905 361181400 145851423 214819438 701352917 370924212 639689760 853624154 136722843 82583436 292422847 842616671 311772049 298719666 832379851 980296862 755753343 411877469 116258880 533829289 612495058 192447148 985727812 720645999 877366183 497624238 221323042 91860051 583003063 217924178 958619212 722469656 644136810 550550640 739837021 571751149 898339029 936227274 290771225 394996066 432438441 51726346 206373739 552067450 835939144 424046784 56665188 366053531 618903992 237460070 933789253 695641484 14096043 114275166 978754410 423596935 196345719 263233263 566556005 389020454 385042198 10348620 553569253 243471219 781469497 890067854 769522629 921544921 105711910 6540470 553940491 940905003 564169947 973202095 49124576 679350183 849875443 469758534 201808538 5460980 322878135 607984952 653907633 847471391 800513814 543208740 706226378 343975836 24383913 919402134 145573808 812694859 403223211 190135292 728609367 893224045 539657478 875575987 7402199 277081267 754290506 95098872 584318840 279804463 9505966 376225273 527541154 576414817 922374673 274959042 629928169 700661037 56488696 669476688 888620041 24246241 656557716 670479490 998434788 389919281 120855228 605674533 237235335 868638010 859802353 716751333 767427107 615604356 850582360 131930206 953969684 712942330 913929154 533367314 79546334 973486578 288453796 881084009 66204717 117963816 519573537 684691124 252050386 887944901 232826107 899082542 613784266 812245585 769346469 684386295 740382520 732143042 35318580 487610390 2828902 538479994 803997291 760382594 886223306 452957243 804130476 155115791 153858557 930882098 388088586 315117441 901499840 972946420 306349373 765773441 799211268 612969857 572987043 623105692 422334423 383644472 194166081 889985875 224308088 225489135 53927623 226550785 407642953 87449812 351279502 795243251 697172946 202675336 585125270 862200406 95417292 833989136 386858370 87855430 243508494 308551895 718916006 927216326 734162332 705451188 206248697 987883711 617085093 702017764 612490263 126579965 828397430 632241933 191375432 51079231 528208015 639714876 423198844 536986915 837202065 712139236 272853066 971229490 518203721 621929701 406194418 44301280 678400169 547111042 985324125 431601031 578841546 346591594 229363734 12596322 358540277 539774132 230357078 412583330 797601679 437528281 354554621 136714323 82153265 722508480 673616530 107454577 763530896 980303542 549235013 17035739 502994837 723792243 796223466 766545243 32321864 867061521 324599044 83565475 880283359 33468949 684561337 272257610 663755443 37929583 499824855 939834071 749837125 631017072 454928854 85791661 492005444 500787163 284458966 623828767 595961733 466907857 895964318 633144937 751193597 953617632 555325342 543141032 357275348 417030142 948618989 589593065 381593173 782796683 868088390 866855962 978711793 644710213 201676823 831619607 765749314 603197023 869406314 127470239 160451089 89370732 67787256 279280477 436285765 464163437 44455715 898479075 229819635 885040064 667377902 622142631 803450708 697443640 98762250 373572109 454728397 535322634 119439823 313575773 807623913 877578963 415401276 856796616 12663643 744981653 395207159 383332713 806934782 640994751 112634704 404480575 188797144 292242217 636806462 666204980 698604304 365751562 967780192 806368540 206673915 355347471 380433408 277212588 694739732 369944128 40015627 150662791 755563009 234808340 627958039 752132663 502035849 305884009 109595749 758507820 891540130 785814145 946544603 193307329 586433894 722602253 662331400 211966005 872580633 133468449 135259687 326154162 668968996 632939576 694000402 130242380 771663134 787021884 139234900 445343224 710854080 350870647 436918045 915988121 409199343 897835677 24319295 999408377 588608690 429304780 60939839 913082057 716025154 623253900 760839745 147357344 733767671 433790666 984706834 325487363 985690196 356531929 591127856 908631385 477049092 607962229 775328951 154813682 957687516 732546759 307666539 453874187 819858391 422575706 885114048 713701056 795358231 826535970 80245962 414283297 722470632 767852160 221964618 985407771 604526526 958510648 919562152 662374791 361520434 257854837 231614705 137208615 862998538 22807247 893414620 660080291 352750638 119530561 860819148 836336271 223562164 470113329 598139588 756829794 742349785 37503085 719578743 687049601 801722875 225070376 606783545 332231215 904422056 403146755 485800971 268154019 827253906 257073920 68465298 490825202 836733849 117869967 296846369 206162206 108558779 95174019 208246189 427697173 382681635 739024921 152933844 618815139 608564265 753411833 272156640 671630722 710182467 493174573 516509889 199345492 741511448 844113965 74989576 217368485 49999987 447351506 734189309 707357152 961385029 509048425 791375743 993785956 326004649 321213847 309604130 182779249 838270436 716118389 189226526 923565613 140974946 952334977 82260049 486087596 212692662 648788383 603860031 123956200 708798361 376536860 415701531 771700416 81255409 173985198 836832956 394512639 621807302 236368243 846325408 569156439 263139662 76855022 730572527 385633117 674445285 688745484 558240889 696917655 836417803 41743143 82000562 731481450 866981996 635973111 752914620 904563245 961350622 941248164 194187873 294964756 105171544 59522746 790254858 165718082 641907970 528434222 863374544 264496321 81085477 410680416 205137271 615123841 594874930 587233554 306489696 156822876 731748552 42834803 304307873 724358421 963142059 969098518 581783529 300840016 476035009 720320253 868543389 426075813 373041185 701364873 805323970 608403079 109171973 965654150 61244939 796685914 812003024 986487855 764709065 751802729 97927951 957919261 86070273 235417317 209350002 210097492 790781271 108583139 82292441 853285959 967503897 93119849 307967044 240439749 572160578 660887389 735015391 122231822 736648048 992486800 515969532 984744906 562149353 153655745 163513881 252385026 96296860 510755723 222093782 17970733 531158309 301733753 84193282 162039079 884966076 448141308 642444685 837972534 56149837 115232366 819546772 557548297 968961895 701098002 916958552 61216691 551462462 7554830 114335049 121735088 875785396 996804468 925481460 345597162 958761553 975352897 992928793 730016426 663276099 397037649 987150489 54448809 900900960 809526126 963527040 8634369 126908458 592308557 517625091 753828407 346025414 349016194 177649273 587466296 466968837 743095698 217384808 203093343 779505245 686182887 274154108 103602787 288367084 97268944 641118854 667864681 127090813 498545286 75454339 744109571 780662906 31198508 378873751 366034979 702263552 554254794 212869130 361298727 331351242 374515025 354309200 855706581 959891266 713701277 414266120 745842777 907678582 45954666 473741042 103418185 885960477 48603239 596675066 202523297 379395479 50400288 93932083 887902407 486693610 382020370 172200664 862079368 840743111 733772447 711366477 739899165 311728514 21269773 345039901 908674844 264098079 413045900 516937723 749680528 249259073 177865789 102630595 6005222 334816059 607121176 925861494 457874929 397034240 465988876 250244675 997359855 268427315 503995369 30830971 376379523 512925210 200787047 437662871 107546046 830089634 658878247 761275455 309759509 343025767 164824501 58701371 21126243 550258596 167058817 112830591 405637101 992345411 877993699 275613223 397850466 698143440 410371613 208792692 968901591 33187975 445370968 613194199 263887304 27996738 279405222 975881435 230690846 684094093 254202625 807894848 507110691 20712338 233637190 154794219 982220682 689937455 278714437 279864547 35550069 537251037 966070441 525167199 202035047 162863302 293871631 56410550 48770381 100786875 133971447 885907822 8869245 444925487 784081610 898637107 150532021 445695557 126255322 253185238 446863894 422591168 620246369 943890260 603104820 543365396 448735101 116529616 937540095 672769366 781675322 863508630 54809303 399164231 702918280 109885463 809757310 102853965 680408131 402825712 725908518 672649076 815770409 968196066 338375008 112498809 725434596 736202973 570132268 863694009 33961732 616882671 412040431 440059193 325510150 538415956 122108276 58496170 926051402 535930227 546484722 990777443 86783767 766755796 572082950 166691685 602037662 375836203 427901878 442108757 213791740 958764884 829771374 225676163 531235377 314822225 911013378 231438310 390678819 638941518 857158837 910694943 776456102 976671390 475285796 119600754 764348277 519715263 776909154 856222416 529795629 120193103 518271460 609204178 817121880 935497498 437229700 862506933 780756076 333994264 706797963 130295648 530876860 587635298 648161957 644902243 19381647 934270266 929432036 780077302 348644361 683585291 17882826 519198455 572277055 974469482 571737913 410831086 854692393 937112849 945297536 692087306 892403623 724914404 161211989 492672035 354603394 481469167 824926162 482108598 901853039 818318179 484240511 837861870 158877700 894229403 416068424 136663446 281240002 175794972 81256837 287590440 786486295 997654674 247778286 9394626 691672653 542115536 113103789 841184557 393936546 525694417 760348492 533323479 899144502 141232565 638219714 360552407 855568146 8180683 489353580 440732396 30440745 431808389 728707344 96614270 62553939 37408126 410816732 179451037 64195407 598524538 334825315 934397 597850057 770220133 202778273 667123969 85678418 848933201 10710783 192821679 305130339 742541945 91714630 65883060 732536156 695839041 917692593 441447276 691154312 228182579 932406231 40464083 597173273 201229827 485588931 909729936 144432679 853082764 203878876 50523380 300785841 962842066 615303166 820705013 464124323 519974147 135850851 696102707 922691790 566857581 57408943 842660594 243261163 609811340 476240880 631734054 884509338 275230213 629230492 898945892 751215974 457702564 568887185 278127852 217737921 101054298 799317264 877273509 701615872 56762692 384236748 507398943 984680041 512566183 390422488 931483022 244217891 443756264 668698803 345766613 178386238 948779937 969935932 598065016 341891001 112831369 4628167 493643691 14041452 900729988 556250886 753925185 895858472 484308897 403310871 794767289 275237789 117010447 261580670 480495420 316754017 156541992 738775085 565752730 338341624 963319922 856079731 145631307 744275914 895507610 17826576 945724010 962290472 585079920 889198379 408664514 398210125 441196274 167695180 673946049 588419161 786767680 567908719 253066877 187940691 22383014 37205229 731735481 786997553 873692827 382681996 218512342 284727496 113914295 850003065 118531819 308180188 515351227 72844618 733710760 677190423 505837718 326048509 251745395 155904263 281900123 655845621 572943948 870071079 588709444 910860800 119909352 660419032 831547572 505827159 779994780 194867301 681086264 913873296 470180713 289444858 984660355 178030006 725673972 121906358 738240110 332799541 776229260 712901784 161588990 651114465 199431210 324749963 359367516 449251576 748689260 742290268 565506528 459406879 497378203 372579016 622827522 757916517 61022884 419191918 492445028 943060796 262068513 873403099 858249428 867428226 397645645 625350266 780348741 611800192 536454674 356469931 599733457 991943134 234715137 639243946 441915835 157870519 218521166 432998053 725319023 128235394 171223002 482466473 754560 992122664 805380138 372626864 315617450 469268471 844751986 708008605 564999118 561344929 75495557 99536184 858969851 297026885 626464739 626863922 481312354 461824104 361601205 43691815 909309789 71795192 504487624 200461716 760612722 531584841 954524309 757778405 485255498 584442650 222839353 3638635 459228091 468983438 664394367 818040414 194167484 415219766 835557843 226568928 443385970 203519746 108336973 592456188 751224364 283863892 772413868 453526176 512171353 74786799 823785561 79029416 774473364 871209727 341768801 801282514 779655333 288906522 797599101 60396749 502694768 182317633 6199051 938997797 203609359 23807700 95802645 529614675 689176248 831059620 77695812 105987003 855109586 463787492 446586359 805393831 60575974 519258674 960543526 135486276 276838570 210027922 684663678 882114993 119216375 355080052 4425549 225117161 997368272 490339245 480245128 460359131 310284385 64200566 865664209 653201747 6962172 726268025 493937259 711879951 576115488 783292865 615463754 782375340 151601260 356297413 739674370 470547126 39752109 258617951 375757524 812096926 323610839 465126871 389495976 859588286 389135619 237440985 285050380 722158165 349942135 635390843 647396663 331617679 911455901 834661691 624834054 422223736 9030918 538664954 51703559 334862352 125057139 384677900 707658339 532666164 584643265 833987618 122769138 169346478 942122751 320050777 419276597 323334704 287327325 449316152 605742677 280119890 320701242 723795627 545280285 684400024 33221656 529722120 98678535 678171752 206390434 983625740 349512497 160959255 191362218 44629981 53296994 204658393 751831343 878835207 246352141 907116755 258318159 735567998 484639298 385975052 379882329 410119842 426148553 690641273 296707519 948744249 354606338 767369966 198031389 214278253 119779073 753938482 211789364 679852757 241895289 58665194 533350642 150364780 136014541 351790248 597242216 44035740 508933634 485013478 695410644 617289263 220953687 305181958 1392281 145581146 589137270 638329681 97971518 119443898 184462862 576676343 896308602 522004822 303480626 923727120 301586472 666041756 12793399 638696096 530104395 379343198 4787471 958974865 14193165 489383133 483382107 700776627 877346242 242535098 776292197 387957181 381632230 630344966 675070744 28080210 751306010 140427829 23375118 63348989 925206319 601274912 161454980 976154155 423737360 242396437 134601575 903720249 553920991 777901243 957459774 789567848 114159835 226130216 986909254 661342943 628395634 511407066 122628957 888476595 866401846 415317686 636323337 477235929 659503331 989206794 947222904 855904050 427795290 700085901 349333894 476558988 904038312 436320342 163426225 977207958 80463360 375679473 807370267 119097832 989466049 8933446 414859417 468318469 361019495 205696174 641632161 115634517 76201121 950600678 777046353 565675560 859478340 648306963 294631022 484590522 554787913 84281534 952783214 398434346 554877906 262216162 662175075 766368901 912958764 819027162 832095501 209979832 109848012 561640043 741109717 629357982 209248842 696842947 354927302 582621689 620788077 698923124 480475037 967250799 71678236 275056001 183367606 193697428 11793261 452827725 767931160 657490659 767521689 675760800 311702901 102517178 496338692 405810360 440238368 435097442 739019324 675463212 384085020 620922896 460017650 880824068 461226767 849840346 742221312 944894124 542942791 664466626 785190509 877686011 722412733 408185777 499326560 353938730 411882254 778923896 31979823 142370533 63176836 744118483 744398677 225263411 707479052 854162526 705927026 513750922 515543872 553077160 526392150 749297869 386557278 737622046 667544307 578721338 706653770 151364124 469853538 668862085 691340185 974557154 511274984 170086588 709088638 557765273 464002798 390094178 567026137 735081298 652421388 941234010 506777395 258875400 815309818 363395827 860602296 564692635 703407002 716781279 143710277 219227604 459913467 127623485 637406035 275277412 243695436 359683217 935305226 557156837 694888684 237818059 845615423 373151704 439090780 907331134 624651362 20242600 118801225 174114985 907425431 338474658 412897156 381490222 962000292 821966085 267854859 523006046 598407926 732789485 874638332 926967086 671070888 485033573 696011691 638472697 671533177 124014433 877801858 371428996 18441420 773646005 678640931 48637441 778383285 121963814 975199820 298445823 78786025 577074269 155171309 387848573 46043078 297700842 101677847 8474083 198241367 850033735 574259205 147309053 338005065 582301140 648583963 599672063 529276657 6150622 794079202 405878661 80343890 209664403 271849491 152162968 99838226 86570763 578970243 965827748 602467710 826417227 471190582 47028348 941030035 696313913 61064540 289618529 151563243 819018150 987513413 369808629 178954701 477878864 753321578 121295943 807552554 202173397 797834611 228043 260025245 135089340 575985190 388984929 527504991 465124218 724673917 791050059 669202777 552329062 427771789 677003575 955851037 696700869 165970588 236472378 449586910 640978618 608926741 587465683 937655167 888623706 811499403 631403495 351357060 981509024 497914810 651134400 458660129 584840043 662930820 312711448 9220393 943722370 961487607 94999305 739715101 620608922 278088768 956673305 778956322 315317835 148516546 154690103 866048778 569589781 385368570 556854709 436393805 871763555 236474520 93356114 614847751 967121542 280274284 135326517 254044929 945116855 259422837 495507688 475100073 967111958 764424144 398019171 853312536 225590447 124219598 199644161 380870412 794184816 699095264 189176968 51372526 906846773 463212704 948533287 692812237 831737276 463338709 639389038 677294684 423881139 333730150 515969123 959359233 498983590 916293226 395741539 495162303 96320531 533135128 814001727 109005893 497665880 757839064 463340844 120501482 207760065 868834355 828956615 243792304 892157564 494343130 916673556 352740156 472987556 211557802 538649475 824684512 379118395 777977757 83242985 266850961 509845801 842831102 408366207 474079725 550665534 650441473 917989614 731806525 434865206 221081640 950102082 798925169 888582835 135225114 88707571 771303967 905955385 877369761 251154138 666125958 9460287 568753070 7709249 131000974 385024283 896036448 539231950 351455687 141419791 934745849 442303903 837734502 876999492 316994018 676355883 539628620 119110348 393910194 43896408 147752448 756326817 502223906 668558198 193594288 711935392 450366231 566851897 467584566 22310296 843259288 658878398 617513999 661335609 452985565 99207563 40823395 617045782 13122879 38962826 118331902 661543865 663193923 258021141 125683295 249740934 798722192 538213092 194510493 467365328 821842175 169755683 223750277 239080656 191390087 728385112 51845506 961835174 878740300 960769918 60689838 432167775 412185242 157534448 399918280 93345511 724954598 906688115 159498040 334420507 816524488 235773235 350188810 778779579 211874053 929567433 289197817 787354481 328886152 284328495 623935330 427060429 71737189 962538187 433395532 560952390 169274580 570344297 416124775 730959428 985348668 583399233 245275914 614526986 724029736 1901808 713705271 460601039 429216075 743242617 665351056 362654372 259407229 918847819 237548392 330048914 644776133 255275322 904763063 615730305 135580490 823849861 473556761 791264828 238774629 119608017 564197590 695294597 164376206 389501737 191824350 733434614 553148520 454083331 984177867 504606239 981939137 1451582 55469014 380018795 864245129 740262686 658637292 376963382 607896026 72371536 517417880 122288064 480787708 42476266 376035862 715459638 273984600 447343978 745345088 48118949 215811456 591844021 922931106 895970313 640377650 534385686 812206440 960274752 989905998 388385091 173400426 995705366 6325474 367980379 77577513 51423805 395939617 507121123 534442185 170174028 961184356 175539654 360878108 63960262 389839920 29763674 268604313 194119955 532570929 951322207 943506780 392864386 287233591 465098489 779334193 446115154 889620288 347223216 736395397 841288608 449202288 365060227 286907759 803819126 825019153 2548423 223104428 544345799 141230740 298560068 611655336 720553578 278112662 989186344 453478770 576741153 437698782 46715400 250982844 503095189 665025619 352700643 18559210 662433368 698706439 812417048 37877506 510566115 88302393 933999484 554492850 653484182 934787914 107276607 729190229 137318333 924771526 299698945 788014564 664824966 14795363 197142212 375092237 162349583 945479669 405678075 384157720 946952019 582040967 445638260 947890949 901780542 667358271 531844979 994730859 865997989 180498291 416716440 583820951 436281658 623162781 776623349 995051380 731177637 263695200 957294587 585495453 702268522 802243720 27343497 365063247 708625919 911335690 481596389 807106928 994325432 603663359 242454715 694622868 568539099 398725800 360706593 159646191 371903887 537379703 515877010 13452126 121684967 528393977 533513465 513903981 35036888 194880747 919964572 972950089 43103817 439065392 267541300 449850568 940957439 6401236 809519585 774314347 529000875 221371149 816181283 396504921 895418858 828524081 444748776 247183200 983857467 677287110 362990474 230062330 683715590 572012662 396217536 939667269 226288799 968237337 910076341 812014598 582232124 423157667 74537970 533603503 454977538 182994746 927603054 385288533 689525753 267386924 216271238 578454971 831636494 255764714 801025534 482206275 447896865 83555087 798673414 415723264 396010479 946247774 35030834 502951080 210893858 669389764 447974015 767188893 649226061 384019026 532203344 233079009 1059302 653643332 405525622 761019175 765758546 191869953 323258661 925714372 995266009 711872270 627233274 624336315 428311464 747689760 661047802 292284593 862635999 901341974 394263955 13342706 610217595 29447664 568628120 856951675 413712487 733730779 77609544 854108391 248091762 933703463 821118027 522588799 180110424 550967123 724951977 894963250 530021307 205809152 714616026 921652376 452791582 210963450 341712828 307003887 935883514 281943604 596226707 616355102 580534948 999632073 966777101 33214135 756149084 731026429 659104572 318688239 545492305 57893691 364446370 58790309 937788558 708470294 230504738 986828639 257847313 825211211 508776970 116388432 293402806 326374843 925785359 794284109 974021197 652792177 200026958 72074452 709372544 203967137 440394827 165188113 847164399 590210726 681194229 675638735 439289110 291448069 451668129 123381893 798006112 759265382 456676875 492914771 596228128 345528736 684763226 589773827 601559950 435077292 340355611 865556992 455910858 116140975 959237186 752097125 582615009 163892208 765886764 787332846 127869630 419172584 502914464 393727492 317192256 694153519 843534796 589347767 73405991 513562503 198565954 77610940 825048345 250916316 613310722 250419060 395697579 220054084 943722608 211781351 480813394 267045369 947732057 75810755 818021239 503327836 790029554 392610911 674477658 190757884 608197595 78177465 770754099 983163273 44589846 658859387 277094937 651660001 784775699 508693747 481144587 18560002 133145763 382814232 968293111 297551903 579984905 900217739 328621481 438828676 343394789 288220302 905700831 275275696 756440391 25276440 2907191 515605574 728881570 450833339 22189627 700132371 320411608 548586678 723803487 160496389 420954411 635377909 388513271 228197948 132860486 534115840 717902409 760122619 337004611 344851990 871242107 558969769 991887259 322710800 277718686 88530655 479488311 38036858 90295216 310510674 228410210 927361406 333036174 772538347 854536913 100262395 526028802 331981490 325097890 644121447 51884223 644001244 110728283 651497713 214349917 854089667 135035624 80867683 300633179 882363626 353727905 869671478 435722533 523381502 499169343 94937227 240152845 241425361 246409960 474173478 603326280 802596958 802857259 562538619 641376509 359205834 448252671 191861147 36407344 579581021 342524349 806614347 578391767 35657868 803991340 4516335 788281286 728530933 233245818 778656150 642745797 153525846 998798652 662499065 165587575 301267102 737828974 126125687 451028846 584480737 513866103 347710742 238684967 369466965 814847781 282807686 928961025 878455907 797064361 873859358 637588293 741533074 884578469 335046879 388067365 344313241 373401115 198685294 562970808 941685584 342168442 409206044 893930757 153533372 201407382 232987359 231668207 409840905 817874095 552329556 646707272 94559112 964906855 511112392 637656013 386956470 79463370 137898278 437303325 244960311 87429203 281732359 568651200 661661907 264194779 99159718 473883433 215275391 924976552 248822003 410734514 207802966 596678249 458210932 773074074 317825439 972255023 124533350 117972493 375873727 333369213 434355111 775222808 716621644 821616435 473390013 259725752 148556803 327110048 762239446 882958287 610050501 896067194 948007374 366503457 803659932 69074657 112894242 671901285 652200640 543370325 177615862 167714097 837569417 651857349 791688223 9181446 864585849 179972743 649178129 134979409 701265983 50669400 248356330 184283487 948541866 643106140 691045490 172633451 986003129 897024292 803661851 662493079 590826893 547896738 811929594 859148520 748736883 30408498 126260431 577516631 902899675 756617886 631664126 619479478 740585828 197251088 386561180 574081738 740048078 585202204 327807580 45637180 814445064 547565251 407793824 158732444 650977570 722479718 154249069 785183075 910507354 635987158 936896627 176538612 87428112 895198790 10095113 305684632 839112145 457431636 859241007 149817726 81808720 541732102 878334346 691488706 727331435 396696008 229410413 612982373 353805088 867412592 474421708 419876172 927484572 461325373 671801929 898551886 371862070 674831054 287917352 967794211 731221092 681321271 781908827 483102569 633882574 473707754 284131960 972595117 208358971 776534214 564420542 488900189 538163616 528242702 889105175 695900117 283570458 636671857 846985742 108326484 254754283 962366981 306723039 699911429 855834237 660536389 707198818 418188537 416598371 771832087 148026919 944094761 495511130 6779078 691099991 883717749 692607814 354078220 202486733 672649385 533350705 894401797 539287556 400173939 655327564 753393717 578675494 123129967 390835189 501837192 272122372 278540570 297561008 744264023 989540370 594806757 316517926 490132827 338072689 411853080 819724587 882556347 81332967 260841461 619472827 875927556 194311396 955807127 606359800 696878127 990221440 278815754 186347310 877830546 120017275 450075967 880315089 74790905 388748857 296604685 561154939 535431821 507088074 534465336 76356849 255637732 56066536 825202793 467691034 84829694 855620081 385167153 887550990 565820223 573994987 120591367 998593286 511553392 506741383 878509905 213306724 375097292 166890776 306576978 44181177 106872558 983778469 431848513 355301041 739704794 556381388 636761394 46516266 134359296 819111652 465025324 333449770 700148533 591987427 349175061 776572121 472559794 981183587 860000190 771810443 903439904 659123632 432075488 416662715 766306189 475279544 186648607 658273037 997332842 748127764 767380481 611104845 925412249 942446081 511630073 612394347 453930076 626350949 902722144 646408327 569024354 11810514 155523447 12195807 841189056 944155519 446499430 880462051 830666741 753087048 765551426 497676067 331363040 206485177 172109056 926685018 361837271 285606910 264373893 336538223 841834375 885646320 747941271 410998891 413485075 573633038 82323432 839383425 851672572 432069246 819045395 84214538 190839348 742694672 204323990 834415246 433979405 438301244 572721377 141364404 467599941 999154720 143630396 79144532 880865793 640697733 545306343 450821477 580531148 338002135 120219904 778270732 720021155 24525104 837676435 406693266 426831066 446443855 751793039 742328687 355300666 66218139 466256077 316088890 577703923 285112867 807051023 305062585 516606358 955151772 907713791 49624789 357505571 106942059 878389037 720010401 883154942 988689040 177284882 79960922 764079348 753484226 731005971 800547427 728532795 956288083 415434356 671460422 861506672 491296834 175644778 251499448 684396185 232563257 7013133 858258580 435112737 422753415 688918365 549965020 241020894 198913056 874108740 100012988 345205265 534531494 113279124 415517318 908953435 910316641 773936646 815255992 395963592 353285439 256196156 380624373 893713362 125931479 866933950 313030917 422303572 665869161 425362684 506596060 17117330 66847194 498755410 563205272 781686332 814462653 614943745 538638203 381335911 313439815 560213041 481023470 38400141 689217110 610770162 463981704 383611541 354186612 64235072 265708291 569016268 941710286 703262716 349689152 774806248 73981502 763927277 382195277 636963335 645493569 920504775 577749852 846937517 545842686 907304993 489587912 838228422 388302148 52031357 12402964 860199594 769890958 97734722 553829869 374513175 509715703 539321030 720756005 854530092 629212233 360090177 751568310 618674303 426313713 69743059 65174214 607994622 294291974 78626178 213797536 483890952 357435979 209030470 154271668 566124132 241968420 990928371 338886561 113840704 874185889 212768333 617710121 32922159 574959480 150975997 391842356 910908206 255360523 770720403 587082458 38312613 140885857 418702470 220953687 169311071 591278628 149308479 545587976 947872913 365452722 434280190 232021117 989391577 332642057 658137085 586226280 140482877 140282316 823421261 631723941 34657833 790884687 603915509 955999543 644115571 266981766 611234268 477807944 2755158 357672466 218716370 625032748 980621946 680983354 322105236 852805470 829867756 67850989 386385344 171179652 953079843 709171139 709467618 795725924 33127926 961616888 793508456 919981558 524130482 44522105 228940463 497335125 742526462 77192143 602011635 843554495 474571250 343200566 170348130 34259877 644019725 110137738 769705995 696992152 767694897 484410454 121372649 755360595 988013482 496694470 508379866 781381051 997643826 51292851 249509546 296307928 444026084 502383515 661426444 712599263 244748102 341646245 164383380 530201900 550783554 578485410 281149385 313158979 465718579 27803401 266382862 731781069 813147345 987971318 475521723 849959327 459015234 461667637 534167555 676674737 836276246 247928371 452601866 132337451 216938305 970188038 398458331 152779348 878922784 808805486 137893476 696482723 336873336 999934421 13514626 668126128 53584758 118969926 668005106 775423296 686189744 899255677 719553890 68542526 906112802 929954516 906236767 705427647 800953652 681712215 788132453 125210619 956207792 46887345 139194833 835568469 696911310 558729532 253131762 709558108 666299434 138475255 841514743 512427201 638830536 54243208 441788406 28663135 823929369 368179518 812748789 547111225 667160812 426017556 454628571 407291771 831707012 927558565 285711994 42960760 875904901 495969339 621823370 419010989 535546875 229866946 343832750 716970170 852222043 901263829 874527086 500908142 996466051 850023345 430570300 137158841 203252921 219916604 577770609 688666294 958042280 241946123 339660111 365291437 550023785 586964559 129937149 246437378 303881332 586067433 30295693 671554638 297408434 42282337 116050424 596291658 941220979 801037030 676745507 973621723 516941669 96565583 29804754 58350602 983441067 302272285 126920123 563932683 646465222 813446004 879124339 250473019 808662951 99399462 50733436 973791513 77939617 404091818 266827330 288050773 7562355 544995359 477317653 221433790 769794624 467452489 323022892 715898963 316448919 990686108 531618221 332717367 628201324 493449261 355500701 357985969 475195934 990849978 794930413 720590137 290532979 783358638 284793209 508744807 458012052 735109398 806793474 938960896 558503192 994975656 660529455 825555184 760216062 677345991 923345299 295585864 903366061 512529780 871393448 646160454 285410029 429626469 213472460 500946763 498887412 25260269 429122380 44883170 68220515 297600525 802254166 211647168 527708221 830947690 819777287 341478335 797881073 856258137 827714141 35167459 612162384 655361226 650316355 583656535 169068442 462715488 589786505 102776942 162133622 124329827 443885545 666953891 666951151 367901121 411222789 390591642 43909754 806462990 714215266 10294559 366109686 265333905 70406008 133572386 545500838 531538986 897059484 632917187 406639163 951265645 37826577 920742465 54429892 840208782 236907516 698979593 642039236 464062316 825064564 679614125 120076575 489953938 730912881 818366442 532968993 128474159 23946448 298658725 289118335 944362005 508441953 48973284 572012887 341211590 25033679 109448926 542268462 595926381 354422454 885277679 567832563 221329107 73564312 244191894 407193593 548780148 166734558 763968900 563481852 311833196 298291927 581687687 121442854 70421895 938332862 260517021 430711296 739015727 142034100 776250600 249883520 635246461 89606085 23310263 570364167 848110129 477786844 432977526 610181461 960625073 33885657 392945094 756439706 387558157 118502520 967315560 547719531 242420221 97547109 211565131 718195141 295877469 992337201 434358652 363165195 434234554 74928981 154910523 660192271 672140864 115706160 643779816 18784258 670599879 436547854 632468753 329186692 768057931 164397856 553255016 32153242 919414134 540124289 133484744 678558894 900024985 564202543 825131574 522461082 310983848 131907603 337385353 464150680 743373380 15784960 498258698 336128334 920105139 425787567 183928385 807143114 577497830 883851457 393034786 364903042 419652723 952164800 976310903 848380752 46667417 758218013 999744309 392876157 394697024 38939438 372104564 926369459 918743543 271266874 617982076 14067466 993629943 54212454 542956214 527406076 168389658 687268294 328531637 168794738 491610092 510167888 760020531 700740279 835225244 755107817 642585366 321957761 725456640 35451478 432098918 436386029 933718424 779199820 444937050 637755774 646928269 446830692 541503053 319430950 570921385 291673885 19145662 156430902 380068711 612902369 168970075 417966190 472640485 948526339 386760441 38345715 489411306 368097209 198395281 377709649 174448615 895481638 527798341 895163260 649441011 124207444 613423971 306531030 397818828 203393076 572084060 643101214 628201690 729022623 857494990 179704966 201298989 41229142 110077050 332194723 284928632 667992578 338878028 658862705 789220897 505976373 534164566 432966738 96929835 585405545 462806230 617051673 598526276 967835898 826630701 62441208 775427271 366492984 552418793 122168206 137375664 426154067 964901304 485054687 541046699 427687520 699303034 891000150 931013120 479279974 466417457 276123596 568690862 364829259 75831302 485551230 701401423 486018014 483858768 524711952 71479853 550194653 760358024 225607313 212653875 102765030 430985552 999800946 796291836 495518340 909971065 835270037 56745928 89787433 507995375 71271995 41386108 432414762 973898960 204120084 486707627 104310220 482351712 933214518 419108998 748924729 564473099 216583453 798612977 965582463 710141027 890056621 188854128 779484312 229166371 694525494 469684788 884883560 972061742 393198699 496518679 598740918 478510482 621428584 454951571 827722291 605294463 126316215 206159826 686177400 806944593 569124674 208626084 431015688 658463372 13070943 435922049 901437260 698295771 608328905 461740675 427366548 204137488 363355048 157339766 155480347 378282795 363086728 958570696 266461441 801191240 652755297 779053715 504010574 772161463 688325517 112853136 560346356 749179882 6219986 199687723 446320079 596483708 137979228 232548466 407127453 665769523 57121732 130419997 574207241 30150901 809556485 388982665 541666467 753104603 139106947 221084609 760815077 497843994 403895564 347683184 191849006 285576474 654881750 337208049 567980493 509329254 608746623 502065727 900531948 792256688 105107722 459439111 992650923 135036626 6437606 425581202 390930950 832758738 423261672 681431773 202607339 698658523 455833933 309728642 250710309 283883324 383168698 411875789 606221171 620879223 339530044 425426089 541238389 818366504 268033610 743889841 502443953 752736033 800326846 842006561 760119450 973865040 95773667 60784098 835977101 683493075 998545503 428275844 155011271 789084653 453373771 63102015 834039666 281075720 970909988 232020717 818964638 923168186 285043408 695126299 264814665 240745658 76823197 124010228 236569167 615725297 682645821 821008723 363702652 602002276 90886350 537769143 273962624 1705802 288102360 255588931 865500918 210698495 238135876 781451466 498008668 594990850 256125036 840042946 880463648 886637314 724378635 296249930 630918544 711862994 889899846 472938027 680221925 574547309 60761515 778211539 53622337 756146675 588311852 229151321 366853038 723547314 85471021 999174780 436538141 89515040 420417388 705299876 961395559 529724372 851991835 306963425 287527754 451281811 66408397 579534313 523235956 311923270 423439488 412481562 768060023 944635141 152987802 726188415 721296840 798202375 583264487 539010245 117790410 947396528 773965980 249176385 537391814 593054092 779890265 827362295 277275375 119142737 748541726 219608713 577254748 37898197 571468127 785296458 248749583 892012572 998899691 772317491 859753456 413484629 496858370 102988509 827748309 674276049 366729548 908345237 659748208 552996108 704761553 874595654 598679657 365757608 514170379 208858763 84423493 516775537 363161811 392480160 595694711 556484955 525609840 909970800 165886809 550574974 328087441 647870086 489708840 753894690 915206473 855818271 186550802 881497006 849478677 140814610 282044456 200998585 689352669 951985901 943890017 860073724 192070122 262403292 442988958 733621082 789358071 95778488 381878187 913163230 377569562 234522113 337694774 444856511 19712737 238919898 962721754 702517075 782859312 890853143 121199898 846215969 88821348 487766828 5238109 744941266 687260724 603190586 273720819 537633594 490641098 997806088 508450071 444111447 432172722 779610629 379761387 839044166 411797728 174997064 542676599 31674968 500020147 536465296 881461420 120852991 927432687 322442054 256724325 563519955 541937089 678008 548845152 734352027 161761726 935184093 717789258 672814144 18734052 257925589 247113650 467773655 629283481 201068900 117166612 420625818 18156456 116635967 195883212 310842863 436868939 779690427 387897385 458574426 575571225 486829268 590611545 426756502 798541082 498697013 157850740 395630461 296959679 797327148 114976638 867065870 248827351 880696753 990092641 762844792 382395299 887070561 123184619 871151631 271067077 214466949 421312470 299070283 333377870 837134604 687108551 490975438 379405235 60492687 245113154 63809641 105327054 713650250 452927931 667757068 1191143 282704166 898087818 921971920 480012715 678647219 751680754 270528511 787560749 910052391 988085020 78926844 446689261 735687264 779743001 723657569 693783248 761362663 424921313 700270564 269069859 191427565 535543383 898985835 133563545 616460869 103452225 776172802 62708304 86344307 133946708 403129818 995985360 682892184 527494441 44798545 264152325 794135179 679919423 364969191 237577282 460027070 642773502 880913739 338504521 702956880 258407869 360339789 937602616 909542412 941326769 928367593 36577443 235792479 92851452 543691331 989097085 3059295 202826663 840828068 59885858 79153612 13707172 774357892 400584281 536611601 894666188 829897338 298819406 890350134 904681183 361335114 883211158 35693048 114440328 703783651 292243504 181700788 734461529 266313810 768761473 65685364 558832329 169733590 545427284 666093283 194473529 957359570 861874144 443577434 720801780 924970962 253541571 174107354 500661546 745538951 694927617 967389704 414192118 158365134 689275142 233414964 62958166 844732840 484643752 155313750 147155768 215646020 408584488 260652301 130864490 530795762 599297062 605843357 878217381 873882673 135997619 618271227 683398285 228111007 400529218 467894456 479315878 994529547 3595185 843641371 978933862 862661734 844764229 639102723 86283302 161127116 753103533 484554244 879733286 602241667 462931120 792669783 885808783 907929330 794957484 731796181 451747187 224933295 812597675 514071306 346739656 272961397 97405761 51857957 55675508 525501732 67238691 212593658 694814528 90211532 646410350 173479436 262935002 232802974 278007977 764888704 534477021 729121270 858941633 993497384 876139211 697760855 891747339 677792376 278821642 711140968 431872835 825335440 65925360 439748357 671974799 769773112 346785458 262215714 430304124 708360160 493668469 899717092 692713985 830768798 381584193 704649113 814871416 95650096 523533317 563576496 716488363 289017088 36428443 37307849 503556549 192535836 34553543 347137443 269874521 640760636 584531247 798646829 855129957 794915007 37379173 951403892 615199825 887803307 929568740 299420859 233987558 466421166 541693197 288635232 947728990 351947044 363096103 426778609 781323091 331942409 942739812 622923551 335188172 446572292 79246815 616436935 470262836 901089380 946949271 705577708 809610085 223971621 24300921 720063160 891365783 51490783 642864720 690300289 715621488 924986334 54411739 247071679 240231166 970593297 758444217 808426518 959603387 961115148 345727602 500979794 567651964 145442067 80957562 769080423 831102859 718139656 531879721 186819952 595350165 280459137 39798464 551742638 798143662 12999852 951138920 475283599 410791510 732602995 220025138 556085157 415119470 641166165 370645785 268799917 590262086 595747716 123273724 978762887 951548820 220506071 660745894 160806207 368679282 475019471 339747273 828233995 483062120 96028049 280902394 289905730 758681957 886222060 973707198 574715757 754837433 459749979 389218431 479164977 812343844 183933177 23652235 985278565 674572492 355095181 48951836 33428228 117312828 945953931 377967958 804309296 890165612 575808773 206361920 577101623 70182584 528084925 400491980 225587078 583340263 239025947 330599379 761075648 766727456 3810605 506455572 917393317 997650689 455562921 204621373 642466845 395595137 696396272 417585626 248650817 788152327 955740680 302938984 452606534 895522144 18959779 85338438 499489430 614420165 470388245 970681024 254107831 135693516 50644063 597671686 335456862 972933248 810926630 640598576 671869033 695986252 533088447 494617664 885567958 60172039 662075419 684909598 860194516 79113452 981672411 898793119 997759413 613357728 327907399 448555897 541078004 621904437 263992143 547995215 779972405 334285851 471555975 534452647 104110659 62141999 185513266 396691959 867524625 126368442 34186550 176863893 574707386 115557734 610478627 794878147 581697155 434900557 894181165 499873448 11198165 848575206 667052342 388685914 703032133 15294234 212913607 197598417 567393421 272817206 939043850 607503084 207499151 439145967 321525213 751914613 846560346 56658784 90063033 805435166 731553566 656855571 518081736 437792639 161583928 399552240 755636185 286740506 780918314 11366223 103202405 319379547 25287328 365784046 841497222 567848334 77674350 416395249 407030026 747247086 285078671 649849316 395858012 685784480 141831717 44636353 527973781 445462441 222535546 864008416 501859699 685157626 480878084 969942792 432426845 144231793 631417438 979786598 462562914 223072970 585905484 642554513 696586300 505646512 184441527 959403652 121104969 897992887 748960946 270827943 47284366 932869461 969757307 384863684 987985598 700880106 876471667 692594451 112500527 416105923 100402726 490706222 911430109 362110993 386229574 269111324 785848178 177766121 497597616 928442701 777433662 753260369 384224873 86483090 123061561 152321326 528574870 291216171 952036093 876236886 131372947 225237178 555603159 6020990 842237651 943265360 607054259 880280907 367325692 389307747 760996650 757311812 45767900 224370890 674423419 654016218 933452643 878931921 619703692 600346727 225586351 272253216 329902572 944137772 763513854 8917969 273675221 493219155 997965762 118784094 830861092 676230892 906857099 340979628 579940960 970129136 526863892 733598220 639027642 536870723 950558785 763729968 464535560 7052970 412423708 507584565 624567243 116808666 783739099 171093667 546678310 110211180 70589141 223221602 549065711 862063582 746347152 751993550 353497750 465056926 938437560 769789089 794267967 783261944 447845919 36721918 249958831 858050600 712599232 356959607 991880021 100404048 212852415 605285884 786348618 849740920 233762918 148277742 767964238 178678675 992058922 958975763 873288646 304646009 145422758 393391765 134958784 685118696 146494621 606288907 354962424 43890574 604764665 636221041 360124363 186152699 259240654 401052975 600521534 74667945 161260374 377946894 790646018 264350199 697207288 992848712 685596782 8839983 975962684 560240246 733016707 126494337 887828439 51887521 500341990 45528587 417854883 944227637 326972134 233521608 765510818 522208261 729500286 538488487 893924099 88021072 817114952 581210996 269763863 2527421 302831502 248431085 721426520 406253397 435221312 329794993 281795692 963325072 532174580 959962952 6394908 205827660 117035243 712284966 372907100 48542415 974025736 69777570 517262152 404255170 853465825 93878014 777344293 29231422 760576164 307595364 239253336 587331262 195929659 123050212 54909307 734972968 261770020 561903480 403838533 763060939 487331987 689160451 239477402 928955482 72074335 632452938 257319558 497822194 25654277 214979072 63475262 594824475 47716271 786048449 444534042 967297727 160133419 668115213 323829406 318195765 524534001 451320649 404304760 913674299 518849820 471532491 817645177 215343093 985167483 292654282 304929691 385779182 6733175 329774698 194536195 946997024 822129450 853118898 245065724 899238374 329949778 271946130 636232697 584315140 191335510 486281703 77119383 298954923 269238857 248642671 381663636 891186539 274795997 830013908 237185507 753658693 691370611 871314088 861761169 461205660 552046100 325799013 26012891 875264833 656324206 500473448 391303719 47532903 73655257 316290305 815065338 827309225 543617616 799141979 810608142 616129806 823547523 721169811 728299836 675169797 680142520 166702504 968034948 673944928 312329708 786666631 204089623 322048094 361922748 886364668 22688322 958096039 490484337 213411010 262061190 268006210 92574198 893708159 842815619 141291433 309167848 349014452 447582724 912072888 811618434 589441754 66746623 848644020 593931439 2223941 434090636 399730509 616627963 856366905 553231857 584417939 358684061 392971231 11970454 178650119 690865271 552702535 939888656 404170381 767835150 767515241 523393821 514496115 657559187 890918954 647637146 169711725 534749914 601825872 425751449 980811929 28715366 688039823 76948299 583859578 450371934 916918655 961743367 803019523 846974862 825144737 62300757 385731460 959151475 362755165 615402975 906625212 204182053 902918662 319856248 10767568 817446254 909504468 676255005 770822991 259906241 696441068 721541358 190506541 17344048 111304530 530281017 996952772 296311167 227004154 471857519 311275743 564506385 791594686 845362220 47605161 53915382 748105052 814325813 136361140 23622633 259763331 936897653 66180864 439844933 645581756 94915067 617964020 208303890 713249672 670525191 108478045 917974785 23069253 10668027 479526253 877440873 352708922 356349539 83668928 770738503 941381533 932364271 74109538 439166532 735188356 225700732 798265787 70797745 966040817 443633167 400718499 609687938 399041741 92795858 796327253 933177687 453540843 90260248 881543798 173084025 754072577 151715164 855035414 379591124 333530802 644430403 235495080 796246274 424276618 500603542 242860044 80933187 255923703 918403913 82900611 452111740 272008273 156025463 287903679 785124924 820955 851121253 19896273 424328380 904976833 306390651 360631351 261234140 331793679 710313041 819707096 66913568 522757569 210652829 633571584 395869627 948165816 280341573 661674086 597206400 894649278 856962388 281113636 977541619 147993221 439396861 521035714 165315382 438804387 61973404 957443119 224087836 24315292 53162420 203875515 577778204 744346585 393257198 547316246 229119573 64570281 36028450 191959958 686313613 412660550 513109318 603929497 679597362 257161429 664861312 562143521 263824225 382175578 712352540 825157772 368880083 305704907 531763853 197517475 86843891 373242876 855496044 211094925 916371151 233041331 495684222 189566436 902333981 472823190 242332589 953049510 456101695 595251771 532338446 93137205 125975609 315715349 761162715 472011871 540918973 995163529 118927737 421340505 832721187 740099037 74412656 669051331 60420454 662106695 119743863 304287134 290792496 902381020 867159655 905624155 137354705 226710945 130254658 166084046 819809089 307188092 752250167 785930547 268471066 802178881 792633749 284977713 990138024 410359719 811661019 830461394 226547931 875626833 49715114 900925329 519020358 776566214 966410702 161425478 42033965 70953080 914137914 817708858 500626034 13650371 589187851 117665046 784651433 883320807 629634689 730944244 118609924 764268041 553778696 749620559 698730088 909584191 650247223 528937739 408143451 103455104 57132741 419238518 731420683 476449456 84226967 580668999 391262284 239744407 375009719 80231066 745996197 682992355 603626585 226653684 936298293 89618480 75954137 493170755 860417488 758787328 314120379 323933659 449401582 480978365 985320615 570539128 316075946 292639413 210371443 325706309 805623760 701608225 665992217 325596360 910724301 111431719 472599997 333577213 475699895 115713994 815432361 851274045 304104782 590726659 851155283 423615053 810670843 51134373 670186834 720379995 625288141 709865331 46520942 876999934 225700985 635113237 863552911 270706483 817649502 38130718 922378185 241993309 880893319 393142025 362352473 223570249 423218080 8484403 961374878 727240494 991022851 777505001 838147878 43023533 388706476 363480153 746461351 412591811 795805765 381207710 452550646 104325090 894793499 554992570 8757788 575959265 98454310 104039061 631882048 286243832 778565127 899249152 881096122 927555538 235428864 67385780 627066624 935816312 439221000 869550935 346543288 190737505 944058289 580350314 785956270 274497899 314933820 884965989 353230036 991095769 886035343 178663327 75418181 318196568 421365307 846951512 225941061 539625473 83813748 615237306 658641983 248110927 471230495 568830168 298032581 491073830 799492031 678359977 764976533 192507606 416114562 498932238 127785615 103561232 623930179 551567828 579073217 789638647 235445375 916705961 670215772 196825100 258369885 682464037 215464126 896510782 109412270 313793485 944953704 332007649 621624296 456655878 337347334 618238387 27567146 811000614 26822251 809752794 355042620 863108962 339163026 622551777 767166351 784437472 358878881 932396225 366466102 384715940 152527070 977106643 322228210 984686498 739093953 10760159 515506732 773707187 496927714 837618705 469629426 962887320 726487047 702929407 691150077 135846138 714503705 892381095 238129320 285188971 800352813 4613994 949310718 616035173 397862781 552538397 745486765 544741958 884956522 692720876 299641101 800750682 901706373 743698557 258699034 714707410 35848575 672169422 272627329 632502214 1446448 416560722 232088459 329036602 794386078 839904218 968977204 940571157 577810420 515535782 213880857 330084391 607357831 378306907 327331714 887030826 545967566 249241092 252670558 369832642 531566449 413422360 598502981 262008695 979938871 892550517 125033076 398463416 728367127 103307359 84082388 287281632 604396585 218729091 401644789 940391986 268390320 456442615 117696780 38134229 547375901 583463479 53646589 504111064 309481724 501424938 469035337 115106872 814328076 346776092 744729120 359912151 721870128 988263362 348107870 143219323 312885365 228969020 458224257 317729751 928010248 946022413 368839084 592253058 745049163 480279840 21658291 435788288 612007871 696239569 830215946 775664826 811981838 959951829 988257233 850867968 499353357 60825430 677105361 418584589 490781109 649800162 779522425 305381632 756078890 652547436 552298973 424399333 317347259 547882834 947269054 731672235 156314582 702031705 326003078 309405227 19224 184172718 568050498 811623718 5961542 150066409 549594537 740283209 419481418 486931714 538519321 561345569 756674614 786277475 775418525 725571625 599588937 161766870 201089249 284152257 748340192 2404498 62919484 393672756 144618637 317558070 734586033 480318133 197660158 892158661 282381538 742171993 385229585 199625643 783553316 809444386 167851721 720794303 295210347 688484861 744590672 412388925 7048021 307417527 723552509 57422540 619907371 846661896 701453125 107157624 349316317 484902297 996552145 901722552 720258814 679703021 59756393 670949992 150363604 102646388 845258496 456929997 166926402 359171213 140242613 947888276 521882840 849512309 182982342 301636050 310293197 686758230 449674403 221428742 776942336 983623235 885132251 329978645 754379002 54640945 54154028 938649674 205104616 51422471 368479098 643025756 473297828 343489928 766272718 127694696 403844010 590688877 894525277 544911861 667265060 319414856 188117632 212084205 81544415 603046300 63701437 407960742 959505493 181674455 819982781 512529631 63940257 231691844 393644885 685461436 80158860 196349726 962447999 910117834 656390793 386466442 212411743 132804097 578281900 811385741 783279934 172382905 867554483 264486683 918307221 524329658 366380808 923091208 590130424 422157876 80132537 263552796 233426478 218286520 245696124 317361660 157365540 149182278 475416243 213338172 126551019 715655491 694791267 915664213 208067004 676749688 476382013 556791973 82820095 773106209 849746326 946691191 839823674 850909398 338324847 888942334 410885159 39877025 688260975 918629201 327092378 606309355 509737957 507156594 903103131 893671305 796971976 769373259 24243029 216596411 673045430 12157100 2881561 401947686 950660346 439646799 209470818 523371991 329255040 857333718 851083735 986406464 128449507 754600649 265852737 318620741 84409949 219163800 882888082 695610661 383152600 42084257 774270950 815759246 9262563 777756703 516066691 751260313 745315508 91401022 316745935 452625086 629302318 638741010 361068642 559607017 632340692 16659089 811935732 396606819 956611800 65613981 981915498 707333343 314252561 930140929 922259920 212493694 412018685 754565738 454525529 211175365 475335874 456757365 410406238 603740576 369055797 275708579 204953955 263102311 761857991 998372699 429120533 814607058 302175385 421411054 774842694 848785418 967016562 801042075 819982833 674043547 924630722 705191290 982741819 688503420 181740451 395297694 73332588 303836936 194804432 467982576 962552058 474713094 976450737 580016721 443261822 342697123 225345366 711172219 96746686 46815346 426902905 591422746 927966116 41958515 852501877 751012291 401824581 616812552 771706449 818786024 982398936 14400517 291115713 721299696 940448706 271534998 415226903 568556323 817237137 618297696 811295573 675486896 11766775 499017828 255386147 713949107 940757195 834055440 175896524 175302699 518398998 98499133 593924173 513573123 405103616 460124195 896566594 243574026 548138205 220733287 691753202 136633855 559041577 129709595 110400847 833788283 111467398 261728433 173091052 369333261 269118913 27073286 312522253 119215653 342300108 735654243 199948692 732363546 853646275 350925169 650412055 513658929 372408806 941294405 499267268 676034961 472387492 554332254 924394117 72914250 438231185 600242341 889781465 413785688 543855973 982278496 992832752 183521693 428394244 530373704 821170855 516755679 220544892 411219580 840927607 65259472 671118077 419202431 626803082 159784715 749522146 343387197 679390897 194381582 13720242 948673548 309029215 659148612 584448277 85969325 51903927 544603394 468838110 135929406 245023870 392463997 551367179 638215765 178521636 23082452 189492413 809864929 600766402 537992726 880637505 659028030 495495700 55989297 919491081 262203192 224107651 732814334 122931375 998825974 693112863 205259073 503552760 642743059 875046557 21707425 713817294 482566279 349711709 607199918 59254343 557851321 210097257 280912101 641682077 245359991 786174316 905791650 585512752 325246708 350870208 524415029 360435345 682365648 54048867 251079625 365147501 350173457 461011197 563477626 140541860 474774816 301660383 39397195 607158584 696959702 883760378 262593570 714514770 625448304 265672183 18274002 654014795 911343761 860585748 762478612 614034326 354997063 298148677 525267080 590152926 149137161 214447137 59472825 240183018 972973235 286717668 255150360 438588847 585267081 620666746 163989758 152214596 733746233 953197936 603448234 156993011 75652059 463348477 468751947 303573282 440678121 103423489 833667564 294769768 573160006 943736578 708228233 654929789 679868999 918627889 114439172 945145414 633204122 40977506 585878309 63967695 417847905 357663768 32774301 265107785 781360415 287612539 529649158 382831889 953821121 403344469 703724259 412335528 767376538 789082913 347354009 699123900 817486190 373514750 904904829 703416864 382088797 26571955 496675526 920014540 828969204 309959342 495104407 131169769 433475885 933956105 113563383 179030973 449375839 579628672 844572888 643097791 299632723 733611645 432964118 307801733 462007860 274036748 712179567 170288344 571613083 694362088 931898511 590756513 325743490 52917359 678214402 681020147 671043408 224010406 397670729 441655304 312585169 836349759 26824639 134794823 603167290 554019216 456969135 497990966 746235690 485157016 80883275 753889932 261143461 615028224 527634349 162891557 967087640 433410838 865742290 455897090 944825691 752411088 557135787 945424718 786703782 468847568 30589953 654347102 159683491 538898269 529382547 321830316 255118173 346280547 516662527 227471324 265164616 304579962 972242383 889812155 566413124 560944357 150539636 649543990 124285847 705467784 630627144 828326768 473659882 335632371 819592335 293611943 836247126 170849628 184341869 158913352 481882200 933079207 620470261 712924135 16630227 39360340 904421152 739125821 196155925 513844376 548020179 292282672 366201557 656043592 335370706 792284360 537595183 698999779 53330642 946734908 236014246 725708178 879498604 359712740 91984428 766541603 917254174 847524934 272729874 51136266 125845588 132878093 361046552 218713455 393300318 245064457 100663395 416977166 886377337 922593846 819242620 268334689 821528255 34091196 131198304 600802935 577627198 411072995 808190310 952081941 778262248 740559642 209227605 156792990 210289301 483156229 784208218 237710627 265757447 273284193 907095052 952636764 740316900 515803931 92314982 496103080 501945025 406077252 323660752 939823860 915371029 128622621 381162773 129557050 890937410 106218754 53658985 66944648 506092435 233669252 121258604 203894776 435823669 678362965 186561059 518304557 798381380 155426126 213371385 512168054 312128452 486542452 950671300 575071439 496831384 509797363 19750085 235637973 773086360 135122204 512743068 223472076 234837881 192678507 655844441 275554985 507019995 529700996 2322800 206313215 368197707 428510515 981482177 414154765 317600057 286622313 974635404 212470717 344474620 448939330 749956229 604341150 461170905 575567107 562862780 738674149 211004148 399867927 104115377 17139827 25652068 371246860 812377415 42943438 526699552 168413605 80107212 778505257 273008395 780804033 62705654 155017812 601859307 938589290 953266402 499669206 897758320 92975321 918871575 781349585 666073913 971216226 701719934 360007446 372672195 590776972 53048177 230558492 687825784 63359491 621034411 361232388 438684074 91329432 455256654 819105173 179883155 558833227 538784494 121673019 335297360 10208567 281000315 931631886 999578097 889962158 695155540 130174161 262674017 281829664 187483199 52547815 124170621 300637228 247940968 835288931 465592324 498197904 530471012 501340921 421201313 649862205 979117618 987965449 531117028 607456577 587405878 550944667 752534856 266052825 479458111 645302367 613753901 998859112 936771711 288965547 959017436 306306684 376312980 66792575 792729991 368048580 428145287 795307649 21923142 6996001 321563840 703646977 979048733 334763150 836778520 643174388 952362993 396155199 350956746 728638206 886372502 190900864 96301436 595045989 712982214 401236947 147697212 545052183 430042144 370235604 828589952 632466089 299414830 206781013 916144931 748764255 400023651 633527619 560580973 776734235 915621143 145382847 462992391 628851312 44464267 994837512 834048264 208113813 121067239 340495242 600592880 856725865 895028799 304108509 926495907 639857776 641625480 443464117 893712491 946985184 135948203 14394875 783834369 251929739 398568041 271491767 766544257 634916592 453299574 788829725 761955182 386869305 10353518 287901063 570567099 420690482 367499982 797708410 519321529 381969238 545749765 255938467 961825316 756569029 58186589 691981778 509722149 347336257 190933012 343126789 906264135 64784700 795044683 808836443 425807231 997655501 449438217 218638883 301257260 796419765 634830144 389561039 281436946 596389720 200725195 757228027 835698783 206983368 38993515 648911464 232176807 745431741 291700422 334502917 890364391 344678547 109190770 514450659 778019463 39777363 947795172 37521980 508152913 756224427 30048640 925052278 123729276 524207347 300662414 679091482 661392294 620121132 853297728 799617501 404504786 31797755 368883631 706533272 25153648 379294385 127400925 430864976 517978706 519341891 524175024 251270450 569183672 861054546 159102461 48778127 495308871 279082278 203374716 675993569 40758538 61211821 633070797 769312970 278372729 227777660 120209532 585583133 951979630 901744087 771950326 517182405 758027571 39798945 813325467 816444641 602081393 676341354 321916324 954200244 756679998 862410604 823744321 846423977 199976984 107609478 267650175 989950546 119888868 154687293 245727065 594677356 561796337 575376063 124650417 967755740 974695922 586703590 266018894 445302697 708428038 537172018 622067684 537762569 176041136 816719305 526722059 183934037 201107166 679594105 461648963 987419667 656056294 828164537 612222199 422558186 120420742 260575402 566726263 874585011 65482723 713086229 860290558 801965671 847347335 991124069 172972202 645820711 495547243 301562548 790875273 400364607 643855338 337249216 351177609 999873061 950602188 101981683 576524419 306719346 640018492 483604313 38924857 560165609 139943118 112783529 745525332 115180150 295701122 438539330 904527974 461772845 916560063 995363120 781287657 494097992 830179916 758664223 763036733 988210474 474743395 203647588 992473000 871301217 213186462 500031747 945116259 867760540 821081863 645285790 242083457 205359034 751582982 306083208 431102980 469221308 512745590 212116153 431007192 8025549 413800846 526900943 887713485 795123266 694522104 136215054 341958298 308304023 151663294 168795240 227787490 294155371 910329689 936795766 197576241 554268300 374309026 473790071 607257842 18166766 835155169 101041999 143970436 686052013 998107586 16638863 392713767 423886089 635111258 319260269 131854339 787095150 58226473 963166411 383950376 14760563 427623697 722059311 237497746 260510159 740794465 104308167 764081953 327377764 808176845 75858797 442863260 487540547 318215538 938741405 971233722 71907741 496875480 677545857 802325777 562148297 912504554 693514213 496383264 955129169 270434302 460490307 918586707 263911131 874710481 551130298 756878587 730017084 685631368 381462033 794463312 557403760 405275569 690734262 414729588 895014553 585105727 445780418 399791984 77955844 191882387 142495220 338288953 732808995 966314095 679473332 55389856 209522577 863481089 547326734 355611503 944804115 760972001 285271229 520184395 119044496 270608392 598995228 766673858 939884320 976788700 379466806 824090452 196376829 841694510 360170938 436494430 973410440 742610225 833901565 343767340 855874126 619304064 750118145 850837485 145954564 910273829 126041963 978828217 25193603 194106502 756204426 224477588 238329038 892868225 780069974 893733734 838449424 925388876 53240945 935790850 187560094 898635152 861222687 870611232 433802229 205514074 369474895 500278881 188511666 990696737 466044059 680104524 224111013 402396605 919257150 851561046 949186497 691652727 997032483 794780889 114365215 860472315 557344216 163178512 605054725 882919262 609140116 751896877 933333469 676812576 703021369 789063993 48858680 29389860 286644552 315854899 387102679 570481847 475110902 669261816 603009175 919481743 801043480 823705428 122518407 584651977 991423534 774315768 550900695 137929961 88058719 858352252 838536679 817293278 794712186 395487589 578128438 923022844 88655604 117494806 846365811 102837507 897943027 599389924 17397869 620503317 201598262 146085642 174301986 91566529 233199152 140815271 175644084 664764154 465100026 652719299 303587952 849542688 656607057 983824465 979701705 742579961 465697181 979738408 721576792 948253870 288999917 555633677 435950307 649311960 447042297 88085670 156484434 598830197 971495198 339505289 364797882 619708644 933770596 58728489 452829272 871420664 242323071 1358826 997580174 9889254 526904766 690717975 641193190 554050123 984097318 148951263 885575188 542012200 556853087 499320667 60211701 491660527 756226226 904167052 431901576 752881267 59434012 350496607 20812028 556318194 936852796 485796001 833948836 481064978 263551063 747726351 792279035 724414689 13310301 330139972 952666787 220027089 402751716 429576401 795170151 899885504 657625903 29054242 196735803 259745780 180886817 949330322 229001274 719503645 618772298 604964706 358221497 50905933 926149860 787508412 138103794 714699265 674085068 819444657 948438953 899685662 962008203 630326586 861276806 963533813 53259598 195447862 563946865 54545465 419987182 1279090 508009072 185164037 865482472 148871582 81635771 710019040 388582759 610422866 268851372 604469178 150279735 303847184 189696197 98606052 321115599 450654530 575740592 525888285 462039632 772859961 538003270 821851786 348179586 853152813 280832637 253903033 704308434 936137534 684045945 201498782 253929561 420347515 350775428 544472217 617884631 555635409 526246935 903687530 735635119 161292311 614993350 197389125 290585588 752384531 15148123 268165306 27207004 306723693 559332796 168263625 167676486 448969909 427891198 888053973 188911804 717379941 311650397 769698221 498794601 289511135 159685690 859734661 230996391 987173736 91216933 982396155 973969525 712103737 265055949 232800532 921546616 187930979 664408076 297265727 949401349 348236525 77009899 441148495 134414347 361189310 330726800 350618241 987947311 757655976 252638289 514521212 217873847 337118052 106383528 147974476 368038035 771370898 344329016 135106153 403760473 909499839 17568719 553780394 850569542 205472599 490013788 992589660 333361734 581072055 721951230 355391782 619403238 727945247 739847670 389031712 48002140 185679031 128641199 425522121 318555019 55994258 55055550 47052290 151114231 753050795 877537758 154171421 516021711 534540254 503258609 909126858 985744362 625298424 267496451 255663659 920478923 219179436 770367815 320786115 832533911 545893007 101359640 226715261 223418651 757391909 956912379 113681330 993212624 619288276 43660696 905837598 525959129 723993843 683023303 509569000 30105079 980683703 839964799 578701979 777916572 299687489 253919461 546719786 497891809 975022747 191952706 118046713 998226307 672081590 740523020 468324807 970821096 19659119 938821855 443973827 193934115 256256898 823455099 708477571 76765161 17651866 112464077 574181893 666392216 74198090 396280296 690782892 96593978 254762760 809031433 241107782 786336124 561534777 470553744 956792075 970153401 504286242 703433739 187093652 1606122 960507131 72326444 675396840 506905532 781730260 393400526 889493622 202790013 376566455 345175541 558975505 438733856 984383622 502430412 302828535 416646218 529408023 52335014 162108622 902439232 108536099 762286590 823383201 259333360 162956105 437994872 808578024 408532467 596061458 892007647 164895870 795718279 57382130 811877158 956773034 131770772 351797825 173167209 279319064 519973800 427456064 840906987 574930143 515004412 547845401 310601161 330988665 735849328 751316698 126332796 523998926 587614601 195169411 537933791 610795818 383913846 70032621 495092763 640415556 59048208 753158633 569390654 850940470 64121301 994846497 730862715 574703499 664746989 747065652 944732718 393045545 381451049 384497312 981312217 558776171 720959482 785020112 719921448 215492617 673622663 86705428 374197230 93358381 661319570 88609705 236829992 170329442 715942798 183259306 484981495 788653471 913945486 281195301 670192807 846026302 414081623 241779206 264466859 134890505 679471947 743237935 857256604 570886953 742073721 933494361 102077507 629572660 900717213 618341424 113159302 898963240 421721616 367353159 752193916 890443371 936196064 426462484 609421404 761005000 644111289 156902141 872722063 585918841 314308080 899799878 821869723 100411669 46769288 427773475 492691764 71438501 491715624 762480303 774233654 231831446 709688604 231095271 792491942 850917821 543511646 828543926 726213809 999147605 345476239 147124719 973392546 466093831 140732657 748244809 110941693 886681310 899978870 797126757 624949089 748291409 955824822 516846798 867710617 417660219 942960367 710386167 877308312 39300577 721189129 731254836 477816188 560854003 789451410 166734283 308057479 293917315 321534916 120852962 60269091 478188048 231252093 231632781 645376485 568946050 414177090 890434243 165718150 602709280 540459078 192892260 855070701 406639526 24097884 269039166 517243169 535483692 914059270 159575550 554714966 102754875 342634092 99061312 888550123 596805820 227556957 145218693 198232161 427990281 946228557 278540085 601787745 639380188 260651102 903275681 233757633 53117530 109972824 453820419 251608698 729195282 197539752 725102715 724890803 240735483 659563366 45746709 107217586 327089006 895367763 873666238 451940080 364959795 448589011 238892372 811430149 991042166 456510713 787975319 610586290 778910156 177681272 950714925 961040617 550297396 586697394 412622762 134495926 524331539 928807855 997596553 817507417 128416565 824547100 843787815 630654515 242118606 139226706 850162896 74267600 382464639 419223120 513530036 688841956 107341386 16055484 154438126 964603464 673195933 708219110 994035327 999886082 144528719 428748485 453054797 210356027 437563805 578285561 574353709 966139208 107783976 880832200 638378454 415983266 989499907 710882597 490332394 622302446 408906400 97211297 283091699 165123832 810825436 468075646 71750243 475078067 851189502 833183398 988107919 556718902 521201844 207976614 354732220 78536650 50972177 405323188 156694290 546306777 970160784 938099378 845565861 460148210 293450781 933326117 223207786 60089815 402310657 301476924 84652356 500912484 895860209 883350482 284931325 768569514 101184267 576725347 44051524 122440667 383453394 775418644 911116727 484336721 677607481 140381881 800721360 717585294 597463696 481497287 1519104 923545664 863307926 293860703 454408595 525065529 67593072 508625221 429014725 377092213 304368557 660756202 635887541 677258263 842638398 512601444 27401069 565845352 133904773 346749303 117123807 511559646 101873733 669810820 2408421 58133524 397341354 130760607 139307581 978504908 942645580 199127165 610557587 817295859 541708841 867906173 209030520 996135321 44613026 803063718 76326501 124945149 365386118 191792553 570796730 700404609 672717837 747013851 367201986 354011055 103650511 536687935 703690414 22897724 277886935 983351671 85402520 724856579 197092493 591908311 501394559 591194117 691134666 972607315 514951500 841236078 327341515 549916812 872360403 490364308 47788339 835670216 267006668 785324017 392451599 141208824 293679833 805616678 209082840 23168181 237300096 324561409 607140200 58840376 308870199 527110516 832910853 897278061 79360338 338274202 390654556 456797665 686892823 629034934 538625413 337151436 971873964 516016182 297636347 443865102 955104036 844604842 184775841 856601905 788341882 621835727 825590214 475335516 574581386 702390406 267494947 52663663 449162275 737044701 190408143 997148133 463260658 451609095 912785747 914957285 55164819 294208093 977983133 923336254 794550918 704244325 457487870 476709481 983404850 977520584 904420152 141702021 258343918 871199835 894763630 435004249 323083758 321251606 882624812 490556755 941394004 622805280 878861162 572700045 898145069 689084612 24368772 856162243 982620774 312652916 950608448 744270431 847008987 421544395 183552457 677592428 154285386 123525261 474425526 800973736 279254880 448022948 835106820 760822636 826204333 57275429 497304856 528795076 480859560 543124041 245769408 183885660 14722230 959811703 313657395 455159692 831260959 239227958 951633416 27268949 238716944 894616890 544559434 548771931 967470505 104328290 872969829 259501038 848558054 385917102 424032300 121357321 493534644 241810507 508124385 957430856 831351779 308335496 227419426 252837107 48265259 180192743 973281028 736780791 381466669 286344967 275057912 385774063 563823220 265570226 122910939 538100505 918562160 47193823 328817397 989741146 51381372 536413348 599926510 195711045 546177240 764462410 526380259 451283980 426763950 197174842 776212042 514775700 714441743 308904200 713012493 295522659 322775026 587426927 180028021 284623781 52317499 570609488 91177532 95835444 808702387 440634809 32661373 420232078 358526728 378393562 812222396 584021210 357824473 471767315 468141544 95043819 260783779 36378851 921543508 889592882 865915086 52937719 461011138 174521556 380268465 467077922 592998226 791500180 820214144 864407137 338119060 729260772 590522975 308784597 140522623 559882715 81434454 709171913 208836205 855720246 189985622 99947186 578802723 698756191 525539899 80219178 502787022 539981413 256067521 694711796 816919559 620898557 672578199 338708989 606245576 826082182 418552139 852164695 803686008 745171466 510139733 541747261 955346148 981810232 931246617 438697235 323518528 426595941 240359904 342603621 964108843 37093010 404069082 101132770 515415206 709159782 916140578 704677484 54164772 714819888 774127287 237427457 341440377 520597734 555690117 182566094 402177246 649527595 988552025 631529255 56198909 273432386 382608369 755909764 997555936 541995548 153609963 792214925 527124479 478579027 321110993 158275082 147992374 933061664 879818260 933997553 314770891 363266670 357468177 830469209 650612329 506265550 551710210 750854281 944178215 835542133 497462553 940989672 349295491 182288451 631913566 507788817 723957598 221977021 603103698 144735670 196191244 812368149 25551698 689231297 287393342 921661728 177054121 961989435 707925008 639029344 215726982 866982743 41725453 808921082 328027781 752179822 31278106 179790015 946586663 297304840 776113812 767069732 8478931 676930767 193935668 713347403 694763738 286438292 78739489 464390650 731616123 70461523 542964967 237448607 257351121 479550000 173633402 335200851 223398887 318029685 221467450 72274898 510069166 9963671 845412844 347505289 38993921 370035505 268387516 492276867 244681630 998073604 750092097 370710649 421955125 409807102 739142773 431283912 971852110 781238322 907915200 820065401 924884840 159410907 404594670 127431227 716874980 609313113 720328246 651620199 858607370 552389435 77449011 641261304 221679372 288308787 846110187 284071578 690060546 679886620 539695821 757353881 677995758 683155707 644192427 193445356 639354810 991585275 972209604 345135414 319678521 642162794 864099519 914876346 485977118 880849866 527845284 278805867 133217552 239087549 702844655 425511644 188302229 432416523 646301305 244205649 740284960 178055336 398142088 258954924 531246091 197801138 553253067 679641728 378910870 302082413 158671700 101107972 805476840 880434239 605292962 614436631 667285017 212585151 337572250 906290238 428394010 517832102 97024138 436198829 612671696 772811227 298310697 65346870 964307974 209207653 403964815 286075482 296375661 529337979 117450820 197321027 549009819 531388533 76722998 477325756 529778450 13831383 740936634 373911614 281254206 843850831 113460878 21738731 733937519 935110060 568820439 775195271 653860829 458618604 25572126 643634561 179337384 396313650 210693215 680462577 12085471 78218955 671068915 825127318 593913199 282250789 971543967 352455899 866706992 203295456 614319763 557623753 167482086 250861500 963061345 246415900 312816184 522317992 913445128 769953585 266214074 630875572 910823662 722284815 496231909 473034271 574254560 717539687 515263769 533959494 304118805 264570510 448171165 21590457 66450725 184624774 988673702 729580074 548423960 994991604 870896716 412674679 214524764 521866025 611423889 934665375 265419206 511646491 822292827 784742349 362524562 675587688 547465855 363651928 629172328 789294265 790827189 407927736 355316562 996906977 727354013 278715284 454340551 590944401 27158466 247668403 216209061 86439336 538822548 313119499 808772910 454070547 213782126 119890359 918952468 566465117 210847377 441275384 654774889 792589756 345349922 50753084 290103466 766016276 544527161 578438420 638570431 659027178 637370059 331860543 177857521 735846252 239025081 658647964 345090555 766831475 209393868 275576376 877610997 2446205 338137786 866201926 702570085 389593266 337533207 565740323 609231163 831783904 950567782 118427727 768490699 354532993 484230675 554873974 722096848 903870899 976984937 788705645 649754482 80535355 909515431 859665454 663009342 694080138 969303274 257136607 759738154 398886841 758355519 431977159 199803792 129344133 263198871 789953883 950515512 402229077 787376327 837642038 623687504 860344888 696963989 958494751 252044139 126161896 285482151 100863227 234764933 473804482 494014864 592362720 635748871 149340622 756577993 188681738 529502397 20900794 940060851 758656219 453844952 817085409 88521881 947694304 834783741 373565 296334248 137046475 741987885 164958585 435192828 479233142 897688274 717627363 98057112 989119464 862398152 215427185 561329507 185180233 769476681 474183877 893393965 619321836 830816249 408630053 425484210 752925774 187755495 893867391 987806610 119760147 849975943 210917482 241802326 543964933 758803896 338394152 925122160 246216980 468266429 893266336 845060920 675730787 739105862 549692767 766237682 192294445 626485607 807125149 697668804 550367970 915128987 838978618 250134977 338357525 575764939 190730684 501290979 588938623 857623104 953533525 701422088 314934021 101286835 772847577 17260028 148234674 335141184 208448455 152914288 625062331 597345389 137145929 853580029 834293367 887319591 503024431 19563298 326149996 435985344 999338731 296902988 209990982 844652538 46198177 321393356 803713751 516969465 309966871 417600985 549765145 560500296 142214844 513004180 205966643 614265822 923113638 534464520 751545195 234032920 882889881 629863717 339301433 257412796 452250101 246949319 517208118 830414069 224913359 993070506 726541351 22924891 142096861 964846460 792022516 766137064 608486779 839907789 533378482 671598343 638913204 829636117 931123871 687186559 597870902 794382262 119985177 90345351 235927384 655788282 383764143 705439167 470289179 43387923 90500883 243332393 129518372 122258966 905648417 323334963 799248322 451487752 365945563 225731507 933250543 93379026 962684780 469472743 445339209 846604612 253565482 306060146 737099797 34274585 996035469 701667682 434745925 260384752 218382394 734094638 412101742 359614291 520856060 459815346 792612816 928622260 377266374 860444724 48321620 442826349 900680116 384512862 239989128 631187133 966585353 685549642 727006117 917597902 209140271 148376947 70309511 32240051 19235514 362207677 380838070 921008483 782183 286863734 344676963 674604478 772353047 250529621 285704292 550722450 580406228 680552311 984003385 858812813 483477463 569185375 394926601 50912072 216117365 576023034 526372770 930267719 867406387 621773472 849721724 558793968 335634621 295610893 855660216 773531031 996854758 26021990 820137243 532686194 467364522 719685944 389785110 310792101 655338028 23179386 408594878 735995961 519036601 3277703 988018645 746288413 728969918 208825383 475589311 41061677 352999389 238205314 125625487 343454505 858803159 318369076 149799929 1150650 875286421 245721142 738090332 343129968 25994797 841392622 337768898 309930952 313127387 796864297 563732442 20485154 187407102 805884700 933562107 643775428 827485988 310150246 536351265 362465763 958214146 584849932 157508855 435058839 459237488 970781307 187837132 379365345 121011572 528505479 301433748 85631144 495851833 671353964 153772275 514601922 611198991 452645588 109055789 957394663 250633587 499214793 592213042 475368372 536437514 35544511 141621400 408159416 287694236 89100438 26007201 959395937 419208737 759863443 208590642 634832903 94983856 296853344 660733149 88357102 176326540 341703446 205643476 185065793 800491556 363992882 824532988 724197643 564035595 655946137 398185433 828881739 826911734 518564756 657241498 532263647 133117648 596217055 784305947 259773840 689484448 497484946 896927700 639139090 315423641 1944631 758601200 496314367 232096536 534773431 472498494 848125140 276723872 359508326 902718295 168800508 985707229 31884551 621475577 646591944 25977505 940869306 139600968 146428788 406351844 489979152 306097815 896718879 853092560 562132735 340717308 40572113 506306733 111191775 990648377 664661628 750971116 54463353 362308017 282786044 981231660 901446392 617310836 80012814 49679150 970578932 267888701 909078111 672234463 539043435 183341670 523588222 498545232 793087165 942395129 502920165 687183294 950726844 984583591 159272948 511533453 411911834 149821122 564104951 701411396 648757241 189130833 191961885 215384218 337494745 908089075 49387904 759127147 995221674 648813820 969220897 3281335 17766208 606184291 703953897 379210157 184658395 828334791 461458859 67144091 367606812 453555308 161620765 414123008 192567573 417522503 456031971 403783552 920433206 878380269 529222789 434606054 949429345 299204248 747898740 688455970 775669977 139339833 455762955 625830482 67902539 113338199 956058760 612243131 743589836 401733165 924382233 649413826 673624539 782618265 140476365 931650817 849584477 622679844 289431450 557090607 669060252 472516090 677890919 501679409 753878608 272423926 71377912 708760595 708447897 404848535 752322048 472705797 476820470 566982656 420809499 934350438 687857753 106639877 698400457 903467703 804117527 858329369 185847664 912412068 991022312 344310367 611810149 19227905 95662841 933555613 765016030 822899143 279003603 888132161 820460544 264444188 211858282 944867940 757667280 295597385 116457758 191827396 889221957 410923203 715596978 549795019 75145011 844741411 43931479 95210882 183883868 461605934 969182366 168467625 358202477 906273488 67137926 449745047 636156146 5428762 238806388 809579608 65256040 453143627 223861046 840299675 890790192 104369089 151180289 568062645 674729619 813349898 790608498 757351335 266108351 57284315 958027150 43000086 35919057 635105034 195476930 752302676 310652872 496103840 843688420 500414809 535453073 106546887 111096881 406313409 680703736 897773265 257336142 515724247 199019962 536708918 199935817 708773764 71400311 825917857 689699479 571034983 355736248 640502486 337765141 657200058 284716528 994311629 235886342 294755687 790430836 757407390 248849436 791287545 731083659 784382351 886627945 116948908 914817371 503814665 493142891 121848926 979367412 445830048 489386759 193057430 716247635 417793806 577257610 403058562 393796437 533374267 108998571 909920509 780571847 125116461 154827653 684372096 932941399 176947225 542156702 661022263 318630048 855906907 25305317 19827696 899831844 349907575 94997676 598651938 658944586 593366805 782685107 326212846 928655975 104731400 284168990 901413145 491976368 46695505 201893243 541062930 383982408 941642511 408494015 939049459 68729147 168957583 99508293 315109497 112922996 716817473 4440533 571411978 428532691 142658754 829554844 664642490 251421717 527112919 761606446 247072061 692744931 44300394 857760651 660861424 587208400 655250830 664395285 905195998 74075476 451098494 503418009 573178551 134876628 470676382 117738830 340159692 371035797 365406841 574186963 610177060 364134345 94638786 130676267 987330914 698409099 768768596 387021251 454916311 495327193 817213237 769127022 406545271 665912736 507199115 921993582 428875749 973134255 709050796 436696680 413552999 948753089 913902358 147483238 472191723 203109748 126013288 480514270 819638795 704141652 664928367 605515952 238771203 932031955 638970911 12677916 784806074 750709576 18789777 951043799 926864837 275041783 982365706 876348143 984849236 821171461 654134262 447125987 445645645 971489669 676448230 446995611 956556337 535464819 865739158 334319969 885712946 171959468 406421740 278295788 133253160 189046269 721200878 25916762 700373650 50064917 906441428 772808495 523276950 647732366 590711544 191935065 758427397 262202088 494431196 124930860 999195989 866418575 946293037 937805158 871127204 564453074 641676475 429713197 726472892 216199146 862731140 200909323 437111565 204360186 343216298 914928635 900881835 179047179 518308986 146132052 368861269 429553932 839924583 506309856 89632116 712069337 119968523 232768715 951203608 325139250 548682025 455272873 743172600 771555264 655553196 305268342 535982193 77451284 173644457 491212954 744839053 948672168 628751195 429248229 258771961 890260959 926424357 325334148 771063567 657048319 115776913 736652317 514289610 780583739 768826450 776177839 606818773 822857899 292497479 199786664 928036990 386781011 978980974 520317667 934718908 141074969 609248503 842125207 537614128 116761551 778195506 81637736 961483550 294374958 753895324 928692331 621753209 188612314 113974999 215066382 805464277 711196250 987436720 396881714 266549618 800551199 647716889 849840413 476781625 768034436 416061228 467294841 933984695 837575112 275388975 65197403 434726181 611990807 882131082 634319171 854630753 210639999 618488276 858292758 201681907 393631995 905449158 293591328 969488907 32477549 960504900 759023127 903746428 625789850 224729179 301230616 477482956 269041978 958085945 231422121 968497950 248899811 554393661 427990709 53448002 226459925 758779114 848608659 570984110 486746426 324765674 788081664 713034629 964182181 630380051 14208288 587528330 902382988 658027871 745954181 47003183 222817812 625309167 498101790 309778825 884473667 734866703 25661259 125617497 634113036 114794549 638099922 802649350 243535945 478462969 517938655 280642463 156155833 356197664 163160584 518129372 248635140 240779668 120291402 651689499 758578368 451028332 614852875 923507043 8179812 502697951 914546199 374802021 284887890 889237072 219017634 984053622 231908817 926502223 862626636 806493849 905324565 277452682 743250203 120483440 870666037 258883807 888368760 977807182 868694578 497967440 897455933 754147371 847022839 587419659 46778532 295563682 88855893 762345055 356962386 397149439 207300100 948251850 335588183 929747247 557840807 985786350 231786278 420545479 37942727 997383064 351142559 697209355 653100498 538724282 951847170 55547871 31469095 451276654 608396032 975801043 203975427 461007866 814192560 487635229 551417230 914011080 301922700 695694495 983849182 983376749 782623608 96272860 18245354 550530721 631643079 16075531 555817875 406321990 759023401 509647099 767220130 787838573 718256060 999430190 10214345 876410692 486510601 733565390 147797920 463621674 637543416 411364006 846644392 798633377 435387873 434878000 427723086 719521106 816681346 519409549 930864094 71138580 409892094 107652735 941736343 213769185 545010149 198444153 815306644 589577945 772348458 985014161 484058084 11194442 300663594 61828997 461154420 518612139 768789164 375975616 579822623 855209872 59474396 739109711 359965606 400337601 419009104 268199913 922951346 454283046 39285511 709978348 316736214 483241943 875460451 106563938 263702152 98175755 984056881 561927160 825077293 149879079 95135913 896636424 504051469 335331252 937977702 632064655 634501718 317039723 176483182 357936949 195542565 673870880 213296944 385904969 168478331 274417627 142586240 791055552 168517694 704602567 311937178 527977791 23770181 460209202 126766373 364187400 893533251 222889120 856543021 324486668 6095324 5947054 594757415 676856034 76691867 163869481 170174192 101849546 941664750 724087045 657249489 742134698 519957043 232154202 67114098 345884437 317370277 107314545 72929773 748244797 857525360 796467119 61612220 52162819 489971368 556947626 646001348 276548593 228560707 874002208 77675860 810420531 970182947 657324017 15972899 473620639 766725649 798181158 993609803 28289465 648542654 974222585 184312656 887553700 2078404 856747710 481882661 515142963 646166948 454177791 817048601 870223835 877675976 940100963 948686828 438090426 205569154 614414780 777786052 424376475 91725320 15598858 183513900 897140203 520132734 615677293 167147549 177337790 968954093 958252593 668604914 956835035 585675332 191841480 928991086 852506272 235518046 864729038 992016579 882710052 850603773 711283721 223394946 892428061 407585481 651680097 985437867 219807461 840413266 242003432 416584098 577497480 976883476 889697503 935869236 153424565 256944240 618845604 699415958 373301440 107596974 753663682 95521896 594933676 438939649 92064499 447935405 262839841 665691007 183091208 568802001 559730793 653302827 353914381 622927274 722212734 731689455 20516905 825374585 691104258 793836698 640351152 4765151 939350840 655976680 397161758 468406248 574520850 642315131 893437716 853594895 109111332 111928791 805548384 250559020 495163059 429573490 707763190 664622214 676688289 439500453 472962542 635096781 188586110 946098095 280564877 158426131 275294085 803863995 699621436 262565589 203302545 632701401 841478547 106426872 290313258 173940227 275528264 253407692 578805888 584789529 108556352 430379781 876338285 645768422 358279306 652207038 285235306 436165916 562801749 997578368 832618916 363826770 932014076 175546166 310723816 282173963 491013636 328943159 23516589 493484716 632040474 909947711 568484627 956697741 781996047 229488753 169836767 75046114 431715549 793506143 437375619 241926863 959858600 857831928 338779671 252615773 758153916 860307873 156198231 143760764 88412815 442178072 481688747 263806212 596423351 679867025 368726051 748143034 777330425 665030298 253409913 161098054 982404674 78592310 737220615 530878776 94900133 667986888 511179223 340572168 980033883 829809438 415311512 276837916 229959113 559589996 63727522 394996408 960081531 587910736 739613682 714842899 664771872 456620496 159248691 109312134 462968986 666141528 301323952 273302850 165725158 566649790 490439268 21084678 493253428 477102398 742643180 599301721 42074836 423583870 185405841 493402614 604132932 475598221 673712958 810096767 555372325 384220895 910686609 440817277 72546883 282558543 565632706 849838174 417312401 575534630 74239423 965850496 364978728 995002895 617767698 76585249 637682000 916913182 839790068 968615277 396381043 309912020 385974599 946146928 294037536 308185876 393873037 975001386 905660952 862868266 542631160 6776441 397424698 501875663 801806433 372211749 234311317 839241756 141131332 889253346 611126104 856652696 671000268 748852294 470112739 758692658 621052356 42977750 47263668 299043390 10828710 383392761 189502842 757650296 11895441 281661952 155901446 134812679 601207116 271100964 294656855 776471671 420088901 457739912 464521611 134364605 380846741 650153012 232566256 519447608 26959098 211051547 35087356 772812972 701446876 17232405 766447173 657623878 273179978 498310625 247173008 622164124 236658684 506491436 477073357 994100395 44328526 212902276 804501254 593031128 221249100 208222564 810652287 109626864 596672421 258081583 658958743 823601963 983679659 575611180 615855833 865958691 637676897 424057738 305875192 268768733 544633455 228682600 913083347 500461256 448511522 460036035 994006891 737164217 738772850 531534980 486630121 886483948 151672064 788456320 964472226 496177417 888683536 330649453 1013267 389605914 815013780 746031341 386484444 887182998 557577507 133078409 913328074 429982554 206100987 486936243 383765200 333503916 77972996 382200002 894937356 518306873 297697997 51038715 453369788 22435861 957258893 994473348 680653646 185376700 443046178 549639283 88136279 258775574 602363159 244261563 412429969 562856817 673154201 472054849 1780188 901074561 182485630 852169676 769633094 226795875 575241032 170069006 685619204 308326554 768728604 465856677 492522606 276971030 164156875 497356043 777289994 159407149 345951176 414644140 902897025 930644634 700690744 525334747 968316326 173885828 9875424 605418958 780795001 379985527 34283310 70312362 309942550 14486888 227418941 330573431 492899279 775297974 382764487 273949218 441008912 387769127 695864118 386049931 607127165 680508644 663580056 674543473 408375763 439882372 281174441 160892280 969157628 124614918 219486144 183772472 299048978 758855632 161002733 775445801 451277899 920555949 459341273 224746411 692276492 499728848 694878172 945909254 288160223 440063194 430818809 393558380 733790329 306734033 527943635 94697465 751684533 751822623 823694011 126482858 806087317 519599005 767404713 547885932 193546053 66596739 649486651 627440142 368851991 95045498 420500153 497977162 17432713 750001039 449826578 611955907 526436923 650101815 766223582 219897596 476605947 610712398 564097115 953878127 990782139 683500314 648648816 471173231 364787863 578073418 84201903 138417727 72354769 166646769 556008269 349410311 110925268 96580236 73437224 593950170 642525239 401650946 202241994 643821235 922379696 552876705 227198817 136643951 641834277 529825051 894806723 227718618 860677283 217809295 756124530 935103396 992326745 686668162 413963666 847517545 441378724 371454946 612513015 527690663 168368648 694450181 161551891 573221832 281577521 19248292 278685961 979676445 23264496 336264426 72144540 968759265 479626819 199394657 176643905 794926130 622284363 759225085 893077002 223391519 350369875 500041246 468804539 690008467 229301198 825620360 205389239 748780394 397531994 333263721 297659664 747791975 177446843 371537495 370406269 328055086 565301462 8230986 27507803 603512407 12346565 718440367 93335474 607123284 420911806 681175118 467695922 99923343 378905641 557234782 654811956 650231113 289164686 18784637 299401143 136465078 755784608 510787501 750393182 602000627 800560701 956034143 165442684 897242877 944828262 783107942 125388806 254688957 613655113 50318337 8442526 410820614 366245429 791093203 747082123 422543249 268074919 133477867 785438136 693785599 482895171 865232830 613125312 565269722 92382421 686495273 129202661 286485395 985373261 412955761 283191046 883602048 254889162 646248259 291007930 134293480 729516941 330291637 27454517 745779441 515841794 827739205 162970710 13019820 41184189 753030102 58927780 378007827 152035705 934873782 312988497 675643399 30999574 419668892 441609008 579185745 339905188 802362020 101003461 598408354 634226261 471874130 715452722 839535766 281013633 56597143 3996490 545988011 942604462 22870466 517699717 407051851 321079176 474797974 922162174 765005000 493525472 519905335 79428481 438269531 34922676 408901424 322882682 302235173 805334308 827701368 82074882 821571119 717029758 879739756 875334358 526143595 965722677 867472339 279451745 714016688 471622882 181133527 832134575 3054276 631295306 290074638 229309814 213868876 603144793 840092792 110348827 625308891 64514849 388420471 621312160 960993771 157261275 981865432 8929207 765087960 689625327 526230741 866925238 859771634 726362597 669752580 582956189 90390889 225800304 168286066 165189392 544981074 630881135 923754631 496388453 878338485 786962913 360225561 856972 625622132 64085490 401933159 981702954 299799396 167079416 545994260 129192578 466609214 580677997 904694064 167970695 161392293 310509043 90746158 926833869 575550750 778416213 863084525 517031061 388720158 557113222 691652015 526294981 598918397 369852837 265657381 883793133 291559163 987068658 451471714 867271492 840828994 487740121 219021541 264615339 804480228 254480620 995285136 36789158 162011611 895410664 583694261 830781544 273308166 972293297 584223239 12392388 564523312 173751631 350691488 925947710 307496201 311740921 162501899 455800058 932232746 986350599 104068659 902789320 918120214 5716732 615723883 734489375 232098615 4798856 720228720 697829918 400967642 294548603 453725548 906001039 577859388 83587022 198742505 973955293 766910847 798700969 32902108 100974113 959479718 743458133 604130212 647365915 199777451 969245762 895813637 712753459 566639712 790999827 618883372 365673845 184775819 904802434 644967856 237868954 681681874 573883010 541683596 156162309 275008201 560591139 219917606 436438966 634897639 966412703 395903564 402974051 650922380 226552156 548001586 640496223 662888198 281412323 940170102 139925162 498711939 837471976 572009759 907990764 693802012 546007880 620876183 506173812 288438740 922964995 225849013 788627259 765152915 479813191 97515444 54967005 184519723 694324581 789631550 251673507 29969237 686623195 456392028 91419772 598287026 450006601 831623303 546148095 139205579 34127484 409716374 676210285 996533776 258926185 689656022 159334059 584378847 411289384 598652399 328314694 748570996 348590078 108081910 693466237 416571388 811676502 728480364 16701480 998291076 46666178 743289652 220303569 271325450 955601664 755982237 34804905 231946092 322185969 396994649 441140867 967954038 734997665 640306054 77099233 625777878 65429828 813302699 989038312 708308521 63548210 359433397 187259245 659201003 719411954 467255544 68454368 345372811 853528112 219363891 213903207 612495959 359838394 705752715 433236930 86612614 496667025 277757834 380675686 516941375 409551829 514564392 826392425 624868745 211638737 916950725 843238535 298972242 661870073 945730081 368855597 632694647 72669160 381518955 536190565 492598712 633138530 204910392 458209254 818135230 71052628 940694921 969476374 151629853 190388941 958418621 120718583 897486922 423859211 889527207 72447543 418866088 504550768 93595512 891010609 994923393 21230218 335281872 47284704 760380677 690847497 473290930 656645360 599468621 598984 997692815 537277102 606477148 788272590 198639158 343613713 866361626 712260930 474602218 575124409 172459610 790477946 581890640 555183339 216437970 931373809 167222385 497140379 933217319 539287113 326649287 780506971 276994782 558299983 529567787 929672045 645615469 196880114 890981860 11452855 597119786 217042258 878465184 410540746 211586390 866152114 604289141 278630364 20044829 344922235 768578781 844322253 226824079 469407810 918332865 914057252 782753442 794089664 771730538 81899535 764047932 358490331 471762066 298826086 460737060 650014876 649889619 778803626 362618893 431756343 36108853 541001984 483990668 960065801 563166241 40921913 738209832 817918098 435675248 685453514 401858118 555789695 637821404 601136596 694682169 896138916 522218895 544473886 269991993 18726906 131587603 441287449 785359976 321651111 338148444 455844566 446379473 782344437 726520011 874507034 222691171 638799703 423494179 686647629 684318455 909547881 725042832 91813498 792595022 800781804 16525483 317036123 684891156 380465869 950008429 990951502 197170392 250824224 874859069 276192349 79047191 922258719 411869673 722520115 827323179 199505711 895421350 968442921 870175843 467280601 198757137 712013374 609795054 615087825 730426414 400107292 669143271 899207411 851207790 69505806 124547660 493344065 110964642 7939854 953631755 341278438 341885193 220573115 510104048 88908087 493042761 33114205 867876537 273587886 545461870 64295391 397990661 533038064 51868911 290372573 261591644 719398598 890326181 924324756 602102321 80513829 710638811 328343277 681588444 521066535 957853242 415632244 562774176 560306958 363409368 407109476 682790054 795805257 788768308 829791386 846254590 68770408 245550645 762362270 725392034 761823017 673505313 860689055 951885428 730034285 54566580 31987316 273680955 550493503 124248073 803554204 452834987 996871378 289394853 840551233 580519771 723888004 571811444 233851439 234647501 910553561 381737423 720923100 498864233 806931319 272042095 591153005 429313411 358445620 680830077 10533539 919334995 338025228 884092290 10875121 949478906 625929506 273679225 978059886 26167936 576921282 863934395 907856600 789695962 427434589 857405965 994009238 433271004 401687438 194483614 61718457 438284877 260388381 864758787 443841271 908567507 70145262 10900025 708333233 46416639 683841307 313381284 643669995 330488907 704572637 153156884 161933654 164941335 789470356 126230460 631030346 287622060 456995790 644287034 529428933 466611776 357374017 327640469 11182958 791344102 929793218 271350324 567240854 215139493 311163995 177678069 422918965 139959651 333479731 989135889 641480935 900506865 73219996 151502890 126150644 650670854 576453908 666192210 910369357 979716425 403248959 968858622 728379016 428675136 376587495 701629960 930539748 272644700 650978046 75528121 292889163 271084281 553288609 239809724 110754632 501363539 862404883 867655462 718347541 260738457 687558847 105544820 321540752 695552985 157589559 373542543 237649728 67341578 107367993 346063041 853887063 695409683 139099045 400638143 132675497 371875003 603124872 479680422 735326902 145599153 653923095 469099261 487460777 480805007 215645354 436310449 969924683 679311576 71661767 269395220 956289815 801225460 300087830 560896491 636060714 476861495 423779181 426928871 604200528 372105940 426403015 956577245 762784242 429348083 409531463 49156220 652337708 68559771 646718775 354553233 403823036 929135546 9789706 958932446 304727561 10290476 534087775 864904594 244521505 629487540 785781236 512999746 30641083 269785081 630585272 69826285 596199993 976618635 586245054 792875764 103616929 753776871 231954753 447416614 361479074 560023146 24097185 220134842 550854290 956418401 581842286 563735115 413758066 155223035 403038040 416373985 973271019 600167249 598987581 14889701 359819592 662874724 710381852 516760625 647783811 207851298 204036645 117915646 358244155 545467223 727441832 995557877 426683316 857786813 915327523 171300126 839440354 678115574 807473719 533764342 765558618 545706125 7497647 439683156 182926685 564144624 124239489 765218431 435231697 938599803 730194884 96666660 191294531 362887535 172277439 205895259 153990892 555603699 403510748 390841758 94139308 585765144 662715823 326613715 23421707 379181531 259206641 567564870 976503607 224745242 17832071 646628017 779602183 699948448 620180604 9186859 554376952 46618143 884467459 317802813 414586934 852637740 365923960 383038932 868745614 275454797 748107612 526426181 372754041 984504809 956377439 983256141 351657490 505137745 239457359 556810255 934529061 511895998 489844009 67792669 958425117 421407573 926646545 225798505 229705748 209218843 512697427 427924049 116792777 920667392 9627489 870092184 659272609 144075236 499397076 612889200 138988974 942891139 558568820 522325100 564741798 455783044 5322027 29779081 894804715 778834816 280765449 947616299 606864255 322715115 723358796 261759009 174360341 329452068 344628310 761140641 346979077 170258811 228609973 337576261 18407497 876755740 574535193 255919636 652735118 150812451 486389853 592800893 992236320 314695055 783453062 320153427 639929337 61564232 154371521 260678868 384560821 623997733 526987103 213114277 393498524 178574042 81187801 251401685 444608673 239173132 531147478 260122580 646012502 623020353 801617697 892444551 931547901 814465772 508642731 320329518 513152381 494111335 493925520 502206071 525231717 299939568 378882068 397238648 999177453 783424690 851445666 353580974 478722547 931236289 987322060 573177598 912709887 801719059 603691089 197596340 695462206 528331146 912086288 629852298 316607627 379128047 727774998 805915544 471545444 306152178 178458774 425615718 416662766 876178481 757049580 12638945 615832061 917748009 662874010 983292763 220579842 124414788 113808718 400543638 83264290 249545172 602964182 224863925 125030433 298105616 907335218 524382021 746759022 224199966 658761604 632211004 90612770 766875394 745438230 876633593 804554492 325167537 864176479 906145597 637291363 871722755 84763636 623009847 524934245 801482937 919873181 82442109 105012155 616327547 659336005 340220172 11102404 406344156 706272764 535410506 303263623 850695510 7920640 564265477 187689392 938290504 44801716 304166255 783396764 522064380 529085091 995802919 276458825 877333925 193237633 691889969 27418459 714375002 442512422 371805949 104637984 37685278 237601177 982412383 295314583 942240728 943502341 481286802 244619097 633987164 977374907 451249983 260161966 297738337 966601782 433721712 706081926 310906504 446297373 335908509 383968121 982231135 447286073 132514211 187621316 981340496 954723452 483961796 640727891 776709048 763629058 689997233 789150128 461155290 21208337 846292093 163947285 174425308 909821967 758635686 113833310 680320978 10903445 966391057 166926617 787792050 65940313 399213069 371262574 975106913 618225475 538478669 954061881 836780196 577985625 890930156 306073334 251126065 973110226 938841975 570288591 676348574 151882762 272018130 560700816 592420461 492362112 284095067 96535477 295789831 937346020 474948553 758994776 554367678 892659977 546497347 683243589 526710474 641819620 399863895 693980648 511630414 443315616 21834489 466974299 752363859 76609157 977980039 390092632 892227017 234196740 122315975 103310669 289570442 455815355 872321253 361676357 764997719 310965101 360614518 484966135 747550936 920714757 185988216 979142597 575393184 86927255 618356307 892387764 83201323 972062300 706940622 340421492 962741204 869823673 125883172 151091807 941021929 539032120 586701294 578763119 927434135 199051409 96852532 958129228 444333565 948519063 933225061 381997131 572342806 113407317 681604945 49209692 973540561 888042737 375894841 794115364 210683 204164542 337746112 204075494 116500047 700404541 24410612 51427220 116765807 852317964 490724787 763779268 838013410 722512888 756367525 489424310 163014428 267702518 341163587 339544401 723886965 253911583 572499923 270293026 162043949 77044661 288931690 108814693 254424942 170461988 67092102 663123957 873066315 637035523 402491660 19321179 429756090 109840137 767595595 87149255 821868705 995104538 100433398 956884492 419559108 956863556 495507755 407273649 592111831 234677942 851315054 804903638 1017714 425416142 892415918 819296335 497764120 87549712 305674049 977032079 443044146 880189221 319614178 847578808 691219216 256688353 165006777 501622416 898664172 769878590 406864462 244797834 520986345 104923491 604402588 603078841 278688269 656274840 402356735 398766301 823486792 63344722 788357688 520399198 631523448 321465898 715157114 69450571 650422109 341666791 194025814 40390235 530158239 920400751 870250701 838770671 745345743 332319449 834327360 263792139 357031782 112387936 93974657 734448224 6681542 726807654 192464578 766359366 784200251 570818681 577878944 595846333 584333041 808753734 780395299 967482216 197568260 447075248 903032500 185335707 269242742 57182903 678796333 173907531 897418801 382846597 550533318 40385046 585936640 524814444 678144552 117168198 462145700 762178283 195909986 697233867 653578684 853785253 908479972 561971767 767534030 415764834 363710609 426838222 257471056 574861081 769398441 187997047 251925910 985556193 544006877 746058685 645754343 713819136 896857150 380475869 254016616 58169059 17146190 398027698 802118187 596316698 734319345 770495941 832511275 917912417 731076976 239046212 765278023 862528157 786484102 497814027 420520266 176423127 898457936 811187091 976224741 346994498 773314382 221235204 681396400 463233084 250823538 641879603 463236911 303159879 88321552 756843921 961955783 452690189 309730532 879894335 399445708 585862755 84331029 807208710 122326902 62628673 94175023 141534804 804665579 285432015 925437481 151477569 671601453 845913941 124999261 451840393 619882032 357014856 384305555 267729303 490213073 239426113 818978040 708390266 420528075 661697030 65678368 61585382 859109580 900715392 670786057 786608958 958664034 47395268 184852504 865791113 198387210 102404876 52201245 454728308 444353826 434727868 261126726 320618585 735896053 400398175 865302585 507218226 749790642 627459494 928874486 649964205 55005303 71750002 343846378 100370453 831728190 938017728 248759535 590703969 125340150 98952895 553592125 732337203 112029808 5478080 497924474 6923982 918083938 807521088 738680758 606049574 903670897 33856995 960602213 325197778 309424164 865572723 428825444 785066255 814813931 316502755 997115639 992121283 785575971 756727885 387252943 493925505 570580745 467581428 311617787 407838844 298361288 788550985 162823934 435218071 304056949 993239000 87990970 111993433 671185410 621511264 859666817 945622252 90366807 33502150 675559681 864390702 848924217 92717584 7906908 185467805 416151643 821907831 922527510 842139485 512418901 451956048 148825631 865270078 409855147 288996644 195518663 839043003 786144963 342857117 211189199 217883886 537199087 148790154 327388763 902547875 580840552 413862637 718097144 424132164 718569555 622901730 285353116 17215983 68577461 416363963 223789988 533720413 713753216 736122853 32866519 973201912 577762702 292616961 339102813 458769616 994965921 559643599 358690512 751190427 14451552 377152571 651963948 725589433 70217568 812979286 334601945 327643953 116773655 995606369 780770463 638577585 207357413 333316792 939493812 263364496 687129623 829243629 354194874 651559120 11712988 169265838 956115122 142251542 630141006 157735387 251472395 218036148 204443758 640797299 228620697 238674078 79941670 735313826 473905818 590650741 208165703 374525631 922885300 474849665 352640648 644833344 231147251 409827244 512166543 421134026 453862604 951132564 954741473 209690666 240317727 372914807 664239854 596654162 335628078 495144504 27860244 399395935 306553766 982927978 522456978 364394387 951361953 32593220 876618131 51345495 704037271 789597860 288192549 639700287 633591406 784633619 711778627 771140616 317293174 287525053 462667470 512178326 9420898 569535613 223253902 276670450 420662355 815207630 529385016 879290706 774236872 833759964 662808674 450218255 872852403 939959156 941015438 309188523 124001127 323906061 69512231 356102356 292049825 995189702 799139448 956747355 586265225 852914278 724118467 651142463 343984041 20081503 702626597 392755870 491183353 135788231 589642917 18138822 441191891 571961947 246800441 302425643 177607169 959663234 384125111 149421673 121791147 311592270 960703200 193159487 383410027 155779446 140672606 737351068 465913146 775673179 388432068 315316883 95880576 777116671 700519050 414378589 932045576 115930644 758422544 316203871 797064458 437291763 316541602 464076580 18399267 416140694 583012719 105524063 212962647 652892587 811732113 601584876 238229266 434859132 223522310 383764685 579792941 456736772 802155711 598804271 503574752 966999009 550523271 330180707 887811031 546530905 671674391 166027751 698921753 487365467 229304853 822285147 294342940 868343680 847483909 177226125 868865475 973353735 715206747 251467629 677430604 796589271 480719473 34518299 364984680 830592893 193938311 20100823 584470573 81069109 114317253 437673996 467621143 740413400 336424254 72192591 206472202 638766069 802125546 584726104 468925525 819875252 895961517 673723664 449082796 333475057 307879759 115616895 302596398 704477481 238736766 797741270 958891104 132500612 914312407 117178226 474702895 552296145 641093595 341160920 354086381 912511110 476686833 654476466 441269851 466966981 818863725 610925269 913688220 739721043 847687044 656303672 643157825 94238625 871613788 696687361 985236797 524351428 166545662 531242107 193286378 719568511 522325336 491790872 366045970 148501301 827269188 694909559 893150689 377115383 930875783 939663447 359338474 925740411 407609284 402000804 458850095 523009571 753617296 216532084 552144910 772079348 940360295 618403328 859874908 280685982 347832741 617020333 502904392 922526331 630000532 775344642 910305141 287153028 901468776 435670966 636582371 563849062 550787896 510512805 900837634 452069998 856706312 299417295 415977127 901076370 463703999 742801762 863537166 304442228 544223021 131342257 916199134 823500632 6596108 586650676 15832100 5597744 878188800 369805203 924870997 745842579 263945104 885557141 420628812 223012031 248769327 11014703 587816274 403487644 974694450 227809916 457267219 565479865 633360609 88314818 525727395 791490893 570276958 141442664 267071871 165654071 343502271 612054277 497045902 274531583 360288506 280239955 453320988 308931541 682989556 476440883 997374175 700788623 94984053 960034225 208776437 37607083 763300397 462341123 945430496 988884050 722839477 703481984 481983889 454544213 246275982 828251569 249019484 131795752 81485348 868134715 879143420 189753069 638335942 362681077 980337819 799100008 493713326 783671258 455730626 450738442 23307518 673892108 836058984 770118890 405062079 517408985 630025450 252562890 212213728 83234734 176112653 428422157 354721341 381536559 9977854 577212868 724657045 806405399 912562260 273985958 849539987 442778198 735581706 549618709 800414663 763525120 63140999 769936402 358098090 897535052 182412951 887623251 646423198 212201377 747318639 805541930 61256943 730219913 432333230 670722715 21716171 957546423 341281368 997217099 731915338 32450311 401316826 887070086 714067313 724955259 164068106 415600457 905817893 589372479 177483301 138314799 451981883 177594020 742446545 101174400 244051562 487171371 332062745 639069231 447288663 863677808 204516213 594625999 151434630 352826437 364736960 783009183 405085034 508323993 393129281 751025800 388402782 920452744 636368804 316882714 816699298 813317719 148813055 557554828 508976481 719221103 741640911 267904956 747223975 278104421 178553593 461852721 706295155 213393650 541875402 704089884 626534821 369264891 906434040 312781906 813598722 46101386 452241312 556111700 106844227 978690775 339885897 174534218 97070328 640310324 556447196 233796866 594232491 986459950 754599602 178788850 477490880 85411947 216666247 721981242 905832074 224117439 407471232 130566053 809856064 543385124 798755115 730052509 441425929 239508673 46956413 80687162 150830823 546705885 335745489 851397694 670597585 848221420 307764463 484618510 482285722 785941132 68655364 363077563 339257098 498869120 799479972 17242619 885829574 955372976 555395023 65502511 524518243 699719474 173288167 597944155 545317207 649241409 638402489 195233839 403030787 469398335 541337725 797095429 200457905 459086776 194105038 490997978 582107285 916692831 658910389 128889173 293823427 158100495 287115675 461451206 596651328 142029261 845565269 74116390 339752180 717150657 70827811 804889619 44299954 898625344 98841771 589121491 17770801 959712456 526396662 739880788 219096852 300170489 367300477 495303216 691099107 557306269 514325274 517937062 115011343 168801962 152764182 869919134 518996720 954685 966772255 133278631 236616652 987881618 536491845 373758452 309734088 569597724 507315975 737027689 358489848 652850026 950128717 840060301 619821651 508861754 857212768 498509197 227442875 564135533 171242746 86468416 861202682 785260046 435738934 702410025 808652224 597594449 23958681 502820971 590305958 240779922 895017232 81781719 75471150 146997332 31291123 707602660 667473860 470757954 677581304 923466930 618630325 378147887 655456335 389380360 849639227 696916247 927363963 41100119 161976441 115982362 427341689 975511984 633070711 119202696 867887520 260179930 721734438 252064211 113555899 319414329 973913443 872279188 125423346 475987162 107465705 412621713 883588828 235275382 440546405 907619763 185326715 216281454 947037289 643763212 370670380 462248648 556263530 360527581 230892485 975646003 316726478 968496773 346259826 724870661 195174620 888540302 745208025 481484352 487150021 476672686 337695992 736312200 57604516 328061376 269954112 513489713 786927225 246030534 163938184 198406956 655309100 792048620 598850826 382013213 940235921 514997127 168694123 322017611 887550047 171758350 155001018 278324130 249483320 882647080 193029485 110590141 555231910 266567071 27422558 856485592 671077403 21325924 87306966 959158492 962546156 83991190 302430081 904000345 741555551 535053430 907865457 800136580 16239771 693945715 185709094 99973695 420668337 845447450 74630024 858528527 893088667 890337834 46585569 976495909 616218939 583755655 565773285 104877653 51106393 73625913 730054068 126293026 363514532 970244469 597337554 649878194 737646778 939177369 290043181 306467283 549872413 285969187 600954136 402179071 395129647 56867522 286398549 554380114 481862215 768431433 213565954 145401492 23806620 101298353 453499573 910033977 655693907 552541983 463191388 304871248 293749361 306121693 227314775 917894815 669045222 932393569 368442477 552638346 431637137 300748098 287201222 528200992 318950958 701716296 246063871 201597722 831883114 558601308 627790351 683054297 398919381 839482512 87923548 49427038 855742439 96329504 904538294 412196191 814769664 510654320 464753233 322245167 91177839 979733004 354037193 474605775 207881310 120096167 62885156 318991844 759873005 194479129 797682128 84624832 560393497 107884392 905654179 127146842 274107853 37574336 510032856 279040337 805351896 38141810 653849109 450093290 528158709 724119036 622258535 82115865 879302343 71007487 177236804 112563055 719253459 148943942 193943179 712227632 764522638 698244038 109104765 923843136 883842384 450153115 808296393 419488307 817150040 405726213 182081414 749253436 556826324 985984113 255551535 269429565 780427218 810151537 19790506 204816056 367899978 739899331 907960646 606381027 963093283 603253830 984654006 966868370 254488094 871998218 765484313 187492932 682119923 105157441 336409330 624034081 199710521 410576196 949429808 709876985 591948401 742077337 310693158 453870401 643396866 413830121 347750294 478328088 678316355 698344969 571977121 71992395 67183206 506045170 47315157 451071553 178741140 375526859 114850600 949491478 626676945 187016411 950816247 746285195 977552399 800698518 217679111 650932995 867429929 727072922 540756356 191867022 400128477 200364200 287299334 743209959 233436377 371282861 772444811 55424873 526975656 166694075 352422260 185712156 988268490 720672268 227152528 371801779 863701149 629907463 819697942 448561278 30382696 447851571 426898339 872022148 268485728 786313798 387455288 388053609 808393375 380926747 712617033 413877112 982495520 490724787 571402150 70059440 415932116 345410621 102336910 996712620 624086151 620176648 245893286 26126003 531394546 430658963 498329340 126845877 393617083 342453630 881884420 395666506 230627688 72135574 519152796 811105969 807996522 34347729 154003466 307665358 195379994 106198853 807571195 158282807 756169403 252039480 815652226 186716444 685104502 651768340 251525921 54536544 306836827 507221871 527507382 478066314 898603874 38642690 132709525 759109578 657003120 99483825 774906224 607259383 570337869 146494854 661008743 84338062 878935208 88538293 424455163 355745721 669241374 271350682 334843933 791171909 545069869 319935926 659456798 452634795 794476350 408121273 949847488 459272713 979017637 633038449 899071270 628458535 482766490 294953437 136801244 665981298 379831869 647611421 79480538 110996231 816880536 52854399 336164990 182102942 872852382 300523636 690201480 757810340 10842150 904047768 213096490 949862694 264861940 322280880 625367289 299964122 143637165 800391590 373868015 48409890 569266151 420841103 835719539 15974405 361157654 256408481 638864212 543541039 150099617 21312581 484755396 398537464 592511435 794368258 370315365 594302307 160704459 683396751 400376630 227896083 576779191 251320514 661608872 263560794 111708304 114116518 634289552 852732463 140906563 644191329 726664749 247662894 819370140 452362308 565902113 29541026 664280667 709399505 482999672 245528954 140429336 731096999 723242156 864592717 98282852 863970193 161734552 534777688 244082607 348282243 277751168 189594501 848692559 724802201 865166100 371376993 207163526 293586453 453529449 182390564 989000831 559503458 575359225 341647023 53163595 91829783 894365355 695476359 508748771 255216874 364973260 887222491 145573673 30893762 182160915 596315780 393860324 107786409 224287898 315032577 466250183 884560849 11902699 886506104 153407850 909231767 84273902 492353721 365697872 237969790 79448316 666672188 801549795 595479601 50070739 972623392 752265073 397379714 82723474 668058155 507700533 854879086 516683215 374792653 992593998 8580632 919713399 321831197 783667915 23065290 447256045 135819738 589387414 329141242 245496819 675576431 480720014 990059840 280881081 584188132 632024947 999546466 266848977 565712886 625872107 463247944 474910778 243354628 696762507 212339209 324751706 926281235 691631307 824966109 862184190 350400210 848610827 661450281 785022555 763688345 734841238 325116537 138788365 490102120 250444445 987763327 828153627 484350950 160121145 962021652 378338288 902095459 496967530 560664384 641383781 830139605 768600091 189062443 684428210 126359258 151087133 798241579 284056960 453777085 550616360 772313270 372543196 179819112 573743326 536622965 344914493 304739448 154918857 441947697 214312314 7979817 536260697 870687708 89277151 337519970 414362089 935000722 575583767 988826035 165425081 280375449 158412596 338539349 701850609 310104 334029240 572792610 104114341 15599716 691113351 495379624 995193546 558831226 971466218 807154451 136426312 717909115 554628764 670318649 348959203 681413746 421981369 175087514 639488077 166311060 796335554 931665246 392018720 362802748 490497706 42496343 752038621 188666605 636639428 462414838 736537836 607758672 688865485 85620062 834976931 397112891 551320553 659160662 976470583 87344040 500289702 345338190 314037705 334554556 603259898 955983708 566592099 779193281 561210436 401692480 633780470 7355177 456929351 320585825 862646109 249603216 941392942 218142668 578397016 563876027 896395923 437095226 667334544 609195923 443735407 98745357 293871256 68117805 859531051 100693064 39067622 236283073 602518928 926947228 674049246 729210295 795350232 750773858 330924489 860730007 995559582 729041558 768740566 212955159 573545190 995626211 338835745 649856014 939738912 393567125 90303915 498058882 461984031 416322978 509249627 134428319 808445984 547171245 527165186 721266614 700541899 5912828 160257631 974250052 581252907 357963902 630492427 537298669 715131317 442462155 23868564 734024569 63189062 799043104 588010093 665871326 659075622 175112550 160346861 672896311 374010880 670961455 903699539 221344453 51898090 421048749 591818698 98289911 551885152 386833089 557760612 284806236 333636168 164359410 144128026 846368947 861606896 468150387 695356622 192745949 720026894 541770775 65304393 728946404 499364797 600665180 120549946 204320513 741970052 966908527 319690045 312461449 921073487 975821594 973212113 39090691 150387314 65293273 601193057 64674073 297378735 457333191 422111548 987634589 761266983 874153645 329053601 367246987 117497446 411983353 717049513 599408391 194385254 247945667 289300066 20151645 338319235 477894093 642004670 157968895 337452672 369528441 262722709 224110215 391379852 675175899 976729767 857198779 126776378 474816166 101584031 940621188 383881099 119266111 918031885 679891958 355331811 964467367 302432619 279255629 728039692 91330961 9165595 855837933 961641790 282453330 683082850 67492702 623192599 768565997 503231608 661879127 57227418 791418887 255078259 593020334 458360630 146373612 633695059 37927277 149928640 982851737 602340098 850626235 2551159 497779624 473894739 664808426 574712316 508581733 628360701 164524666 500292190 347046332 361762977 786890253 398233364 415391559 152236490 817193835 507963899 491750977 803061736 641732488 140504405 114449301 854036566 669161088 84076243 569157072 690774612 434688152 913451654 180445228 159844364 358283580 788582896 789400454 705407887 321794042 401403636 799042405 943193554 792714131 385976545 71882491 618473918 29466854 147372393 618873370 161143575 135348225 561226667 255944774 697422225 746949396 19403052 961909159 493098946 509448574 918993627 960867848 620980269 720303808 972276235 148783587 677800509 123336071 757711224 586935636 484883265 796693669 999927373 269825832 731422579 242489876 96655633 757924298 266553075 492707834 32891066 52592211 6777034 656267680 873257898 626765697 60934127 417251964 13897379 14170298 974946866 450540838 988848080 487925521 7353692 68977250 59921869 741853242 464828436 492446749 927281295 865723799 878839016 74993769 492110976 270537006 902718295 431289987 799364975 593553069 776879293 953215432 880582029 237406828 309399399 845078221 772871800 414198378 116609411 863986237 46962231 374325584 326264362 290297337 603014198 715279724 452082787 915702782 30960717 259849655 776996880 966102911 513076660 836093644 674648840 504258504 955150869 319075316 366848514 976478040 69553787 931312675 873429406 816858323 973775452 831798505 418909031 9988610 213773973 11939209 16108236 438296283 157524075 573201898 660710954 892241524 540924042 333979546 612498367 538820118 590473739 618243284 464910004 169327145 111084392 162824050 971343391 34267970 319021448 6612480 121090547 252666651 770485431 201992363 999809557 624504214 776150954 295974473 970929487 832190914 529691776 464719704 472448590 891731664 987536316 587310855 543225519 765922587 691965262 31573533 447953395 808261926 907789705 894659605 708159617 48333982 333627434 727224333 685171370 291112279 283197784 409039309 6256556 725313607 53492897 863973572 513413797 571577494 273722870 605947656 175664028 707741327 814703288 454826076 807568518 285267107 924028589 404557605 311266362 862410348 510372094 521290608 766188411 129971634 564087109 845633014 890482673 941544286 860349565 766141208 589630254 496755333 193863688 183863261 501532074 858302303 779112120 467055856 259521992 965590095 879646659 159886764 686408913 579959523 564775872 432687378 606124021 718102220 85738429 969001668 322510669 382727912 326398495 939109911 941766362 772035128 444531134 225415933 431854985 846769898 76473050 41979159 721611302 794413388 631022102 679156399 193065585 615356639 795735424 162499505 274939907 724610883 848506765 360528565 603984746 378950979 977642009 171354104 501841689 478927826 6893417 77065320 715398756 516107023 780120876 987420815 340695696 539738426 459579256 941756324 888707014 821840319 812246985 564729481 691677719 396189745 15455746 752054979 957784187 568578890 160674676 86538625 424474581 754343409 376055253 132550813 406739949 253795884 647677500 209510293 443226740 162815540 391521333 316269197 244642821 125791073 503512746 568314201 188608287 882666293 986114288 942665839 493443885 821520991 440359365 680650220 419821951 629168046 176523855 138029721 471147086 351662880 131378968 328690918 871365565 150121688 287997723 45830120 516565204 664383523 955268273 102565984 439864453 503684206 748143262 546588085 232803496 738574940 123981076 888078583 6545665 968662187 287138470 117012955 214609975 297322824 797379920 244411842 575636699 754321990 448754040 787017395 402124390 115232482 903242476 78162013 597155898 758995068 257223648 960231702 557621922 582587811 367573490 887644897 594919375 990745860 336003369 701143137 947531477 71827074 676193519 982924774 440860346 751762973 103536923 326783595 805890409 355882237 661111529 857520266 654496942 60810363 979316737 835563407 550936391 412095756 623684972 641244261 619951568 804727130 522718373 851506343 11847640 761845546 171680387 354877843 915588812 730210933 267066960 559244044 149991176 619876434 686067894 119955624 354326731 324556807 844813517 950061212 57307968 499475964 420748560 770215109 857035128 405601478 813453927 681743789 133523309 963232802 646704412 754652545 613708540 419754483 579236326 784805146 139034355 872054592 265885922 491302135 133832193 313905984 823151764 193368125 45199296 233486927 521109228 334941119 608727986 168112364 588794431 302264560 994854974 942294726 534027334 12326131 65907128 918791087 665358636 447826318 870195544 70607010 890745466 928635438 839056446 718527685 192686631 559469294 980909172 56587871 950091152 294775181 45268973 378480101 767921274 414364783 529724288 395594995 177038355 623292836 448540657 843874124 505572847 219178982 709574372 851401691 88043276 481065875 636663790 480849331 591054 822870960 807585674 215334159 220668934 615355121 280217622 702146130 752043495 795249319 53141724 268149000 379320077 172684758 802350863 835886308 505235069 220559909 968180935 830910146 26143910 406423775 248257539 743147942 914452061 729478656 328233392 213776825 827022303 484964134 250999965 679223118 828046288 338609303 760124548 610311651 364541504 724067906 67236615 78639896 784288165 145941187 917383852 136435645 991363031 740799570 873320425 301807807 258587422 129368539 936586259 990760510 583709993 854390252 838832751 218300539 148081674 316296124 643221794 347522787 143404353 341142058 69489729 527829767 641665203 200881854 571297476 335869858 211252139 879882408 61241227 881056154 686258657 23741887 913328227 11421435 423700590 311470465 802688246 295126005 311685343 715890196 467046374 145061346 28297240 732191050 856989614 72810059 321077623 39861147 163678651 737895894 502742448 708364067 367576922 549301593 293742577 253980843 194143946 525750477 479917251 336955041 999161382 584214616 210352922 585701919 613256317 713527618 580170582 408945121 352186045 268331778 798022716 759514449 958931134 384792627 537016825 590741884 257560134 63367061 72416033 829196315 511294458 168572692 808349617 754045580 923644525 156716741 366904334 104661207 783807767 491594723 771350536 480382125 348350298 863499214 193365972 546684513 671588737 897479447 816364813 660722164 462201273 966661740 578707385 377588751 725172511 993252781 33882439 104580352 775497397 359799001 166234505 16946622 756748383 988834589 144997820 149542120 146410997 687642060 233310091 34031046 6107691 657637216 599331839 786709832 968048034 465467009 915663500 445103364 599120360 629521141 216291345 112795706 320427629 556150960 104337876 424195792 694331270 381371600 398554754 232714327 77238648 86335127 410195246 766642436 923076972 463867504 841066072 625246904 535302259 312533740 172333286 824201722 543165573 926553546 637896481 756979960 387893123 452020461 330462659 827670669 94938681 402697053 789821669 349080370 354313044 635968592 903853326 884143636 714648691 267931681 433726509 535238655 132339475 179545937 251148437 250803308 890070431 892203404 396008451 765809785 486386278 30503592 196554911 547548655 219095205 4018590 45177843 625955387 318755705 751329171 198834678 944513909 970402030 445593808 719226886 458080605 849593588 54933960 553976807 908992090 737593959 714297369 831620295 106112634 307597316 684348804 150875192 108327030 72372598 625520372 101423420 406453933 101320272 487341438 309261623 534066726 715625739 334287710 509739253 537412495 919198725 685538036 491942315 702489665 537410186 665318860 844060663 183329083 434147274 373081501 958069981 855204387 663648737 214257981 733433548 418221129 685345997 309448627 990718619 670795172 329902454 456331561 246919813 476396500 364186802 402435056 702228269 762616096 221447736 204834694 434598562 352782710 18875304 689507729 915906908 122304368 236796301 738096852 739876660 416725834 103580761 989713482 558710387 898057710 661421921 99658252 376149187 326680040 717387754 932451420 680535613 251156084 67182621 249695397 2395736 346963565 362631691 905311868 651352320 996096348 633217196 481862811 234844545 283824753 493443810 296789990 394498956 929964416 244743286 791038569 131696195 992250893 298030362 113559125 861805351 48706619 956194665 430171397 160574760 54602716 896113630 716000766 380446107 419119463 344718315 317079532 413909310 465015545 351995608 872180642 16047924 372762458 386896103 155134232 559938060 584661757 217717811 631184503 752786107 906330357 900218310 891639556 35103133 868654081 316725909 492812342 933592440 438481290 100833397 138607272 618727547 263570081 388234539 992830748 490611513 960227067 787293533 701270398 546279856 58675190 297026463 513757666 353913414 263000989 440610662 633289603 391258311 403486619 351090200 951635395 298352488 167030347 973626365 552692524 697268678 560416680 922348869 954137204 493599722 698701918 650743049 940886390 913027389 492876985 762253900 333700661 124268438 461896626 75289334 9391581 527160371 823205350 895959768 982055869 919681719 268586145 872783023 217262165 465361455 222427341 791126807 602942534 619425812 970281474 842960283 320314718 638630208 724481411 90346410 480393612 827736825 62095155 464906149 871212527 731379181 979605156 385089988 420397512 905587505 542739980 62087991 307061634 632399169 717115211 503057675 227571122 340583684 971002087 876152637 379646995 862045383 772517136 829004713 802904711 632514367 759694494 501244700 977248794 315518087 49481231 319828553 33178623 926444327 473248395 605007044 931724435 457640716 615501537 711131667 803021397 53729930 956238984 328656029 102042868 258697057 995725984 653132981 455440963 626461617 490507505 736734609 74196283 995567372 940864743 242129491 681634563 111173991 472538778 864353542 192380384 288364061 540857807 413008285 200285772 367658738 360413924 822365420 168514016 506896665 898718705 315222457 724786269 390701603 422048679 408514987 507759281 517563149 207347304 621337170 142299117 902372157 633360186 277070379 266473039 525057920 388263630 30026644 606183991 225050894 169469051 920046550 934921522 688508544 232346431 567952934 236392181 700221151 554930880 247952538 70880857 156389013 279670354 502290741 198992478 975293049 699547113 450778334 238995766 690340040 469089570 180893288 255325491 311133223 692240968 35256205 273472458 794080421 394872138 697991147 204796071 235580083 73430206 682073614 42587790 794349106 560585442 777197670 150709367 689593193 65154721 120684110 686514299 699683839 424308358 933281030 523178204 500797966 868367821 198975672 122216713 501585171 383474512 451207029 916274834 535931633 52632728 618702900 973701170 341255412 575464152 391881176 318854352 38928089 252723682 180430380 75973236 845835701 476390712 899408606 7992658 524409103 104333059 295442059 192817350 477671894 600029453 522219953 607376468 19331424 353747922 761656249 103315620 553007722 250095471 214520823 290914445 939091479 834463404 742459042 978979847 620880116 189401592 870231004 16858933 489902587 145292906 196429489 266666855 185565573 78800066 738309132 208111626 196871766 723829863 334118349 959636414 753450143 676855399 801825199 75188549 838217459 674365563 690629217 609077898 157545808 455558145 527803503 85234080 369992220 75481856 253358422 500734403 242417956 434656555 752636535 386707540 923806877 645829844 283969562 171557345 130518051 46922236 176720497 544812829 721355194 493313357 480054421 602065889 562215125 654044947 643714949 475436594 676348229 249542214 284262190 901731131 493130822 374491527 46316895 740395087 881721217 786866200 497955539 395269098 660992001 966004465 659686953 399928494 800923962 567682976 261472491 872234086 101099022 474051434 202148490 564856073 475636671 772116534 162163042 893434797 357186296 333436304 339593649 933120409 890183891 757215668 953157283 972215606 477703115 129502844 433660741 863550233 636633283 534614644 667247509 198763770 328270861 979938246 140775792 965171395 249459291 878819665 65333667 257503094 607354824 869249931 632883932 179322447 509877473 709112227 487887031 755733925 710643594 943700579 324474037 608103930 137818656 629605700 83258173 645224701 302028380 822688102 320463008 751517820 216837732 483103377 894362141 30954360 702649286 772912691 296400591 788540176 970347126 278213216 861919937 364380563 245461971 251784926 113463268 829943665 106000801 885862417 426746643 815876678 546772748 843810310 108119820 758262743 858039724 971882871 284921724 321845005 164008061 223284418 812953588 629681914 876558565 260900593 869527275 752759774 926803886 707879598 403475139 302328858 948012050 557447509 478904004 588306233 773431978 2080738 898895906 882264300 167125630 535526401 656124148 895682578 673996797 758315773 465572669 578109869 92286966 838801100 192760293 523900902 353153709 651492624 296773566 967445781 745054915 881694738 736801409 209499824 874025028 59967932 908530638 521454685 316011434 68650157 450985007 626121961 908418256 747935002 83333654 412031811 807958013 915762676 981919964 284602249 929217754 450687428 200776131 71798268 564809600 303109573 924708595 608243212 953884010 876124883 511382655 87146310 998528126 469403255 730131292 776611947 491022347 544602079 263023215 993282139 609529794 126148325 637117313 577831203 182500550 912084740 421687363 756252402 3659928 787959400 334080333 343292713 739386919 698269918 306976544 210546505 434097863 711097054 303981865 989631995 961012534 917974151 442472117 928736788 930487451 480712349 929377278 495302547 163943807 841720211 347688743 325331092 568643803 964920448 808851256 324631142 291649803 661687330 308786468 602967166 270618835 299617760 719948482 566347125 714975842 465180877 580603860 467878414 863558221 601260698 716157699 4768309 841452176 276186797 94760672 749079550 186921874 949592326 386889447 376017058 755669793 835569498 696827510 62798214 531521902 692135422 457706967 264908598 487220253 434798323 731775805 939435621 474097453 185184477 437938111 482343658 840645132 368670732 899164252 606147278 571987601 340676986 223567620 558180154 159184379 982916549 465747844 86698881 995446762 319972915 444228759 904992799 157726578 419097011 671374555 228315572 369356802 483600350 381389788 141501457 158123133 638567923 629214474 181963045 400549410 525805528 10683584 770802187 421541284 909261087 8077630 729407497 195140628 482974717 949048749 392419721 130938354 920075342 946721055 850938142 140153378 120524960 85926796 719517829 818986224 891638559 754599639 477869980 456561941 957415587 93149127 355578741 603145386 408927657 422244112 297040702 853592120 242732377 640960072 970313558 193512362 690957956 358378740 303147583 626208598 384504993 202385786 524841379 187895544 913151180 349848622 606399830 210956470 385145041 369798728 461284437 977005599 364407325 695938793 891846078 97997094 261081287 207036440 907493861 369989417 84615822 965747659 167394612 228447724 16743899 90606809 335173965 376084129 767994554 301494786 597026286 716036823 744308710 184637168 939914759 930271117 187776956 376351543 512359593 729074219 381964101 777690443 873763855 907441021 958999855 716316048 811258524 989683381 42886863 458286930 716689885 160146549 499559209 427205567 845680517 536500672 137391071 370543343 744471660 506052354 887020101 707026150 102620569 727195412 807208529 803040397 774718263 152423472 254440351 304059058 158864279 494904572 439997562 128159509 635358772 665756039 762768080 229859153 86174901 582764098 899993914 716788720 44920800 496661776 417734645 608756071 599958191 189733936 499859431 418735371 766942006 810146133 383725985 880900640 646549439 348745872 745882717 105978063 699715502 264740707 754917108 246472486 143394973 605051309 169559795 795554853 716213060 715688128 75527047 10944678 804381319 197419087 550783110 208422006 7189103 299394936 71697267 317457222 966428979 575169984 538566768 897777583 601954859 426710039 592853328 340160560 948927197 263903693 713326730 358205494 157588466 920735139 546163773 759867667 286904382 378971836 19554095 403664635 191163327 60820905 376977359 927076883 860379795 126503259 211521846 199803235 351692809 942649904 51809314 195941339 456259987 699489006 434020860 115993433 624963018 809380804 338653651 480719769 698210679 476341574 264090971 335111495 460478081 237972337 176736758 482298098 564193018 567035562 476798891 484987414 27702306 74008254 381493288 794396181 561424219 616906210 728659913 907200308 273261869 800309687 552194695 72476070 247345228 185585724 381167370 333612168 795794580 969857763 690809767 184331990 515817994 12532095 529371983 838137469 390681049 943684943 42100387 530702155 445588818 606783991 474461931 112002554 987534066 828129411 838613782 749581612 498129243 45493355 927145661 783261805 803440729 204936843 989720348 640988459 312358368 23866920 690806300 243677119 465310986 971070447 227712844 284503146 762502938 172735735 755741924 710640216 28530301 888275386 950536898 281577521 309691332 390797600 628775789 490164005 745924269 316264823 814126871 817036253 650949910 871226736 11194515 525348237 921285651 270419246 842898021 514652386 397949646 899307827 20550576 78152570 25058729 567964011 242499908 795294932 265864995 512628780 209992348 230681434 981303019 179766581 96459987 208236893 95700688 663661227 471502770 816354324 291924432 392586777 512536232 480859810 659692815 147981686 283506637 751238419 816917716 103242271 517012191 281601362 975942040 835183067 247284294 800508990 352951026 122782674 403458576 705074838 432235175 911409569 29400310 437539844 53207459 777757758 98767702 460532247 773401334 658163474 804142139 723022666 948306142 399588072 869682253 932346880 300009919 139792121 765068521 788427647 990269731 853205470 185147149 620006137 220402875 428857504 405547614 559517832 261074790 516102570 202311215 996211759 747002406 726383058 926502005 845962450 471278373 316338516 364020431 261876041 948176566 863163608 779764613 696447304 222789208 393395816 80860293 579582067 14119339 102140026 714300519 149763922 323606906 986184942 923562349 66351703 739806906 913382407 700700280 152084185 364375428 510457201 346146847 271007260 436382750 541379907 409373077 92363849 548451315 889964282 43453366 466946929 419595923 331065981 329522193 241588365 155813565 289519380 607407055 896035964 126976849 645916283 779553481 753899787 63669340 255284171 171892862 266082281 574308882 736187019 928787222 889232305 507375566 511627172 211730530 837668576 564592915 788646002 604781270 38054631 308360331 906496430 485645459 127424271 236546312 945243262 462628446 237972887 663173258 605796208 623478443 292023965 304694065 752806267 924421773 738691370 872217160 910331639 128847042 94704178 875454279 130156205 768987318 927270799 952547009 705082056 239560566 826758396 791135617 217976288 600209082 275622697 606679404 109299187 676787168 932159141 336272536 14946657 432546033 996980967 84745794 191161853 352248216 431494482 294367181 24771575 422346291 182093872 506561472 704295665 81626811 758687666 767884498 271093485 402661851 753838835 856118494 703678299 819331551 151525614 653867497 770776076 835852738 81531282 279577368 875609154 979897888 692534449 859830724 905480096 58942533 407735551 864888934 497040181 293652763 644333345 440621986 411999858 462240315 227097246 292225347 708666937 992657637 264257771 675334461 730419660 76937983 139131997 578189993 183657434 852697626 289604918 995784906 737658233 126957677 285251235 262046737 246432035 56574421 213789619 489517323 72414656 323257051 922973276 831809908 745417629 918202798 830961285 292887859 151737197 351313189 311215856 174376271 519943504 319527360 580673623 503799550 810379723 282678438 831056461 898218139 337411785 488105127 83679319 312243881 482761378 57942840 979612378 116297937 142684433 706511739 828582442 895102698 311823421 269427506 84873600 139171820 23376818 519039445 338043390 258748157 115411303 253250931 201933227 666829926 727325366 9656270 788444795 877154971 998866790 877873489 748701508 724032825 414853798 4130311 766313675 884284928 109941259 951396518 948857015 812325341 158869134 348172690 690429592 193889764 364229528 390349262 232531690 394832463 918475767 211257357 252063759 904464770 639897308 157831074 536841037 597971207 227653355 442865553 821382101 750589074 704418594 227334012 247227331 788803329 127092722 454821049 39015191 495867218 259391537 992840505 801994426 415082420 246521880 630237852 405797246 592767096 424276050 377972012 997661468 342128413 541866217 96384729 761302837 560126784 691759186 252452404 917210707 126035379 354453613 653230980 575650022 815816036 38879099 235705260 888334406 287752306 868116780 163170109 264885689 658458910 762672021 262103404 978738533 603838164 588339762 569374488 468246875 149879081 585893099 591098828 958728853 968412884 207974666 982421175 64685555 553010363 429155398 309615019 450257729 307285227 890377660 173122602 602728492 5168018 555407602 355492447 777453907 527807505 139558100 645742098 601021746 638920679 688839352 496221122 603577141 841720257 63482202 463297928 561800877 787580531 921701346 314077232 950760402 317119990 864673499 955370535 842212550 940144240 378130746 608333443 932204181 869932842 558997853 566595077 46395947 336999321 609911817 940648978 535174500 663731799 561492332 844937149 119751681 971531817 791254554 210301114 711629997 823656182 938817555 809507434 871571447 752495318 846838712 895873236 868332374 524887298 633144024 351450536 92393009 471422174 333172139 854311741 167259343 153218294 665458635 919714190 988003166 768353787 547398974 685755720 432588028 436378568 595451762 937013432 689751207 668755557 140635706 422146263 62666826 675155193 756339926 967950401 560970165 271745238 740096749 868057148 794272163 816501882 249210758 118630335 922363059 923266185 42094619 826858585 936787055 22036684 28463495 376959820 651929160 640579382 315580688 949483138 292188315 229396199 599526759 612552583 680302501 660962586 325718939 811395732 686652559 951907395 54541867 57782663 19959403 28071663 107677183 762415846 694193461 409468124 52433761 348648676 687817419 281659372 168974600 942336598 334236662 42238253 231949074 201286077 730654058 24288718 851294211 292299326 856425663 847534637 487226824 581983401 199135606 558854349 433999031 105498740 218059257 568318296 133201548 701373120 242845848 519590818 422474097 942390101 113156748 677659816 646476011 737967518 831329528 395496331 37162742 101147577 883166181 961089175 416366829 629324129 962003778 553063487 382570644 590824189 265602539 284139550 292950811 789769882 39821473 11846136 641367571 868841206 392322315 536785592 648225918 532086893 586013370 684658546 129049534 897029636 371535403 980572766 480255653 309935213 291643324 719424484 363258976 829953276 277100729 198008205 29913492 621680308 612116560 47700234 195882819 486046525 586096284 599762235 124308953 19351009 676479390 661522719 25922094 576295581 698952256 184556770 554181756 36818698 37262677 839509722 983359340 835321718 342129296 883329152 427860234 335781834 874688409 296806777 501456331 328730787 862431988 506134669 590573962 558470717 423589141 361965233 908087441 637496191 111398229 626388992 954776710 795792122 803229942 309876417 904545159 875677668 997257248 825841240 899208971 194556188 773474021 6649439 608499451 848478763 25970237 136560525 957508257 237889597 240755977 965968071 63036851 813063469 800392469 784526871 927870288 249941622 719391249 574799283 724191484 689980485 288351380 70222066 314807204 600860261 309588771 141235546 618362015 110525774 291197221 377570201 949546152 608123679 606803435 38386812 651549924 534392993 87188911 506547714 933859813 209176641 784995472 967118415 855203995 541882648 511678365 308576428 342919523 552438245 508905411 277151372 808710407 189106189 407166683 383727759 378833326 746436771 226085031 353907569 350800372 750376283 664793551 780224290 871739347 743843220 595685094 7603636 770474926 881526106 191711590 785229923 297346902 146493528 986454192 722583698 710573822 999203046 765233930 511193291 701326916 526993667 783761067 365281219 632925486 39421785 908487334 838291284 252340009 610680883 394143745 407982976 678951944 385985674 36782240 86036342 279283469 622199551 640770650 651862662 863269335 359781590 701795302 812264238 813144439 621945601 378064868 515144206 371780450 961915670 34270689 764878069 834603127 556628565 832982344 555663827 137134070 416926885 315651704 717726661 779581072 738625941 520158128 820009997 584439132 908321629 144225304 107889942 183303891 268383705 24516292 393274741 683069916 98742676 661011373 550424804 674298054 763837116 423242416 353505606 913914436 941845545 16205469 133668265 810801268 405524058 158882847 438614334 978490844 127798388 838231249 9217630 963206248 21103432 54479926 749448593 75304557 73518673 990765241 597013121 219510698 312579750 96613029 291201277 525569091 86111252 934110009 921767940 649597381 69212683 599463315 44752570 51244068 872717983 496386493 381506920 236518082 264906129 592143274 543963266 151525217 533837638 486287921 277140388 768078125 433475536 805300245 354040977 955518396 504125414 247214332 5468725 81248271 299803110 526137981 774685598 446111110 785250009 139551499 111989518 683691248 424619373 424605451 398469863 634968964 702846711 249745350 487967411 479329246 174082171 518355565 74106915 957584643 898258842 423514902 195223572 774995296 604423595 428662729 926149005 347451852 840982177 840514408 919032498 32998019 131406360 325634763 164001756 488838697 936493662 758357413 315324549 739449549 718578015 776748954 807790159 372132066 102301104 514658612 645458951 626889801 284471188 262460644 760574620 784132933 701000690 161947138 49469487 401487234 487515990 423171027 415943424 209212696 886060796 946386043 582574716 433806212 815109054 312372749 151801396 20393641 401874727 558047620 820758757 736728533 583947365 213977024 885556081 755414206 684692815 103707786 513741797 111635075 21205348 4643220 755860080 104319652 287013581 884088694 769870452 155747859 757039958 468484275 571641200 41775140 585636218 303790258 243447311 143220116 134574423 453001928 217095975 40403849 986635699 680403242 35326126 962691724 136037629 393592829 655503564 308715929 956589646 507526727 399127245 428521736 418575460 116567803 800637985 857376163 159595688 277534193 855445860 630246802 809181737 409748715 330139994 392490350 119786650 652907154 664815085 364402994 701050720 55452024 255259442 14740293 776247934 316688151 61726308 332036981 649584551 540776143 295990500 417535987 186476336 794679017 217306432 71265377 688685337 696446870 35142187 667218113 267703815 378978800 942553470 951482497 630301260 27246840 328156990 301894007 658381534 705809561 770654359 987692769 63139421 664358049 271295704 428250722 705752078 245528522 299506306 348088072 855784165 940102840 292903478 177425483 24556149 258125552 743078334 578806533 568947711 304179176 837657359 723285114 181797736 46975990 552182595 647063900 418172994 100394844 162083228 571882686 120082115 425660740 807145608 873908508 576442058 549433023 261125787 804798300 267678433 306289604 725317005 161177036 556889397 290609719 374418754 571167009 733575322 994527456 4332230 220263798 142023063 517506162 374687565 19344213 701725515 897213060 218961201 73488039 737696395 627508377 808744183 456893378 806587085 18476310 639984198 251248742 686285100 894354514 703897847 381737652 651121015 838426500 473893888 791832638 815678231 840588236 601531529 167485685 797461540 428084022 999967962 154991673 180302944 977799601 768172902 922792908 568275507 803620374 705754058 84038880 352132007 269739305 248005067 594317062 293300598 609449617 175208015 235706686 25437696 255011295 182952044 210406636 59793486 134659979 894142561 277766366 129858826 790851067 365194379 240988745 642666896 81755250 583509623 414894537 406927583 174288937 189165530 324858981 664008859 854735152 425243535 477653128 593057812 959818640 640397464 946962699 545058628 197324337 235279650 17973287 846579656 916208607 950433151 769112195 291294695 490462809 165383464 286925356 720066450 270744893 534086085 127088538 635783518 531366166 594991135 664694950 971049358 211450964 302556969 451262872 736861957 885824083 394205437 782536222 567294037 717782095 491457505 532513355 163522738 710659191 61254463 294361500 70930176 490620119 65887403 254654456 213945541 516530284 571583196 935753387 725356845 830907927 533090493 105720682 75133969 506441630 809960016 796157781 669686513 903886518 800945616 18442733 496424946 593140729 652964503 741179426 487695593 639652325 707610148 534696266 233546310 161383394 576952615 285890592 710439981 817226054 160945263 634616779 828422499 637495879 466174459 951239894 931394649 827222791 654096877 153394744 789484580 884361870 102376335 694383697 310282116 20940240 690583125 227985889 639155682 436949670 931347163 169291031 702333005 880983246 412819427 43902088 462114427 999309556 364457304 175235634 817003979 308980650 908417872 780996220 672291909 928058983 548412677 308073776 636334487 718641805 638822358 986580615 49182746 990380133 616900183 995952155 593020365 802805792 993060658 532102128 187792214 906414298 28973128 392611704 331683589 597340561 614608282 829704836 935219154 549225006 575460949 957993044 283705435 309517446 318787530 408901772 552031209 438743887 286463094 103256634 496501096 345698603 352363260 37930194 673464435 493249442 946853670 544565555 605940295 917709864 223174891 105285280 531629770 451859733 539335008 85644745 651525519 607271592 796537806 669290431 144094922 53868046 286702749 191166725 963621982 784604761 326795872 272562299 379604174 139594108 924397268 923009137 924078156 250308959 828535260 864540060 843062700 984525510 80212101 196506648 926285170 984929893 529918461 363639919 699655874 130487255 241253028 18233479 67004525 64312984 989154554 490878137 42818024 749155607 893682862 89692867 712429141 915959713 938191249 724085449 652310390 382736753 276181660 74110039 655277763 956407720 309188343 607428453 998407242 23049296 896365802 510378830 563070929 962244441 94780139 14427099 919346620 986979228 621997200 35884084 807951900 696957404 460111266 501191665 317675943 20751298 453162251 970301967 537332413 513418463 237545434 178825716 439103586 691195818 951707217 723618924 282709323 997175944 21074125 718597804 339808971 16748736 751134941 788784978 550728674 519207810 872945715 845638501 678919224 71002346 529951657 531844942 651666718 382132473 815240261 580165094 921109640 246084247 850580528 805423466 687872534 459894421 473510849 344531070 171977744 509779628 940782700 551443758 987467878 686196353 406193116 280693747 226103212 24874647 915404505 429417638 912761383 86837605 579407444 846070159 608477368 267041856 958059117 213534297 407351282 97731693 719687522 319810333 891853578 482724881 438142115 286221140 226086115 471236417 239593918 905744103 252346112 249429236 58197365 316079393 51302035 54302221 748031655 764193719 337071475 481021524 209228127 808844231 952000284 928390522 792915920 582705879 750484410 341143578 223155032 350448595 311055640 31801012 857393529 235153936 799387059 599614128 914798302 818463820 328193442 182686563 86082136 13270957 581217717 45018371 940792295 440897729 705306709 583343537 40932778 256687736 400809627 674788985 769188079 989435702 457395525 218288712 440758568 835410364 111296447 202789116 153452273 492388408 658968850 26475604 23128843 824192835 335116026 625901817 114963813 963725522 782456533 79219069 210298894 501277523 85123241 18734935 240351300 867321998 686392871 488949229 97813866 831089850 224482212 164153219 625259530 827322740 332922657 596150861 472445146 860720832 861107525 460232037 256712114 825820686 343068767 339478475 942156950 782731059 174689638 672180582 977102516 397866857 882926841 661563914 763019100 452073558 19107936 100258419 139191563 722457354 964237963 47240508 859728995 582999291 733227281 660281331 116231984 386750721 423546670 523229193 766602087 424555108 827355854 301546450 356070943 332296146 832101244 624652182 681957022 128838240 520980338 858983035 542439249 288970381 916140177 465149329 355842247 885651770 839458139 278090964 196253884 832727734 96798211 618158117 910639385 721401273 432064351 96114763 716083424 957657693 856692719 626445304 630814028 332350758 111646937 311172809 69747894 18281991 9728751 875451961 562264992 550241103 45966244 188039349 13923764 967498942 905121307 27829902 305230539 516391546 347913241 30757629 840717784 339054097 788552972 797444386 969857542 523800436 773524241 131244296 130601884 883107333 925449698 616410272 241213199 836574599 636499430 961989315 127184375 379090727 175710513 297023538 895521306 720701562 81772663 510825622 65591909 215627391 56914967 688908673 4314600 389258394 55798038 658590570 718535393 194540953 825675818 655990966 957588398 928252592 968132261 154216109 384081889 933592701 980811654 650774143 283913515 238277126 280787577 529499205 577616995 189408694 821673670 404226562 908962451 763125348 385697900 10844318 129600481 284201550 195053829 715646186 626086049 357222424 85988057 122869408 387003985 145418192 4293080 589322083 894426259 218250730 644611738 185421752 936146992 496332868 626418015 61213715 980634656 545886498 584380683 384719311 566258810 780443188 943830064 859686441 534157699 459260815 899213826 39617868 639311013 894634156 518626151 12791627 961620853 849125236 958270431 541524252 819193517 291105076 404305050 254443428 167853361 3733922 399157621 526578345 834723596 587712984 649071592 807160287 391486065 723937119 647364129 620044253 493783226 316718880 309265899 789963556 246872943 622429303 133939646 671271713 151518517 234775576 553263032 739610400 467059939 216318257 300276901 333787487 949663346 44951112 850339566 883617789 503152139 817369688 744850353 657593344 578566384 275789757 483726246 444146785 342949532 645324600 12422713 859767026 831669159 775864060 817747577 340069240 490843860 944472989 369946650 798850204 192407567 281384212 220855422 8252143 911687530 948871627 705147311 797237223 250305060 493342604 233774935 568901866 739385245 576156302 303316430 275021888 916519009 279653486 575158549 566372377 607146275 567217970 44655061 36573582 243408317 93739590 487838809 905281955 124411957 202441088 551213466 566270013 40243636 125609500 922208824 511941424 531591054 25225154 830552442 296750903 212794430 247989628 593754190 835356910 368266859 774552258 101830223 167843301 390352347 652255854 931559094 915754886 952449155 625047497 143569265 34244657 207043453 414472574 789467658 572071458 735843854 73637027 606560442 66621060 439661730 144831925 544382819 424303210 270686669 946402712 655259784 764108236 108203333 383804061 519661147 416991370 502949619 589352820 324783024 517128049 325057503 152588351 766376714 153220396 832231229 117384575 742957968 409923419 627781481 66879268 789711887 900685689 109280996 630627716 212550145 435469812 115884892 179290203 222771329 33578779 784636069 345098190 940907353 572395561 456513972 671125866 22139385 280088125 45107124 171348260 84115063 450352483 341557996 925497437 703334547 708320648 594258898 730569428 73664691 970539913 21227519 812373435 974997222 396200999 529783092 219555493 633828327 375316232 766523488 853664401 121258512 755542978 909942934 460968672 457556076 424585931 747066897 714558566 855115176 17433222 24622386 200317013 346753822 491696187 146932614 774446920 885579211 561685786 710286017 83025990 672940375 654746942 215488958 473701310 777709329 141365930 740683646 993424002 368532720 791517252 238030895 773904083 813472403 678229216 739285026 231201106 844365891 345435188 819471575 974312976 76167148 833366501 857048554 427081090 556190249 768668792 35077163 632225155 594662199 783105123 854666892 989940825 655803902 575762173 613975336 981892529 147107597 767207812 286022723 470722976 377611163 926879271 358721864 957265316 871021192 511581941 359970762 352727460 786946395 503784676 681695877 5346027 591832899 857557211 730611804 977214767 92612118 49329310 670902104 863833483 175919958 404358115 607280561 779507081 807420712 478175551 186712765 703383569 847866204 775227190 231681026 747252346 170421867 156362544 512355884 750740868 746077808 443718270 549331981 154645587 336300086 661837146 852700065 88840051 964125227 578396646 516871432 255850969 660384102 988076843 818177939 725143010 927702694 978383384 647860913 674207831 322655572 727451784 196548861 968449376 378675836 621596221 754846524 486787989 672187867 912565726 760365915 461167349 92393009 102630910 782540648 570056161 706233682 789238808 629755556 911533096 156796196 980804489 77269614 778059778 871698072 257498781 923662676 318095113 586757437 490386309 438720009 368269635 586914563 128601432 366436454 230508063 402452209 353015067 234275441 393228142 321647726 390052021 869808978 432436337 778602006 999371767 940052064 38609613 294940466 909482907 672438292 236362127 643464883 925394499 971946768 85705258 800984620 230102390 506297123 318718333 433743071 228544678 224145981 701519567 319738037 364025391 567361915 200437451 575446840 856603727 903910945 138881669 949673123 90894384 482909334 56428156 642270421 390338788 704398704 38151575 79258708 367191140 217495149 832190496 22213970 366733971 27500909 838146257 940352162 581718580 420757883 202576321 462450889 504083968 369338317 3629945 421032679 723582348 776520891 887500773 784648657 534035035 820514504 308170074 233645308 559127763 893724581 750806934 957510022 152500552 324872988 616368321 117734714 123746548 743290419 116099682 744665477 736409336 255798276 606463605 655469692 953032539 106834655 600995922 426220514 841670160 918726964 199129025 648246812 282110959 623654053 55124975 469187900 548413882 435944172 186097774 546833910 886243100 530112764 428221505 790064299 683959716 58622948 745575624 324820576 182468556 758656481 369665236 810143177 927189493 441933653 607435160 727040569 772020582 531521484 367734194 939023536 181853014 477527800 62154790 851579606 777465816 780376504 429645156 698956795 304365299 396967178 751043137 944581140 854466957 699385119 785637110 160404673 698724469 34751044 791099439 552708682 16800617 611945467 213429746 54556832 337441287 282074080 546852026 690080855 87550170 400117445 187378273 402774448 478511698 99674006 240125228 519488912 382761419 85284982 508021450 782561930 589472385 267281317 634410834 104058834 205146786 740660877 452961852 69145674 489135677 52135617 76060019 837972345 273883212 411547388 784902208 114812043 715474864 342320678 861200474 193398616 261036597 709340742 458243294 681426275 631937926 838871952 50224976 606847694 170442817 474132831 474897056 496575341 536732391 196547383 881988640 427057078 879672031 930188227 842186899 711367111 469353853 34702295 951737623 822050406 384735991 538468204 278421052 148848135 404029296 286930598 214177529 230418364 28113906 175687890 272561064 951035463 628014446 865490786 500950291 956934926 913768383 776212210 551160674 258433314 136896160 3386948 334828335 641978426 277583554 432741701 86904949 34724276 776436401 192883719 631716761 975912345 495901673 170958277 817642086 847362452 684174280 285520867 496126231 418207235 842603675 658654954 860073794 915590366 800910481 438846865 441421556 612847313 914518723 342030256 641644437 518368298 908350515 833251660 70028029 618303456 98592458 338610578 929727078 171915924 387808861 305046994 402069881 384181133 528857503 681373321 223472447 986029495 469912373 203013721 41265968 27341995 368452262 931997453 426630189 728491433 969247590 464284825 920691058 208476822 953335244 390461976 321822644 976609540 480872989 22387921 351346695 864031018 800759676 884356393 324038372 278079721 319189246 968444343 265356598 888457923 883588252 779976246 694638919 596893417 663243832 695303817 948589516 231696437 540163739 335022520 959642851 855553829 333031540 795074300 796209936 498955486 465117023 67580077 676542021 996403250 96808154 564673871 81149648 754109079 823341394 750123658 129495156 145254701 651681047 533839926 176978 89590715 408506721 899747662 680175868 549825969 726139218 871646451 55959397 807808802 689860852 702629744 774110696 68790226 436861494 819617080 257054796 662141993 671353844 952588779 137864640 656407091 22753009 756550982 799224793 877244583 282077391 208982071 674616721 677913061 861365030 915381714 766006863 42657015 382424684 164218448 506653920 565138057 398355203 577106454 563503741 526261746 944593461 369429168 210509757 116606516 557380400 972451792 548999080 558819060 435835922 608059474 763102380 328516485 131186396 154379576 856330142 902470615 543975026 436287662 492333757 468258705 765939115 412523783 74147497 390012661 104534076 597548990 860803444 962856434 897618378 946492535 917334417 198737701 471778522 687591420 21147358 601867465 558917602 982810947 947856291 405968837 785964089 893057636 659581831 787498664 323317535 876469668 972818597 467689130 833106621 397815406 72725111 343174317 164959526 863686230 208791779 925494325 306644308 925430295 977439029 918469232 718781478 339118225 482031911 121851194 860558185 511559123 433816528 478248462 757281992 204518417 486676665 324406038 798585570 55998627 478699214 500495902 638272566 834934540 750835559 785915808 444417071 558022650 637730111 6684605 365252121 976771649 781883256 535548726 713924659 114775512 142283940 609330304 282349213 737855207 25461177 191368882 756216924 336844981 583339278 349529735 777529958 45653686 36657008 553786219 672074900 668722569 975365383 15944808 29656231 564391406 244106856 683565882 710497605 291838928 395216277 648393534 730775298 540951876 91804910 636905597 86240089 143607685 20599877 551745188 515488679 856850933 609402314 597326348 9218103 592823584 314011420 287409843 107109178 457230265 945733700 859533632 940894669 415076763 684055212 770711557 761286892 323034826 449935403 775545333 383212162 368758384 701781498 676325811 49250403 980468194 998812611 885385348 209160003 981830045 448334480 247819097 79326662 912370750 197883353 111204809 149952888 442879381 336647802 897591057 504397255 573742485 770917305 188040987 869138187 198834521 320358977 934265714 85229448 495321633 19694377 676493394 202456166 247137885 268620014 314200987 753299641 93975197 824569460 933259214 555354740 920922271 200055309 671398689 379339134 847119938 784032360 865400935 250341023 868090519 347701669 1138208 231271046 502568141 102779979 52509044 394842833 640591167 531459651 161588532 437460219 160349298 899679718 832973010 418488177 7518738 184506609 146605940 283176580 278728688 695771527 910873308 186113388 473370378 603240758 885681274 805586252 70959744 309946869 694630505 87930412 915718816 372204318 528494691 680678398 860848605 310727803 850383571 170706844 725641169 564031796 347855814 136100805 4022334 561009891 446390263 298311203 696013843 348846208 442658241 201224775 871914591 736255862 830295595 31913644 903320417 585499278 28712936 919958448 278176634 164447486 944637004 275970720 242048055 442692967 400911448 671584941 139763017 839043784 918695348 903405039 852532109 431696788 333144493 257395812 198080005 282865309 804741178 8980731 10595549 898698273 823808254 293398657 551693417 877931205 419765820 602907313 68768803 995399316 80740838 186929964 646465455 151149064 280900242 706798205 243382231 875873020 914981505 953916179 219432846 558045111 448344214 630527046 999461106 320824803 636027236 81774939 94116933 840655255 903919650 634354808 411273971 938299982 128348078 703923120 450458252 194478577 816552848 682568189 327017423 582523851 221500152 122528318 25100189 818395537 551571900 514090559 278309376 276020323 544503130 335685548 21519151 482241986 114310652 30654244 212132996 62263455 387237233 632067878 99598208 239373900 243756588 309686556 127846610 687692682 915294802 197369942 876453707 911464829 729242280 76454159 209045221 289948846 635842973 413177703 412315077 654514712 823367751 587667047 557340468 25889302 643814249 287352575 626112170 722592621 806170724 882292490 90731199 224715851 175080015 679374923 623164471 251136835 753951962 165184361 59194108 532819541 262622057 271341812 714469667 591187428 354764803 765009513 96892389 410267073 439871571 26391844 823788198 910046237 556039861 431189365 726149620 39718041 170089767 706199942 183763585 432732980 229956174 89525879 990340133 966408549 898645118 600969028 962697447 681232118 404219560 842318299 272435696 853577519 550428531 301057031 390594196 932792748 78166047 492658822 416551249 649995651 20149660 498323451 251503300 932814368 446349190 398563816 384311487 412030057 697325336 325759431 293585713 312002461 598618172 836325352 283745078 39865964 312493696 615124628 906837011 103339395 658663450 389178611 702154801 163405975 117576940 360347153 550417955 74612564 128425340 292398060 593748390 598023792 896570872 243639908 921210524 258628771 923112249 495289924 920713234 772624390 587863996 487101498 152392507 291351330 622864556 668554722 624232048 561350627 940473044 990958269 634209846 764677789 884077998 432106800 226551352 36754701 65950810 547348883 155454539 396407641 340603037 652772633 599661415 855410447 123947494 596926182 341666481 268706340 943859279 260262150 309802610 163448309 907851157 807696230 694802721 697716294 993402911 78545635 708831318 37613129 29231613 681272376 18472918 323816845 969130470 226822421 181660301 790405392 947219514 263768840 731078541 612596285 731206145 353117836 485472529 336013276 452239846 37856769 900745084 87565091 485980998 768963246 618274906 105264304 886197020 103333321 303076704 218325898 520633618 310480232 288945511 925337114 634990198 504044429 313296241 114398010 927593278 836079392 563146156 910496037 7286540 263064823 980577898 143344255 889434150 131867844 76941095 527953751 80970875 534210095 787260804 962048032 936333985 424887741 651577935 215087804 610998488 358594528 824589946 215706474 236066314 889851893 185764896 175521244 103726786 924126518 947037575 173116455 340670011 390788051 312450580 243323847 31835475 908622299 266300768 15873695 342549390 209372228 350176294 441420289 627535904 179231220 894365510 830492061 220523743 103440562 858613966 550364820 500552006 47675952 45448430 771553386 733857669 431860487 450638598 985731086 69344099 135318457 672017556 283988690 879774553 970310572 139534921 862561142 952641928 139707956 663899379 188238623 258659513 797424010 507036304 231997017 91612505 652137936 923366210 398365721 162383996 973486606 621518934 418329276 407715561 613454647 114127678 202694408 421083648 731568928 648962709 244177709 243616466 231931791 776172319 245290941 735919387 741840682 855454918 229932212 971517492 33032327 219305889 991479421 440299046 583799576 509681892 717313246 125969058 876571714 196743674 720375824 445441022 739778128 867790698 349279154 760421947 150174578 796942312 564115398 299468799 669939905 240471886 109012922 855436182 141119805 81698213 424284005 497095164 220638416 899516944 382116355 146420689 47988556 817081830 709470008 477328471 238774123 245466533 671647251 237096064 460015565 289527277 365596169 781360613 545844730 680642697 686900726 397567936 931602276 162894701 534937890 126167550 155136614 146663348 806121014 590503470 944184640 118427810 644212300 205870210 319031580 609475234 2821087 577778399 796435723 587137097 543842258 512444872 279600901 542970703 380852342 478130545 82884845 66484633 208682110 29306026 425528713 921408049 891157002 559784442 454689167 56403018 582794650 764339843 809526420 137113666 656756003 147177238 907436060 903441565 538958578 633897771 158308494 708636928 647961801 341397472 779343423 898721605 744603853 141909246 801197668 625215074 598310536 679613426 599295011 550605183 694415349 487014613 637028734 530131171 817075307 293284708 247012462 103611652 916971957 185151496 190266825 367663997 94366459 100849874 857725516 710403601 331589079 463919734 335865257 375989160 78057280 917920085 596766570 623426394 282488995 452191861 706389516 188072289 720806600 693184646 593971182 270939166 931417318 110459104 162636892 297714976 910069146 521974914 419031684 215245337 655797739 847588626 744781954 768862176 524414018 858700257 638433365 612951934 476444025 662802659 168252137 454906138 35067337 302591931 262374156 485901069 170608602 760144046 808384121 261420235 620964792 679580079 264870099 511907835 405035992 671482190 165411999 126461288 984282139 361811411 654411344 312747015 107621569 30957596 342885186 222284271 910044536 332148929 786614452 933459815 647678040 110996210 509091534 571477977 73457375 557347220 476688804 775196887 918655214 390208554 910384172 247502623 466397141 714190312 137983306 759671184 179513161 921105568 6548680 311699515 65084007 462271445 331123797 111304526 660692148 894124970 433213065 619364393 790687517 442381810 882306025 13609546 734176504 468749605 819167706 953353312 565994243 769946465 210088370 639131964 671671393 863820650 758319527 273488092 891677600 634866101 321747931 502208866 14911417 26449746 852681048 183153689 341258499 829304585 550048526 926441587 711311430 348863034 153232086 17515276 699908529 993762809 180484213 426932393 56166870 654939642 337170575 620370739 656553142 14001566 845265335 682042558 145735347 397333229 681155433 919181445 205580189 138882962 371592963 825431021 335185316 352329193 63265998 816837502 275972204 759750641 158433534 623975921 274426871 168178765 36443307 608579867 453368754 858783056 723263191 447770880 449625970 212843504 59407208 669819087 185460342 321051342 840681523 13001689 696201314 131469105 761770478 948634777 344907333 157416453 463009598 995113394 657532304 228671714 649031083 134688497 617089317 473258762 927350436 900827721 693639750 119981667 313421444 766498002 965579682 240450682 71267726 103263186 434689615 187869066 18999529 78978998 912547527 249834866 133349797 781192975 904809971 598232758 9959868 359320471 1274908 844940167 98203923 349481779 170599419 983398076 167951982 228373228 902255532 153384662 134964355 793899002 838719412 275482874 197790950 526126773 839474177 749673464 915388700 632029600 187355368 274294598 696749455 61798504 461808165 436251142 712797836 203040991 875999710 502020606 180487504 424391678 295655330 693378716 488275197 813982444 331652964 790294523 914340248 358618101 655107202 804568020 705712406 137738633 159399617 583054484 747073614 746624322 231362895 895719494 170906626 68851944 691054529 594470311 740528093 678627685 3606291 4738830 122378604 749897161 614909099 695126923 828597548 628263505 492971863 780940743 298145148 133404002 396583499 399393563 94106024 847860870 502265383 171487366 191588576 238227825 120001516 267006897 279444796 524880122 982238218 593866216 124954814 399973930 596537687 594273575 995314255 353449770 732027916 258941194 635219137 924772941 103767765 638279640 715875789 882717454 978253241 267985793 871729940 614718738 756753201 845028509 614056225 410081058 850138392 923875178 530495585 97036339 923617717 209528529 25473073 278445660 521894580 625735007 72375761 408990182 873003050 630390858 13475689 66637885 714908566 790586998 563611404 939656940 780202204 278504808 527111092 150945974 1354058 872153679 124837954 342366844 969444501 49684739 919394428 294735945 640052185 58240769 210411545 884350542 857244316 941523057 432171947 795326443 739910093 127626532 184786361 143683230 609855167 448795025 54681514 48155414 982207535 181318614 225853136 130384422 232800068 759172282 355722595 933017033 162590859 487748271 40589190 458580001 653628664 529041608 508521025 594615416 37103336 71522248 777344645 88014406 565848355 5235478 457126445 500681762 970219988 241000383 604701432 459413712 665707921 531555194 764002192 402353724 54573654 262203305 114933384 527275130 478458506 434314832 350980440 381324486 578691065 990479139 643653472 749567104 620717784 915370611 335479531 839894580 224453319 784037956 857019946 831376535 129027016 291002684 141904949 75463044 412868938 879208362 344725006 548334844 201670432 552451204 746693535 351943215 524012683 555239020 756919480 768671850 421727023 863097001 684026386 704712236 204510230 184683046 712928337 245525017 951440569 614375552 621230333 838683643 960514034 322106099 214492036 854612421 871670026 163658085 245723202 513118352 47169199 810015080 162640763 351115173 59215345 547814194 791042131 799526249 850925903 911917732 328871902 710742132 719077808 142934082 371951124 894947454 154749281 50031679 119415512 256940909 474282263 239099758 286223091 428974155 665815791 210356306 165696277 613538378 483146092 599212048 368739544 187460038 673513601 690804088 619384253 835755844 305515132 129894403 984882222 515215983 813997344 976706766 96002682 730881305 807094930 81704865 127210461 580074043 192603226 648701929 115895670 866149117 35167349 83884481 55131473 257698727 139861049 6661348 537645405 318173357 647745390 169663934 307320949 939495337 657827651 62494812 164128599 941121121 738727240 37641078 292154287 137473471 950506626 993430891 211584781 339639510 410018897 64452927 852090348 822301154 288587141 240416167 815510188 311321412 54577999 279878132 425133207 935830155 686269009 562267435 349340890 513920870 303683980 449929969 765147542 88054453 372284785 763800722 484830406 645760375 803344596 191289355 873391958 837956570 121933297 109085433 363218454 302130222 437155694 32792481 614652609 678782963 675018587 860887541 33093878 567514825 975867944 511241354 782695232 165129082 440652214 37552546 690629136 559435007 532981322 152398371 539772606 412067180 80463759 443665563 190162573 99107592 619137948 590828099 124798372 896341310 157001710 22324729 501325334 570531746 238249580 201866564 255904476 411697902 332541025 636930390 741781209 963870727 824506241 536419845 572811218 794714357 115821805 772292301 836041082 417797615 400123431 535982552 203601005 53624396 57489436 739300087 659616554 160971669 322522148 22898845 961343768 711971438 137112827 385804012 28034957 185575344 383400391 762242221 994842814 848958293 871649557 505610826 894138064 232854911 216199639 206848222 43997898 916797307 939799662 870264619 271616925 173548216 434000289 888364176 159669027 511417817 95250839 305362981 769736989 15991192 286530794 809520538 382511668 239749097 728739734 323000402 15310074 498257112 976563200 123538518
LRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRL
