1
200000 1000000000
452572892 803798386 409918858 886832237 179719677 818045174 958470623 353100369 403820837 138958359 626006104 682533840 419239779 362681592 242926797 117752191 979945873 757105876 733107032 767326577 896188751 352126686 864838494 847504962 407873026 158668126 198091915 65586717 724575200 187922075 406724053 103436204 234746593 464052711 460732532 948035368 583493057 792181407 67572977 300075855 728512265 633269536 743576086 395572324 65524235 156846043 562387447 476340539 623431134 202640445 999113969 885124133 382932578 945247683 121349801 133705731 98149187 436212461 584291593 555718969 710994157 334661193 810855749 468662455 581372313 500630884 889468636 630329589 166047815 371109340 447040658 414035692 151378881 737944660 617317233 275120936 187778966 71529844 761031630 456823477 645064480 331974895 231877703 958658600 423974524 664719998 464366782 520253601 349966743 464508645 397477728 521066181 958677274 341200110 182524322 97988034 952111492 142119018 6598976 622810705 641202195 764831029 623757118 109815725 781834191 321330737 746289897 878269596 633215625 935896646 855845074 436031088 573925334 519308137 301765081 978345469 671368218 567571859 28185633 142995617 358588797 905322948 791838742 109944130 309062382 687765772 600741740 798860111 37861158 557960569 123879968 847039934 125363621 797317413 642325879 843392525 365522352 589510453 231713532 960074562 252352862 213955281 834611075 289146605 398877826 595666474 508465193 990224930 933193151 509994879 283067728 136482944 4875130 928900111 369423784 39000366 490559206 500228898 360264482 218280411 339728635 393099534 586531326 393057723 654812024 576517678 893614524 511637645 960181225 442097632 743889452 826684313 17531544 306814355 461725791 847185067 726048675 927673271 226584499 345905945 260303332 928200898 134650061 226263746 769760267 924090942 673116310 437477645 805642626 413673392 897644870 186073064 975189892 108578735 300720472 628003528 594529299 270697166 636012686 641189295 247516402 614137526 344518393 860534814 792854710 558463246 945433576 778362407 360195511 738565256 232792827 814817630 480179984 379157473 722094868 599573987 649618864 653809368 850789728 276274012 538309956 1799481 263802455 755653622 211875141 984375255 376764078 204432233 41890801 357218184 844177005 425455601 515462995 401916469 755234786 552900948 629559355 348031426 313375902 605382629 441096511 866387748 875075710 43261300 681695169 632094038 224039081 776028261 73756394 200494171 297136777 482453659 939422377 131011640 987697875 747367044 309878455 162637831 722002561 317789718 648572819 931572955 692012505 354565074 212306311 793699034 952740710 308377021 779090337 756919342 520018176 17960546 915577532 747248137 185634497 313835997 190043254 266476965 497963019 807922886 806836793 802766148 989987469 918190410 611299378 350657843 943019322 280662547 692792414 980134590 669825870 753893207 104697210 455720774 98918737 521730004 940106767 498036520 84514313 650384853 957458799 940342994 63558031 321262625 825419439 391656887 402077244 237699349 481770926 347425100 257041336 812276619 478283291 872305176 247855596 355460587 86894688 176589475 168441870 245128993 659237562 419430529 748517274 56915879 147520550 732370760 993738068 615060600 614705517 241435552 904275528 13603868 167283743 575431728 469040843 625800097 6568853 747720365 691341687 483867036 608937964 541316812 237068851 81642797 463617811 859746132 180735787 553515259 972144053 801087757 353487312 554271792 445443147 793273802 750470627 947768711 627713558 39283557 61959269 972643899 503451167 638772929 298717346 758446868 863621683 750404807 719373619 325108577 37508079 229139819 540105964 230114293 776384430 19276452 956333562 534809648 972783006 260392824 476888771 604474619 356435116 446951662 592506111 596347328 145884560 706141980 564298918 130221432 369194442 82465816 168446722 972372895 963089573 161351944 472574362 86119741 924864045 725093141 288323910 280503265 191524927 125718640 37632800 911589022 752953718 326634836 170865549 337093909 354484799 620819204 89859896 801692269 533726665 836952264 38355992 328471632 995784456 486456566 917608 122362360 302572994 77132263 295676333 141252389 387999614 174248698 974023086 630094102 969197194 609233308 278960007 714849184 252527875 733346366 296306320 923885080 719007171 505448798 834380140 72643162 942267765 316512377 500369164 374326735 193985416 268635420 875416993 365591138 362278199 560319963 75769767 229650827 897193601 223670090 614526178 652794696 567256366 549417234 251539297 144870688 226083791 402274522 648569460 546172195 856293050 785594198 447040443 770557667 680659728 422228799 993718297 914612864 609254844 384629847 790532283 505448865 285010540 993397864 505965074 976062579 817807003 532678727 256137952 466755247 694368898 607493832 184516389 944919694 304141873 417725396 939620653 384000477 430606964 683723090 376338062 516412645 148385766 640051254 296924453 486911356 894291431 730790265 198019090 505782277 64339354 75346205 465559239 326935650 671175415 930313516 869987827 181786885 248775089 289925819 823822486 82263520 156400715 386686686 584408306 820222836 982316299 785072575 182435223 220001734 357188865 939497860 418908244 691080550 624963848 542988638 865476937 245782632 730899646 102339725 465575385 600287084 196929420 72700236 439371695 899301015 777106341 996120553 644495809 811915926 50685181 84076471 240832328 850535332 164900437 499935759 491589326 503179387 275706935 75317587 323584284 253908323 324070384 546622956 147418183 927546665 350507678 974476624 483370154 101902372 43371037 226602743 672805353 744165170 923910677 905236323 774961139 74034874 906886903 250201374 831811064 562935210 796604157 403048892 61946744 354165880 876722468 885186772 433527094 548492834 205197878 221851916 558475839 562510639 903886279 335804686 282859239 727523501 529263401 274025096 546829767 249990448 557503615 619794235 320150728 426570714 762461616 709471715 281029139 93494606 577087343 512892749 348742942 953841854 702545968 355564360 892466085 417430748 792018232 857079732 304776877 629826282 947047820 726034288 580672895 620327850 131671295 707791721 464782514 213950576 719960359 154406794 748026659 526871564 781011557 90038743 121118451 19754978 269076191 158169931 272546448 55229141 45964168 10022130 875198897 84615763 855745818 360320736 49231 758763859 381211409 194823468 582728108 168865619 860340918 155816701 139988826 555443032 664664605 37171067 44176427 134105844 991163674 426713815 347995961 708733755 135112271 353421130 918809322 772386763 121860645 304261146 35725803 601361353 85793736 943016081 584065583 362439399 598702646 422438654 960040435 703487575 491702062 462391742 371281595 343083994 846175287 814314546 575243858 451414710 158134687 965584837 684073935 764188344 465603970 258109161 938836621 195238713 491742398 607860761 355412782 147548178 427888636 770325204 209528993 431113903 773281454 523301032 259179803 300220155 889120776 13667367 790963989 677509741 978741774 553777639 66712660 394230530 524856969 389063057 532028646 44190789 137747975 928155848 712238624 384872510 471630046 331936836 175784861 577027719 85224498 450773693 707395135 265284413 47744746 31816181 142185781 421345284 401713334 930501558 483476721 692039440 184396048 724519636 367529522 428647955 826827318 573885481 693034747 186865484 752982064 599499156 198099865 112623746 105146321 425616132 690758558 746586627 202017710 997906793 937428713 777211813 22018858 893138363 345886362 293939142 881791341 544167937 20529186 500939340 730519653 848172096 741897781 242968999 88993226 777826700 986393037 131349451 903205408 593780483 206886190 966965558 633699245 848343236 198000358 436594163 647424384 820979961 278213832 952119945 623175796 742854357 521186544 322404117 810676262 307283858 380836037 10196016 464959490 370694003 556126703 8450052 618141238 331616960 393518439 382656316 361561786 172278990 150063716 347693074 50027598 842230007 203795310 580034368 252824956 46824859 481654097 107072785 256158612 981686566 742030878 882737232 854669743 98678539 211461687 200674133 970118569 848895681 353721659 809587450 913478445 587203789 837104921 57009578 900691629 645233593 667776770 275967572 122121823 741613847 1884790 811534699 526318402 960509568 860316219 680711661 897326626 696330907 556749142 554772067 216964236 457099786 99935266 263667671 767778268 536104583 615826233 374826725 982594606 337639368 109775485 210183846 337672045 727907985 522874909 733192133 806677575 847684011 237698956 7474538 205980471 171626729 489879686 710083667 471031675 763677733 653231634 528767928 813413404 136634434 56758138 918335075 724997867 639170088 347882835 437020063 625339262 889366988 843311222 890753605 539209785 607750952 889595147 919454643 400598337 603112764 655905663 801459405 334330246 100793621 562928514 91653890 665266117 637243075 292251412 659080523 323930486 764742241 621375864 720596261 804958699 743259922 806389816 844916114 377386797 969172991 917299759 116622374 461273366 552470877 188278384 397624822 94867014 787562849 305037158 948980383 611579689 125064529 606052284 622851911 595797738 994400377 604544356 986986395 215172 11449127 71606940 982248148 360946105 297798583 243618536 685370032 449858060 907239307 497176086 598047349 18484179 221000718 141009719 495687153 68117794 952964019 302685097 670205561 563025627 242154226 377487887 882271210 482576806 763780430 202903895 129681841 155312371 945631826 538991541 415123892 431748091 62172304 618602403 706670446 282876606 371808420 371075303 34820830 231146757 355106860 842414478 597897095 801144669 327961303 459189485 487031673 388600354 237829459 347261084 387595339 370198642 831788634 64527747 719231512 953386295 292439988 580695756 553192075 163387936 673497382 332194030 527300559 181845158 77302661 477956261 204994456 250302216 671108521 255721970 200101418 630728015 64503158 375384866 79019850 643002445 903178967 536720844 501131074 643878550 128084154 594927052 312644077 342631310 355008028 199673412 603132838 636618333 696695554 178989728 639608405 15561458 336955763 501687191 491972712 895865605 327920769 1716259 478244820 774782742 633360200 930947208 443800856 921840497 496453608 611204437 440469565 138003745 787107982 338366044 578771917 841718016 413639275 320761784 765179872 586954417 846234296 527636176 855223573 94038422 47480761 829833041 717335953 465502182 782323639 983304235 881150466 95880088 469148167 885781663 117713056 741722474 336466430 422161196 622449704 943099364 811696643 18001059 684516577 581531224 981011071 736638231 318848408 87613406 49258210 795285219 130150053 431089749 610923179 854059435 732715234 111671143 909877337 456827229 582511805 852599682 628003444 172593965 860022556 79332577 502931602 630222998 310261372 912590465 597609550 997455452 21678551 399557933 40584775 336661903 735747508 261875828 321002792 796972159 357816610 822719408 766908580 767372745 567957689 292852991 940143735 41613137 921659282 955053643 107469663 21581638 417345624 48141376 565231658 51829531 320228920 683909469 352737449 130031242 557077993 507593948 692349620 586432153 79559335 588547019 781780787 12048532 689637176 566701559 482943243 774571792 430045422 312715510 395891246 624469739 465363100 419901741 746829979 69353028 357310882 245437120 419534673 754590091 184266469 762466468 669990232 39506548 690433492 96710543 892613318 874227962 631666532 686810366 630518710 291186275 827648791 338872892 299856199 335001656 622167023 14195037 36420773 591500624 38303099 109908018 892170241 726650056 175946451 941220192 53176727 667838725 105982867 793811790 527390888 611165868 505099491 507093804 674516095 18823099 12357232 588104690 542083438 782761063 267587954 674593635 836155342 545699896 238641062 158772484 296290053 570170105 20391509 798834471 249575542 862768062 502057798 897933283 516909213 545742309 321266137 193989143 692281324 500235279 362266083 838972015 340686824 952434988 804815568 587326553 530497054 737948525 518142095 181082892 187643677 681000273 395735185 229543052 84748672 167669914 374837464 752995486 335792361 231457620 608006891 262730709 583273730 490911447 137445589 215069319 89972353 830682301 408691759 787121107 628608024 75829225 726773013 390135461 332727186 260706183 371815214 120732330 479623862 526966797 496388779 345950044 877072980 354778678 443097918 79558906 462458184 677570568 106700587 251212686 827298166 437035470 667463728 310616040 414590662 916253468 957883043 420681375 766195245 547456464 323594836 957369107 459559585 372208908 789392806 624676462 819446820 619506751 260318846 180378270 186519750 18719768 291636552 639551838 198308244 663024536 479659007 771750701 811952044 807860996 232085277 96886867 360800045 725634789 177072297 653114335 944063043 998919950 713329969 886725805 939423264 82730913 669671116 792530008 643788798 589112319 556778008 661011533 388638 741376467 550720829 336081080 649624271 66707985 389434089 927523735 976768349 904339448 76967758 686264228 404191015 935639562 532555567 784275306 837197964 852637975 933044942 131351613 746215416 359475502 639103742 745162542 67871453 692389038 69211668 658968608 735184564 519322941 329060589 148252350 291904514 537394371 102236653 2499447 433538896 803696759 804796422 887950466 172748335 129700308 604779438 658118880 712991803 580688286 484675552 196530008 467368979 756114149 83729191 658614653 56751716 391721465 857005710 998118565 658616034 819639672 771898028 172649199 129702724 512512839 493102238 506396230 57483855 81707918 484531983 135265114 531709129 691284425 418560294 590340771 368748168 760321965 931734943 739750240 845451623 175889984 135219124 893470874 770349635 861504721 503821872 625414690 675907595 531916273 753234015 996827534 233659568 651121278 618197780 307859779 719693356 208002204 641457075 236693858 347120003 816183481 178711839 396193507 816915898 479979655 105518791 448516216 217637611 557458432 119127966 322403748 678375210 508920428 704006953 411409328 371448219 897915737 820008041 862234282 253516650 53427605 31822062 281545838 704286919 842062912 515604942 720182169 192389613 76486592 975757479 654132883 32566303 861736126 359206561 179914383 414326438 444664112 91864935 314205313 29401045 540989776 211962928 791110700 248648199 770176166 796879037 247535387 311963804 394723069 952106579 365165465 631666944 673715559 638184126 638376386 605603238 176942400 533703000 750662261 160577798 763819312 765214204 894419545 594016932 801751585 15195155 891786974 582252040 517626438 379799942 624864575 940017096 100815903 645286354 763573626 478360700 485872492 159162098 232043867 338704327 186328125 339666541 716036460 31238481 720773602 925258321 62701579 252744140 274446333 249625139 171783251 883202040 662864748 399409 957998897 156834193 918100832 42253300 289079891 404886116 93758538 448764840 218874674 25760580 945569512 253390597 225735692 686923019 264359743 951019593 132582126 380637078 588188570 973631287 778811042 655769305 580443532 538775585 854283719 415605181 534676724 33262301 953639865 698533187 345884404 70779847 106900895 326431078 209896186 35051718 513626988 105102905 483276731 309147210 485486809 55991497 192034351 84085320 691100261 295100976 850963614 437654334 124905046 149943443 453232020 644910387 182092734 633971737 570282722 539100852 789805944 241843190 805834409 432774617 95151905 570042213 979383883 268756797 39540769 305451687 21144947 795982091 241974955 33669126 686791958 850686957 657248948 765350613 943843954 332586012 306174206 495912558 512437771 295671892 58672658 897954612 906807979 271630047 123978047 807367569 339564646 30430343 368603039 685459190 582710170 549290405 342036751 302310623 34009581 488287508 907625785 569872845 581388103 438591 926259853 44420171 717250785 341512465 202198852 604423147 853342770 972903681 960698463 321414215 513920002 494315532 437586594 548014081 673348956 860269243 892837284 831585219 702207636 520628761 895711417 468963649 62345288 383253697 950858240 56777779 198952026 768089034 198381925 85600604 349818104 814784995 555377557 351804297 787196309 261926963 573670153 236105353 208879087 620318069 810956546 531743286 72231174 211965155 715313800 978970484 541074989 204698951 974666604 932981548 915920368 989730797 267558215 560161106 561555763 718604717 133388407 297403871 183108118 360273891 633968933 4772820 849378567 462220150 457443390 88940607 628583862 874859991 154143363 753573167 75437607 566807544 230336874 412544190 282060697 305181530 885758531 349959697 308715414 322773765 493415706 211783759 466928888 621567104 694922187 154516396 533428955 369711338 831819505 705319523 110077852 493474267 493011193 460239797 648131057 358377085 29061902 922916588 400756678 919835773 486532655 248064093 973992284 939995918 155784728 163567198 901446709 66424308 647318611 343846484 691292190 278888051 647064876 556604843 27660335 482401366 628440770 874428623 56263101 575031031 534027248 486352448 478994801 1286197 191212897 155187582 873667639 740453235 346754180 761701908 749939264 383494817 754631825 886140564 471368205 289353012 45277067 846725017 95079774 114324780 56422197 208470722 64996933 649806352 409162277 259122108 691586575 890692586 510809775 379808571 437873245 43084887 276853748 25354743 127481873 36304751 650203359 545708464 768461913 551525080 540389148 543289908 739188649 624715974 786330152 594963540 258496699 867771115 133896257 864182506 343299991 910044551 150051181 216109528 974959237 197476446 994139774 309419272 781164829 886624193 913173007 7544175 305628473 717908357 404131197 901155844 744139775 448171015 829950448 571129546 887607001 587310385 470000986 838944717 654828669 252704620 315025266 465268252 272084967 394622131 43616954 165848276 361369945 147104641 167236984 870767638 458007906 553892829 349742270 458119693 102882263 663356502 8036709 130793451 70052563 144712452 627204360 404435179 663684023 237284994 648376598 825420109 929551925 314205431 111270845 413384541 847797565 572689171 930386674 332083821 102483469 436750090 848347513 878982103 601419049 339159451 705166297 66915325 291004253 163269901 891703650 732536139 666592959 993141295 224178478 450762033 155566502 864432978 504556314 131446569 34758077 192287581 750880977 8234936 32368365 13921966 313684674 900331366 722076779 65994296 281641767 778806727 463930801 804877424 953076988 535000179 82225541 9755735 288364814 170249228 656504053 89535084 265536234 551256385 876410449 831530949 440276460 625356222 264019001 689900789 531569713 490727745 867242129 134665496 783668641 767596682 601474434 852808919 523777773 728457833 770970754 114135393 528782991 219251368 83014480 342537578 479491013 568302374 477195501 738373683 65648537 703100100 56340646 236899967 793770969 246318191 74075408 413880733 500000287 549797397 694919943 539695204 979146 486969776 783088302 47639093 140409861 258505798 821921907 244635120 743362748 440211170 430855688 568382728 141813677 68654995 881480044 113373298 54740560 264679539 828427747 250769838 940003319 156720805 680813303 16648126 824668842 420928853 769012093 276535860 605710407 466755762 210068626 795654695 422244712 650729720 968113306 437371697 387086973 817804140 141444672 60616314 344039601 297185620 685418364 905009584 968115964 989647109 180128391 458542092 738790691 828099798 493100260 887134027 723803304 627605039 481051234 469177521 320166369 500878962 219972631 466038284 992329954 764596760 472166232 996025014 420280972 768073115 576032979 704104077 107182475 271500408 872236907 64500467 275820872 928558655 148363099 885234650 277843203 301250432 755095322 334644918 290419385 60643028 436306546 690306950 228639280 37715423 696982891 319765458 455871483 790650443 156499291 148123046 812449907 201993929 320747485 103478939 619122868 2206228 341604822 473237707 337689002 109190126 207583858 529647583 400161031 625814051 559196710 338681347 391096383 673192322 601557421 433509105 806243219 219291883 589632780 783558885 852578061 731638328 863422608 70484901 308425082 497273179 740508109 649106305 839439735 600734016 259882141 646606412 546679905 344720614 160631847 356333673 205189472 522908237 982420951 763605944 788072552 300940158 84081247 844408492 94218029 477666193 996924093 175441724 127421489 384329624 712840500 401567714 879986109 188217787 183158866 538337449 365118686 954251811 968063979 204699675 673127024 74229760 464746522 829153361 958593554 494091408 835659845 551556071 470320938 421880851 667989015 857746693 995915758 84539092 883921538 954561112 587543121 53376549 778275527 832912406 655538452 618629982 391467368 394727168 696112833 194707174 46773040 363260252 582157479 247407395 959689268 478628341 413669342 218994059 460357331 882394402 45490247 789289874 566490286 624871877 833355146 409000386 453855155 932554816 131193368 539209376 924699410 435209603 162015273 215194051 34653263 433428483 43730618 273677503 540896809 971801793 698824344 981406265 694050731 558309441 353432403 647912157 793292589 184915857 453268545 392241755 715065160 553423689 555881344 196735599 365378021 542535301 89685246 876030427 143151914 413933548 678223718 821714278 224099473 169426095 674494773 291016934 681859027 520466816 189425574 220272694 632029685 465444768 671967687 904407092 874505794 379530708 427190629 646071246 953258321 244638572 724914198 316441844 441917947 616308540 171234878 135455139 476128870 517677733 696615942 162962650 393379072 19060361 695602779 323267492 871838587 949781594 525986294 808282645 848346578 189790988 535604824 64174151 455676237 832606240 699229897 729974104 307834230 232868507 929034586 428659321 355295008 378084360 12617186 532001241 462401899 202486659 512271107 263076785 230376118 498046628 146996003 300395843 103048626 155320983 570462066 372547035 818911825 539315974 987203818 703785932 848035537 228547882 324752204 946537326 78867634 310709953 867114529 748443686 75078086 855573262 344869812 499624284 184502044 692660708 349008930 537173890 285315605 751223959 912049224 220536084 127140690 309069061 326013139 599159189 690763200 593741461 937532719 349311115 645750165 494161203 88194708 8065163 135936842 140421721 459925255 499234352 229308580 369065474 595778634 276750106 570485171 842283957 494814962 597615351 539391431 954478978 246009175 586657910 342299773 498792702 581043861 619028051 847888571 742688326 565139352 183583308 272753069 309000963 840456209 591382067 30891972 517972320 409434997 836187346 933278656 297668374 599035396 186138379 101058469 615442019 215479755 564104377 529921980 958102797 948190614 747840459 361219996 395295585 291608063 312985394 916968225 30914357 964141156 644007400 588262768 911310056 950724082 850483694 902790642 593055330 534243988 552564050 591443297 189034510 94970374 443035939 299736242 473976295 783597766 519652988 967942191 454019685 335689503 723899265 653121121 824346003 54668830 389589593 277194015 586081278 803537052 906833463 589545602 281419195 552002107 233173078 770641905 614149483 904609376 324033786 618060055 573688112 394416447 919622250 109502696 829313469 775178959 101391357 950477473 427654468 475771854 468273927 212515014 235097225 1199303 619187183 645031972 569381322 900107530 115668253 919665869 623014365 3935151 324448773 546824993 353162002 789716626 769959454 686521534 804769356 855474019 282567149 760412054 419399664 629971597 287832573 494363869 929063661 783882314 670950877 109359628 594161588 986153883 195888427 235946986 574393163 584003908 945215623 995961731 636121138 317499099 522410139 80875305 478280060 10782644 991615769 305203576 598022075 737536496 789965245 990926937 144208913 438622074 702941513 110837237 698289953 43668224 359301255 988739519 806770714 235989243 731593542 434428788 988981175 20298923 910415718 389346330 927882030 346459926 373452742 71127805 473798474 794603024 909946705 770936496 921841498 237625647 230114294 502120977 767431220 240739029 616317877 171837760 649628980 806350631 70222732 232696495 741728579 612439832 408519304 368072716 814726602 445564256 317206200 310420824 860986823 7097215 429262394 152116697 844818098 192464060 15836719 364129044 553680789 823544617 539272638 942312933 998768634 22258846 300337949 470239074 702509309 868757946 87190662 747239922 688519736 589742310 401474360 654395972 854381779 789410645 211321986 780109894 355697788 497889784 796776629 436497979 593192040 274394775 680274983 264237987 472043606 524959926 898413630 145419337 21682063 197424807 164696676 457426244 698837469 443427970 188728076 905363443 155867286 805761831 437313710 602882803 495678365 915572029 862494415 393724726 766486101 285266997 378775798 735104239 842353836 412350278 357822391 38296729 759268379 330055285 638984108 915786744 936905373 62506374 393686136 405129499 173231032 260502795 809426372 534733139 308216701 975738715 160760901 563252796 118991745 180536727 18578609 399326400 718187491 13148325 984411852 249870852 625729608 58736697 537422433 491021443 241492703 514424266 948974147 323109618 432235356 734194583 646675275 374522715 200138242 818526635 717114202 11022342 997429394 996585168 848789596 225815693 597586271 833029031 988572997 737395398 246032957 985416074 451796746 41365977 243042184 287572387 709802419 937894704 968044842 607441891 163609415 387531138 54557585 724210689 479868630 814562761 501300912 410368639 317506945 390542409 750318345 820235170 338375524 192160144 981532318 248195197 617113261 771080050 552876033 381918696 472047757 795262986 280605510 667372931 44805180 653925567 39489294 775948980 179018753 751646521 969812350 910176688 691431458 158910062 1680194 143554156 338603508 257914268 61004435 751904169 159080143 143552836 707143727 794425839 677049110 778200119 292355674 33032845 737978679 226589829 193370085 77241503 578724508 345437837 259655971 966496769 425705672 140973553 501273847 113966173 576236089 465918108 438854594 746998818 589307767 529243078 392062068 51997581 579579929 2046186 426445702 579373465 117692854 483606220 333893108 155758862 733796082 440815225 925431879 945138562 203543159 268994116 553729926 195281992 54375927 514431690 800445518 108183426 931731754 371411439 405582781 279542041 576244950 282009052 157017719 630344123 397395396 366545420 847181737 633725408 889299399 538999351 985832972 516285133 988914359 530685795 332626140 146916228 848420726 363256024 943656674 631021530 734034160 115821872 360506219 159959398 370110232 225630021 933516109 279748233 981278183 579208505 884389861 920380777 469782110 548771195 430973979 736141044 174180746 154446783 152656733 54856683 325864317 201401857 852960929 539506117 214124110 816911746 455170916 54959567 618487074 384130005 365235375 82369560 606673698 106238920 565819918 433958010 798128259 423658619 101350041 894031251 23463805 638781521 326159853 206960588 631411537 207731189 72939824 546602069 623383882 868802909 11576849 529038374 375153083 285025989 838137799 454368515 390502143 173562800 279804941 187566702 986992246 534408684 645463596 339360954 377036175 743084685 54000116 105233410 885495479 262949614 740051638 994595106 529334376 675124661 685843543 470739141 153449512 525298123 705331767 18446939 59956609 150376 363671111 55201049 659307266 665763590 605357564 432153860 815396169 345725035 401014103 576008160 214322677 339987873 492370906 892715587 534128819 525800959 452775832 601286270 808297009 643644703 368385061 301184439 492196143 198483941 167548830 377715923 334046570 946713471 37958060 476978562 718981297 67567198 961784445 283969345 843163602 910132548 41242051 368595530 410277291 996805168 397205953 967334057 732718619 173687666 779655226 591327532 634827535 597466269 981506430 102711919 360029045 182015371 139329892 404041167 578486861 974809441 753568841 904400501 34489237 847572365 134397971 703853137 460459352 533561027 10731824 464525595 433119402 355657215 650209179 640396116 192804517 754333060 350080971 907289924 199570793 74557408 871807945 171732989 459400995 211961063 582947876 945937492 851386627 391765682 548292339 678583786 408188994 941396651 156413138 173612074 830757158 810776697 248114667 731739970 758522873 997355285 170677993 930193707 483494410 459370934 694456832 143155362 230019254 644741348 620426228 454105652 21385313 277619562 856735497 435103025 543961455 300548957 551562762 551390894 41415510 736680217 877094227 201324685 36200339 946558529 898606526 50508405 466341026 554912962 640492466 543114457 924742419 808165840 948957727 108567534 774448244 137631465 481564537 317247670 82058339 409415376 140303041 359940090 967776127 608046224 841645688 967743817 177207925 337056897 363675058 883477500 417239285 173790523 900058883 583209010 561472185 164823203 225556361 785578453 992636551 623396071 925543914 102026642 620108581 551060858 844160854 192989159 419813479 605142041 741586050 377669646 544465959 388702152 739611306 677103381 435107655 578862037 795804825 476870343 91657906 275357904 46345115 997922494 882964570 663402904 578397317 505592668 679795257 147255378 755084980 453664968 739394387 361936233 798456085 875150323 15962287 828056208 805117198 574793109 144429152 506546119 995104155 959090987 292864130 38030415 913732662 595713538 679660598 312677813 885587946 43801641 891544233 214481100 479080003 933788535 350944776 153343666 386354772 284221067 821382290 756060620 359283649 616270800 338509702 355510983 649657772 723733623 96868401 705698706 556088775 894723957 810633442 922379886 651925317 384865933 553849334 252111071 223284708 453071684 572680401 223302832 356399852 347029999 123986134 818462453 750658091 290056867 691007616 948281610 395461367 366043198 346040899 46200725 323526447 150445934 631207332 800834433 894463543 471962526 422643757 174699778 796319743 744540682 357834351 922782869 67597823 163228339 580956933 201631741 482992689 551117660 923034001 155624265 990354975 345682584 515853759 207751114 432487892 857322690 1144382 824753438 722420969 590691574 558126540 948713512 591075194 609482270 293816361 889989654 37257520 212876780 198021920 158214493 204654137 790736854 588437379 723193526 31970889 635355164 674133034 516751913 517282206 392988872 41225979 876187132 197306369 334771880 697251295 709559756 844167102 814436950 117433286 80799086 850470573 349533490 162924975 592519691 798576425 874056804 475595158 281426699 928834845 744178654 738207628 941349157 120566515 712366420 506318495 387802965 836875938 202201419 427628009 922840031 113816748 563740681 782770063 685516622 410148116 446662813 956013495 102096763 767032936 449692641 913080215 450029690 208936638 175875956 412385385 8830903 814127289 132987070 592324718 657438939 833598072 143508980 458088432 500014810 76336813 807131912 22298691 134993649 504363406 12614846 907361982 846971810 65638874 176013212 244760009 76516796 68277719 316458741 530922441 523697493 740734547 489134047 959859761 11444933 644337571 104974392 730208892 850971568 111422630 1679278 325997357 183110663 744138178 636296878 624337615 19925754 789617640 129280368 465573617 490022409 73417099 269736693 510728495 980477426 436244395 918570500 584182828 898450889 33099469 383398448 838646929 594426845 455321598 967486161 667487763 234281163 140645334 653214723 587334248 50585207 775125878 335065011 577190997 682966801 261649281 380143756 758591139 24495624 134913316 544920845 867072294 533219612 899606295 949242481 712806326 206901583 401653402 274783683 16988472 214522862 970389104 97974994 464460434 88101775 248774121 682993463 172245949 46609677 269299677 789144912 549142189 296096907 509252517 306885450 264687716 651578484 387739693 592995345 78013937 855559298 106908384 969336414 219602277 819463340 750767796 726690739 595663574 14807608 254274859 181305684 589088621 634563763 436184900 211282264 751931470 254851313 110113942 863491987 651085743 380628491 768764465 62400164 448302025 49896043 630490550 750185207 399590364 759825079 135486539 606885816 688481593 540946664 581951389 484679138 354155562 48494393 357055203 323087670 206479632 975620911 907214811 483663164 820825928 475112082 238064074 302708290 601721920 739285629 994052738 448291427 976156776 603124295 767358295 382814842 493466172 338335380 286579238 188394806 292881214 945065558 981709401 915656708 115524854 723546554 30098905 684848669 358834682 774395202 846158368 555752833 185378016 624625328 235903787 546729463 490910543 531404304 302888065 379931153 168844013 375498934 545705521 83859495 699298412 7424574 640321485 733257047 182681738 614032782 590334840 495511692 300813577 367517136 817562326 959340919 715657134 900669307 768005143 933892493 23117651 543209800 604002030 902029583 213039307 881567039 884903836 731404807 29604861 354946984 186934761 455701317 347796688 715374107 427289116 407829343 599001657 955536499 153080853 945727927 510613809 180106706 936558122 284795766 452811707 650169769 352605765 644324490 980135390 92788391 110270164 151963310 440553139 315874251 970287564 118997089 300771149 201011035 86765998 403104234 32412627 659743710 684208767 449449053 834698861 154085167 279057098 281792652 293999181 511691619 628966058 624191516 313110702 432417252 977279164 543962229 84157908 564917341 462526244 783942597 454881800 812655551 233352338 641678343 970657434 694440267 88028477 939735544 216145641 690446208 479113185 549143074 605949264 357620528 836129991 761054169 923075136 565968492 537404091 719468590 118952234 521219985 762862099 462406918 282507655 691741763 259239343 329388550 596447193 405026924 744726005 588515237 774884520 4289860 554987474 996706322 161296780 724944966 89610684 961510996 112606746 853589044 286248629 287668528 228431608 362467870 440427838 64886841 878413006 261319255 937533545 825148612 837456720 366724475 906417354 315613938 24756278 526468973 8103810 662516911 271381570 608005208 945608501 920048806 521741891 640304055 88619793 345104723 962756100 302265663 96071117 731905012 188316519 448166391 313982633 694153106 185926472 868699947 289788007 904665598 491701908 833145199 370725977 153019086 460490556 385605024 935035732 447837286 123817279 305489378 845509303 755868907 858268054 268773027 246807910 498735950 421982037 493962133 424806097 80162889 937557129 776282802 175087086 127518040 611348811 737813314 321386044 621862856 863994049 765632211 571405505 604102567 635097619 493902387 614190345 9244366 109162869 766938243 752117804 605697501 738748190 202089511 544037835 206808890 998835796 74068424 313422598 288437275 851781215 594913118 184175505 323659632 615232402 833964837 937101984 170738947 481921608 679468188 686892017 696169554 605165025 553189782 965813451 813559734 873588171 771618596 601410299 105988418 299578994 998240419 143115222 313916889 316157526 323839159 715025727 175356960 314290424 623701578 676998809 843886475 834325987 330860949 37997523 745310030 893175718 305601296 684346978 516902254 146567900 957124738 17158215 77779379 7496490 847550454 965982981 630689448 253867065 794176704 233335979 115669674 229480123 912977535 343923920 287780569 480753512 668283923 10992020 376994841 312499207 437260459 276057243 975457310 359524446 703228088 62613013 706335842 362177345 229769467 949727156 811903264 180568970 120138101 326900666 924350055 503651100 828660853 747193838 467665151 433631201 670001546 13606556 987219846 681394378 987585174 113084316 532822876 16271059 122052282 767020363 470474150 103256572 83446117 749585806 886373465 865861714 850053961 379175639 210579753 524392677 965078882 542176534 449602712 580382928 812796404 526013649 3976431 89719351 33315214 954326538 81443642 690374464 820545025 264669519 556691033 869084962 357965165 329413302 713873892 933764372 648869680 540950241 71710539 3857754 46073084 76094960 148124855 691778622 641195972 718078104 385838628 250544914 308477636 156072203 79184978 458642224 555901057 407483912 159820234 893135611 363367364 883269589 249076187 93212890 929819301 500906305 934929823 551583812 917322620 615862434 685012210 616452785 175961075 143736022 751727489 17255587 736800243 587825221 758111673 800661156 280793775 199398875 576570324 677319239 176730533 959209487 972698323 975372582 356277656 538550751 810003836 904512996 779393431 237198289 110394720 947619116 118100978 763130612 149197785 488887980 583059787 736192479 751044868 166411300 982135168 841875375 407276237 895901267 187287234 990629130 162375136 707674626 822017156 507463967 435362488 626288900 693712000 430287010 990680215 482219830 246109628 425476822 774103680 320501112 859674502 449574526 984028233 560194743 880301166 215885033 790280583 107651294 733263189 548443884 784382106 427674097 296751197 417007079 612492716 42017003 373462001 435418303 256001962 216803545 800543684 139485923 252748114 9903563 621487065 265681736 593859102 636550623 485396335 895226734 803170138 380174900 551098897 137926746 636899094 454446585 800515222 648870813 812889387 433223514 683592733 242830408 147867188 565246613 864659714 348138495 719270049 867910378 730820603 780292069 735467418 197942694 939451637 890774950 32723999 938878747 868832814 589610111 934421997 620994464 379684652 991765031 864488074 466533019 150260665 558517225 942345800 31892339 32125677 54043537 564483906 278999197 665501727 103289975 602543189 897176720 796453879 661248119 496351273 298232021 802281825 913268986 847755313 603222252 531413134 46138348 410375584 421645169 312183806 668983492 819514495 121977081 101700471 396011393 213329548 810331942 6160126 20958119 69166177 39121318 29189612 968261958 314539086 977499433 802682334 227746293 329011576 794141287 915264439 72349136 490911430 722349860 157527202 481720449 353723880 596037421 875114263 872004145 688231512 229491536 283065292 374853787 943213653 606501994 710925005 693040121 938036708 106203740 405786207 450445332 519679451 61081362 386630682 20257597 723559630 557670269 68197338 738889028 915652128 770952341 354839236 65162891 499831545 222108766 642840643 65359094 946726214 283837669 995211019 777694454 91651266 45243193 280584728 806890624 128425966 22285941 354278318 711582229 89014033 813337275 501875292 414284725 749923130 676602934 114246644 763802099 813425477 959219737 370266772 312515811 530611916 195998619 834922910 584953125 37959998 987609858 554745534 276573919 956541129 559720599 542154475 989543613 228182883 611940778 927057246 522505465 110518220 454479768 734924958 881603151 807720593 681217730 807741815 234009349 545477886 461167506 516952573 163186665 124869679 588968317 501599880 621521235 819646974 983849467 142731971 648894497 191100441 644386188 593370775 494114486 208185071 625225918 399442232 870952453 372189367 487403811 281594915 795565185 628585073 413613138 855577626 594005801 323107559 522750706 431435822 700369028 373191591 632950185 745411759 676786592 758351885 241724970 554794043 640955155 577667636 43486770 437573303 635866618 583829513 398934657 518455884 402730239 764119611 871093217 373448305 866753869 861828927 84455460 747530467 593344408 137664601 364898599 124551845 16475428 659381905 199156168 864921857 916974773 367139764 385200375 57992847 703376793 401643359 421303457 690559529 554529445 216313838 190829250 910063092 857658678 482881932 4027997 877658716 945887799 504665384 899612282 452986646 433402644 377656188 317919535 291377695 713496770 322121734 125517459 18616505 456195264 916867087 30341579 656653424 625423894 539644327 972475900 673012250 235429968 501480614 400329054 392562901 449540741 387298732 428258346 388356864 82859603 446168357 147380640 333835594 715667168 251036221 316777228 35735978 723018716 326664684 839777475 863987289 344029308 307420151 833228056 352967386 693323389 496511457 474284403 120298748 36893993 327042556 994821949 608575444 45109832 749417570 668671718 607440571 221251895 258064368 666110188 359232088 71911377 380971347 735760590 446688663 267342715 983002101 133688856 241142953 663320100 340808466 251111773 709885455 308727622 641697965 783843125 120934281 264142554 499127944 184579396 166983461 49701482 951336246 660861746 906608184 417135106 734959891 346078646 449758815 739370296 156213560 442392965 290782333 264918060 440347794 991968869 647220156 557481092 273459922 998900253 484534932 713081454 202777454 745203072 204520385 117648801 149926567 490216298 342725954 385709657 814335109 248742334 734731115 640704092 515844055 383512162 520012235 595982330 1150775 419724879 320051775 322162954 764712452 484610678 503756780 66301930 806826856 321973475 108870720 579096705 117119317 690197400 921690605 751034681 594916221 597871532 558603247 251710474 494257765 779154488 769569930 646945654 28390996 10423136 871990349 370295166 147817563 234106700 719578377 498548919 967065425 215860015 681196765 974350127 795561175 469531714 547594026 41206664 148620885 279334088 853641121 949492715 513929211 616304909 941612337 50360579 741463489 343268961 81370393 353889030 809149545 52249121 79258079 895008437 119019128 312847531 584053323 76304979 401379650 766181997 669605492 899259057 353411038 878718167 986307252 98329123 727616555 563924324 119963316 741886344 825439187 993919129 842263645 335421254 286600516 979054331 590895842 869341262 450931896 893318686 835835328 64579346 130045742 719664031 509758399 646210196 99020146 692818975 269408741 459448151 572209934 200240710 164425866 625982058 145959776 42234824 184860746 154183783 6932612 614591585 721196299 182506598 332648551 285186254 980907764 420863763 86148530 254001633 128879999 14548377 557390052 742746469 794484325 200742575 528945467 423577399 347334314 552049042 399561150 105641018 374240669 194202893 241188417 848635736 626140110 323022438 391162967 896766082 679830556 801174651 736381539 702044596 995944108 276556454 979529870 991483374 301729771 3466193 409485766 5794879 99190665 912976229 412071623 640178355 681310085 142923868 74890508 800694631 138040611 429299763 580064736 885910398 209608176 216897520 766824790 169552931 239157439 966725411 967664451 453752709 505975981 675240161 487017031 985862113 836838428 871457991 400603339 114342521 77145020 480838654 542586879 485396117 375409022 324085809 456324827 610289801 650277283 93965977 686886177 555059888 205968808 676956405 705473112 245255786 806901600 55622791 720448208 640237349 798187483 930965793 753703586 880912209 195708536 12854807 634869421 90544999 285957080 635207497 236010394 904646889 53717227 436621851 470514906 415322980 474862050 640896126 881040292 567663976 714278205 445826022 86588922 994272657 397438138 56813140 385749410 672435073 892028524 438892876 878192943 104436960 232645028 859479261 189520630 386963554 365322239 798544541 234686489 843309251 668611168 162400424 382516609 899523 915005942 378958506 499124444 999948586 671455538 295629517 40819620 728805329 325069523 718601927 810895385 826913931 845387483 660290262 601483843 240041791 694442902 535179458 46052595 173186004 106066587 93214938 21756607 827066686 515469764 327254771 505584392 614751353 104946231 600550251 892039419 923330437 903545692 273220136 725783681 639327853 182047726 246697371 963660118 973826112 575044324 766793652 622897147 511981085 544860293 436843257 755445430 316139045 89149786 71054187 81991835 891935873 899155772 683371929 647712892 146468452 143175236 842384283 574895615 700802824 904938967 933857295 64757384 600255150 457537440 93696792 170559051 448091557 457026198 105947496 504801086 159931192 372241395 699015989 355763747 27075273 540399676 653081915 565352831 729373364 586841663 360727491 202481318 923192679 470035979 397523352 590390958 238113872 443781635 399764755 675496825 522690287 196602821 703269136 778791595 87240131 549291841 806440440 87269051 109977940 585714602 167382710 835320283 393613627 944616063 353619909 893431054 164496650 217110144 501632542 586981661 511621994 654534333 795979851 591531414 192559874 136338310 641387350 291093973 5465478 154490746 392990171 757102069 986914478 964258942 827731701 699032034 758711103 203541695 387372361 825308748 478067198 902736812 181582343 9058218 314013380 635997446 759250916 616469311 522715494 909281233 427702305 179237902 673242315 6427479 384294786 138380781 41249752 755514927 878916438 196376686 277354117 414204210 369194611 613062648 177503431 886737031 823806006 509177518 29243811 807533720 287494537 419988869 347972640 76749083 216602071 807940400 592296534 148262412 299821079 738609971 791304283 213424814 340813767 323738836 625144658 185750159 337318893 819346469 312317542 348659843 269645334 588923646 335090634 516685221 704124764 826410495 224585654 142437465 39997277 532752782 174270831 924927311 882150714 303729889 318397501 840321141 180223654 38654184 969754736 828698637 914745046 626084205 781572712 46128024 339384202 90330095 224289157 313888482 151614980 261668549 602588974 468258051 920961559 234307586 156041689 322944852 327539478 432365707 777610240 950171256 352714464 561995524 662395173 539608928 863935197 396844769 125021902 517972541 813409528 672319319 344106388 891977610 925261993 123873897 192980493 284928270 472343534 758278110 224997340 572815061 876547663 196775495 761085103 313412144 726410712 993721850 468298544 862886081 898725920 74375194 982373921 644469607 61949254 490036621 167129408 969894223 243611887 540335109 838822491 315862257 610567497 907068667 367404609 626177285 932172813 281215659 512104907 207880081 734848372 372165411 986686175 523950304 104658250 114507053 488637799 169006730 66309083 790425958 466695761 146592360 571063035 199315247 366431899 605400990 9351437 589016490 794655302 278386586 542065650 804819662 962850654 239689489 893458459 97723473 843875061 336357115 885295998 833620146 620272675 966611361 720558746 270135867 852877065 311306634 348004213 566636536 106562006 927987857 266109597 220352713 266382264 548713164 828887591 90900551 635017710 303754660 830633650 334184926 30172855 190079170 230525540 432811964 389192795 284967197 103249903 11181020 656548913 511416815 130060674 865111292 663288721 210897338 25292257 582550439 709186780 19513681 90911568 149818665 46930047 501288643 157196447 34463 681217514 536637551 773155 196554213 935506073 21749750 145062073 89070245 645085453 481125190 175575240 159699279 884725713 564918164 110645057 204431900 426310263 935490141 824650391 449913869 706382489 145626211 929426889 740031465 563293912 889012916 385347421 369807679 251229664 42747811 477124195 538046313 563750756 837621196 706531694 720625286 614168860 226943764 239014816 223040129 740990413 225664937 775990172 74679814 451229758 9342715 211462805 959373201 588272196 134088904 229730107 146873953 256248758 545237528 154381009 249629053 252672890 210677810 753929240 576203447 31539835 246330798 206241382 491386279 544453286 915675495 102019723 810553517 691520504 383319935 253347305 314102768 278699380 676889189 78135650 202063970 887346725 855265741 595547752 571334843 199680026 468659122 333810673 687573624 75662192 867040088 901741945 625868519 814565193 12564047 814536199 242760212 637007564 719904103 312604970 178137562 734448688 517746621 364416504 770147542 177995181 157376950 877226512 476462965 30963332 431638526 515676311 222393568 159856130 983053451 561383228 604467223 996086393 871935383 344820533 83548886 25205313 960138918 911357505 495641766 343456445 566439814 914845605 734313943 725159254 336683338 896684335 573152899 982377091 942383953 906904119 916137351 989483706 755886139 318237849 395504525 772842878 872162548 2998717 663878663 268131931 608017846 867509648 970272296 142014945 989811449 943681418 76408312 36663978 996758656 360646570 158353209 160977499 661458011 94707059 599141503 291128475 16060381 514159860 880385055 76681758 974896288 295986628 761326394 173519775 443517834 583141379 951819963 275371745 761872841 902991701 901914702 672658347 996472781 473807334 51323761 44888783 389137495 344726386 859973726 146674987 90792295 431284787 403375392 993068705 932942668 382028785 582034568 67552023 404663706 263387387 788893486 93738883 696865837 444194594 482166898 453028060 901686822 58114252 899467133 712298283 195696376 833033179 132373565 949491314 588492113 855525564 151586922 75568072 559772720 543250280 951627400 379743302 779895258 759285853 587826909 631286798 664505562 76613537 738914937 492074314 899432197 857799616 175954997 499840815 110655093 387586258 39534511 285578996 743166097 801557366 607490643 196369117 926468357 704185810 861639246 628530 583185603 653299858 340853658 633562952 451107593 852270576 608941302 701436537 333384794 83027625 83126509 158170916 297939844 272341249 310090445 948462520 316625050 203001798 702607790 999769508 278533114 79549778 887662960 924768867 274972486 573567105 561321916 986000502 525280877 183395770 817521413 37195884 619490974 717820906 671853439 856408019 564494682 581231496 606395434 641079877 724852583 961806226 936680402 140357221 754743243 255484049 873146887 114937565 176105183 338392974 905739293 88009056 917056317 147216163 356128311 389096362 309454024 577971308 160652861 581370491 737114545 864355859 981023968 769616540 614508904 209968448 396477079 354375651 509971884 694507184 492338850 744506918 320003455 173464991 365750797 91940940 76791855 332400336 887478947 875676987 458952783 975097748 214858751 226931430 77927611 835891907 406985344 365449035 948263832 650581944 293138512 780459879 842144594 400091994 415918174 701446727 653403039 93822233 355844453 752919037 659389049 797391850 438010593 969570980 529580837 684233035 928624666 498884957 726775087 990741057 218083621 306394962 33341290 928106077 494301654 469424310 191606516 785672884 447018193 737788354 635694130 635467493 692079225 754943421 631433169 413504021 843131395 709409258 746394561 359425522 921142885 194176673 861024832 385775539 233291104 665565753 235995860 6302998 210401916 183853077 89051466 937139043 197723146 427951520 971959474 933490278 748465699 95343949 846697068 305489270 825441699 418333588 948675354 579230832 968390454 888084984 37595562 853694 987952203 7617029 450189392 213297226 635866650 839364171 644371335 272325773 124560039 750590822 537518355 995600261 262636981 516513015 610415363 536813237 352563157 742703272 477443753 589138990 25878882 126576428 34515361 128631177 486483834 196821310 722412751 847846622 971297543 58849438 250310497 930628569 663900600 936714520 944659915 92974756 149742855 964113278 476483785 56083704 942115121 600594093 133967454 382317328 149308993 831709312 811321561 282411705 594228484 625361640 299216331 414220856 43982359 950552788 949565712 288778603 625867991 275215680 330904016 544222892 277685356 580101164 677485941 757165538 711993035 797321125 342735539 987419006 825706916 415674555 971903110 98529138 668669823 265901194 631598389 786828864 47813280 29630771 376675656 23620586 3568152 991011040 149436057 400941314 610830528 37155013 562833213 665531806 973381176 602348571 971356828 230036058 113488873 912982307 431670885 81892190 353972736 512643115 249452424 30328665 197485688 651016832 742840131 492733054 493582354 971280768 549741081 160735119 303525717 511615375 755755223 424843982 915144592 417494288 859514259 259900686 894035422 633646463 931741350 926718626 382191644 950362700 555729335 937127018 624009718 275499011 218918577 443666635 291242971 48838951 521073352 440605874 145419264 385949517 459355002 779987610 514795369 302347793 663076232 363472765 570845407 902947345 845060098 906489826 140302829 210558459 987985210 914611416 299846640 436388734 75943372 409562358 57190151 841411672 213293471 917687641 954087707 405988683 957753050 462527143 677270745 766981916 392983799 417282063 564039356 588920227 456407471 109990983 481528327 786081976 209231364 820616844 228735419 327312188 114903369 82448807 210440622 137263132 254532623 306664677 431446391 621409608 924528943 460116762 106918260 819922620 964029649 695708073 198730195 832168826 235991392 639653749 758252925 306830474 429844113 299016682 668671278 592654848 267366495 424782340 754764902 775619577 422976526 274335548 450350189 620112272 996675373 928563868 861287253 162401270 658228878 210822065 680593651 434779483 212903756 722374033 492624361 13532665 191064017 248316888 844259998 605365522 490406081 508030384 765066821 695656944 752901654 428896966 610559955 837557992 518496266 630977104 663630091 401673296 961966117 389239820 879785845 873169295 406562348 25176898 706440030 929735691 33303867 28131773 643299042 59260470 870187689 20319959 106861791 393301135 412591901 865308779 597202430 258025619 364131201 827408862 362016689 314245585 182062603 233483557 126372652 364179671 953871669 213968302 502379636 767973443 10668230 153375615 952104783 395868082 2030283 460138009 179910220 980787925 155333781 801977739 903388615 9750619 716024256 58345324 785809626 442212605 476804405 811965403 67679860 618398332 335554075 722920572 541796931 113287849 800079592 458511745 543189436 294518862 119869019 468288668 88621859 541711436 298166389 54694417 88605310 202619521 168948611 285598111 231635105 933575896 318985496 902741912 966698015 388910151 158628117 250848722 67296349 451540419 440491161 758316716 124968574 430284622 866613523 697158668 831991927 41898232 476337460 98194015 895310846 226848719 217085 422461341 29667220 750078702 429272496 220835906 166589315 963728502 395565784 299275862 588823769 63266453 951912268 621737574 116051564 878565498 708712741 991494283 550808544 564151137 237297099 292218718 344671901 403940235 360416487 942633740 801062096 672836929 862194540 319384639 881046646 695931864 519380637 252243757 420568140 349621928 334369528 86117012 837261531 230759958 169254730 599779004 602099572 50646667 633576874 587398772 964629807 340010870 451241587 466864147 307826667 440882262 904013129 506508402 942161233 617679277 510493718 393019899 224792529 609937410 362223123 942540188 940359587 606122216 317429433 331120588 492182472 462973437 279950029 742197127 992484616 519074268 311324504 2107734 357102837 361818936 71010999 747303493 360037604 715034045 528342397 702432490 83052790 358960934 209669010 815467620 79043862 280454201 527776547 73887068 281629682 815968189 400685477 284543741 669921283 165797762 315799248 664635900 526471816 158201704 518528940 283605402 504794250 692861517 835489156 498347167 148844506 597770014 524691181 36534869 110628367 922691530 419138754 446746002 780061579 72426574 382267688 810450873 969560691 140371885 741137037 286501804 459695034 607869678 934507170 301015260 92675609 375927332 780483940 464543292 945643789 65481068 218728985 649811791 23766497 718064614 219414605 725623063 854518434 923155133 874676435 577850148 476494127 413533729 804378311 9177229 357016609 562861647 476668557 373710060 83387363 789006472 342884050 595808622 231827879 705330712 596236172 177851325 659816544 977441102 157156599 188135694 349192662 398688904 205571731 539600676 114047883 17287462 694341169 296014144 650101714 726516370 518927075 481709364 566177474 275488065 276530693 942260310 784700 811210664 412858428 159220866 134540265 320312655 69756533 555963681 3537462 25955258 680346338 563913757 103373663 89540483 624880130 594763505 900402530 518735678 661604761 513464216 404548618 740350097 469316016 524830107 739005413 18940706 17326494 436308742 190412619 417182631 652757761 859243376 531246428 56217819 912681144 233177335 724369153 702990460 858041333 369591107 236387818 763965014 454015271 294236799 177867667 195345214 123148045 326009954 914158644 335101452 524292012 228550446 14795742 53806755 606850383 831939239 739949916 484142827 379864457 144858393 965376327 146272214 357173817 718409307 408478976 48613988 398290563 424038093 207833518 661794963 25897422 908902997 176916805 505053291 344385238 259077473 160957305 750964483 902582421 200205287 646603468 863140723 479714634 460603493 374514055 477778397 198950281 6641376 939272887 257062507 482587934 379908075 118227257 290384465 592223279 319166359 253671080 136597702 179277335 135977602 938480242 329186320 538609287 79369433 720585923 985400441 89672819 900826435 296846741 533007694 573062935 213830650 387291559 451774961 800152823 179243450 960628611 365615807 633525470 371886797 223550071 234269731 53285602 57873916 30548382 925189009 930048863 806289315 799066327 522147457 680734201 216564379 915686856 424000374 187011228 229815629 169938149 286980861 924304508 311129255 875703909 175352996 16288535 96354591 601671495 431175689 335661359 88425907 986065492 254557130 278127056 558630632 584075036 711856789 698461521 221948881 502153465 797842459 548021324 125958910 867145225 957525525 370060454 630394258 197457973 766644038 907854988 853854769 727646253 575490170 724001138 807363080 279052904 266260866 200697619 599960018 966001195 864114232 404103795 713772233 165993081 990790526 458920672 588711349 470708516 247501375 610621676 811118050 597028294 93334125 295563126 90698794 931591359 67867648 296563875 508763112 919457333 437564927 650697435 952670727 957309720 86544241 366882773 41808365 816058403 528416873 166332298 876636822 815341267 918259456 259958084 332006273 257767027 630882394 543326346 260228019 224942866 335748001 993262644 119411897 765544587 606646535 710645086 386185640 185964408 110064324 817307753 871501859 985314889 930583072 925451781 595745610 224050728 252583519 840276515 276514003 601986575 202593751 389641984 876362733 969362368 141184737 346214435 738597466 368017090 819899102 708996436 21310816 413550436 471915837 388218794 746916045 790704579 42683499 269491840 503631350 493643449 786756323 115624572 236457659 218213616 290272296 672287882 382171264 765446621 120225734 682274524 932660534 953410737 438576718 526100977 763359827 533164403 281895003 424530829 727080915 891494373 430738316 65619384 43074367 852820636 438402959 710786506 987609249 579855343 825679637 649225057 358503317 469437693 342978776 368041820 302165045 311518894 429210779 78543596 202334246 203541173 267174950 598023301 115822493 255509129 741203023 898528990 777680456 121098857 314549229 663212035 255602797 387004508 580387043 605892152 46073804 691811127 124572955 829243160 409471670 362217870 659450760 39946365 243107587 707040453 470534950 632809866 57770766 147296769 202984948 829451693 171670207 305127730 208411135 691286425 744103043 608555027 597508694 466892363 947937361 945911074 382617111 649873413 689131686 698249384 503349089 435777878 592291213 74721206 347528801 776827923 46503308 829176612 187060294 17516119 903576258 771148945 964448845 697140612 803467721 478470503 707239095 271851848 287794884 394344404 384514510 870738584 495512168 255023058 344883942 917722288 804033768 335136289 469775705 910573588 502598912 768270155 624255366 884259217 779036922 746912922 239958492 282171707 764586404 342971694 931896266 213249387 454174035 583699170 998240460 995861450 93488354 600164706 123721059 77995585 616430269 751093531 786000921 130617350 435657678 776849990 239298689 134359700 741318288 960947172 175360052 510287536 235674109 761526974 853407191 777897833 995228315 927279716 400521235 3253517 755115386 576544812 576511129 179782204 243403058 230091321 690887459 206482140 974684382 867055728 125785718 909701911 241109286 574407558 373687130 488824927 252559158 289332206 130651043 164631157 30675913 593658605 466600233 942053466 644247577 508327817 450278606 446033755 953941228 630731665 183164289 464883212 700789138 711068318 942862638 228586314 799322850 650936083 669536210 120534330 249207355 317401365 96229491 728449094 54099582 392918932 322199573 777061412 127472926 33388877 193230028 973742289 485181712 882345914 400732340 689169294 45070292 836016166 564318958 306881515 855741548 763847843 484758183 124839096 579890283 677776134 463073293 386213655 494697701 349751283 878710108 627615590 94802294 911105997 681649622 103691861 769373001 716689353 488541383 387894233 178813958 515232476 469396607 889183786 268347115 119512778 169809240 982672081 290379696 163142936 433205432 995359127 244380063 178001433 798192133 400841618 240017541 725507043 188910002 763618844 910775 916889429 583212092 266154463 485381906 271242011 91619107 450650561 323664898 726077600 520033778 365615606 21444208 830159139 321648443 305423104 771656149 762274464 323255190 845015199 588882477 31611616 373762216 844630241 490698496 910504563 218155037 255210262 145125468 950858675 711772835 399699168 846432216 683007420 225534710 938981666 522997137 283978618 110425816 368754438 946683180 885292191 809150997 492849411 812579546 52616351 475857279 389132755 674096207 894526907 690046957 836384632 201095115 20537340 506882883 546628164 995125010 552633395 611722605 233887688 748299383 84763895 32356699 821649377 148243914 126389672 979533320 381867442 147621743 399911792 888540535 729687723 26459975 992235584 810569650 462749051 30111173 359923149 323590602 131569952 876046554 579423896 133963482 828128737 881274633 898452717 579743493 124116551 693555799 69544406 438243957 190914599 596408145 826825264 721999450 499524510 532171278 565581723 269186034 430750736 839137069 33922940 794687870 746472747 825847507 730566662 860436295 234077151 419096494 871567153 442579102 825733994 151756279 762624957 693912800 719835732 182894697 747162161 371925105 777995108 570499915 525912542 949167542 86094514 506172267 869000159 781180452 274927254 922434850 596839438 720281910 750598843 127046475 665551386 614367085 621324551 848313423 449297520 39936851 233529520 159057689 562929481 412770428 679441714 874124834 143291812 190325889 933478228 109684326 493887050 247379458 894624286 673555055 17664715 185671598 558838249 667578695 919285888 710490422 647752012 841921414 345683848 369418833 851352112 253296203 670006735 234991556 953384126 26879547 265626623 535409753 552033900 551037572 766818965 896605152 500705526 313466847 668508880 335357496 238944609 571734407 825124790 958566463 668072695 957051970 548248349 70036193 79541837 789822818 187922582 399256081 312438848 323477946 354466951 308405701 667040498 181546154 97966871 224348933 807801557 428567318 184073011 701985495 776172438 606126704 562652567 291151697 240280886 185436074 51453888 377556617 568758011 715961926 467509497 270722468 309286506 136862024 229725010 902830026 170605149 993840702 708439202 268812595 55740398 609084992 495276427 79154706 242115970 779397354 827164787 623307181 684165062 961855844 320164491 344133967 334223535 80207196 733244107 802357063 329356404 519523849 980157173 874304497 863808671 102931238 45318800 556002480 900658426 343009279 18333677 255099631 646413467 160095835 785579811 28573468 374316250 31911830 767123217 810376631 340695134 846976395 971285091 75045439 43851284 32038307 248530055 877832764 168803377 313764299 630327477 486158918 491461422 373914487 962622702 477190386 208647377 667304104 897042171 945305575 450316070 635827941 535645035 724991178 428190595 560789049 96429207 808139856 889244544 384990268 548383645 973449524 922896391 902035212 932134761 819604792 589103680 860590161 887937961 313753637 301053601 596242486 682116053 651461324 588750308 518089332 276152365 231119372 306316304 753068361 704816826 813963205 560796529 918896762 635418702 689234399 301612440 886183510 776475518 196906316 856937063 441406131 764001199 55708939 204199165 665915375 428600322 671601434 871723206 777774577 657468524 477557636 704240253 146562341 91007142 743353183 224802071 726453636 184255791 261159359 592554202 975459211 212467278 774783690 982891095 683267393 624547094 80852651 180889434 676744500 772907613 425259152 972627975 906882426 827279299 130422201 109805500 819409073 878430897 105155684 329012779 14453503 152444247 731871964 769412677 438312722 457745839 384220278 611992903 508255013 582588535 563054729 542808499 567724526 92049977 221867384 701297753 710403512 448198723 880324527 989009736 2663762 840299439 911889055 680331493 116827409 177984605 637645248 816367306 150073299 28293109 460563351 486302444 61857790 201186534 199597743 226316920 6423683 560469867 917426326 111031024 985119701 587650690 829004013 936183575 889332977 364531957 94692944 12123127 828459617 582037075 812840813 29388261 362416946 582370805 466964978 407484287 359819258 544714235 233482143 706791589 184573911 84269643 611359539 621105032 166037358 640361881 653705592 510525850 895875570 230157914 829251648 443004568 908406804 314392530 647888233 312195975 725424916 33126662 931413968 527194547 534767035 418321352 781339234 657001900 682862418 939077550 569199376 102974036 415873202 932228380 43384791 130113484 289572666 621199415 210153910 12955778 136860624 512443888 872210875 304413224 548825058 399034624 221158898 105399487 87515237 333245670 820679804 342289285 943876313 807358700 22809721 479632904 80837699 615505187 169646352 191771424 750493746 617349471 958886520 824607718 706969533 793439298 720520424 385540289 743375487 834918455 943503781 593392216 370021795 989915245 55526388 813905571 190049490 963968473 643922478 504581599 317747014 486005313 452217000 349854094 825763004 875330343 536109769 500981117 415424636 35995360 269487094 235983552 448647251 60548483 594393254 256051894 528922004 876925935 517076817 375645182 525282853 772174541 189940089 210856843 331565922 142463373 3693736 219965323 376310082 727310182 337572721 493556861 787525945 706499676 375954031 421420581 341598019 506043958 538164547 596277391 359903975 37623683 723444630 839844622 568693812 636072602 846295070 172558659 490228929 939768479 824997779 638613005 998260905 340621429 176311735 942026904 613922199 983812048 743731285 524189022 701483444 400995883 486753852 791889174 377162426 233599935 514208332 84572103 451669736 244671643 840872037 790403514 340452865 257411979 19134575 660121736 699558485 455958310 743077215 591255050 372152762 993965267 336779308 919206244 147521166 559821747 983499484 948776964 653637817 346483642 533908856 542023327 496555175 954438305 550159120 946463789 875039823 793753318 665661635 611057399 933049902 372397779 943007919 791621509 535080012 434851701 874038014 873524655 78076214 456030632 4715238 893080974 160518406 169010442 845640094 734593162 625055316 591442182 40523114 446607949 627743052 787925449 65079957 566368715 923728536 349269836 206126703 438981184 518625904 342437456 203370064 794120241 668768660 491553118 795199136 871130730 173762632 437915589 119540168 826752768 296516955 434651295 950613303 344867409 534891297 901071304 497583210 864860669 497696380 970055404 875958242 572772848 68705745 878349946 743354410 482537827 636366860 129480364 162668243 497864654 318225828 557342849 252129657 879822841 127134619 998395073 993038524 685385455 47340661 572605179 996272457 758844673 155066684 702489737 581386449 283651790 49231502 792553355 879002383 26409019 928902531 783078377 498451651 684318066 795173060 754035282 359622838 761471465 973405567 375193409 561331905 824927579 98437227 590990325 439826105 568546511 177579714 295565685 511932288 374685069 275845969 850321810 187006979 950781484 809544033 440071143 525962803 644781449 352598986 720824529 671896586 433880004 768924651 451457657 7432843 348838735 362119848 296711630 715130044 162506203 929943922 571201930 210234038 137920868 542617919 262301996 731012240 133096750 761898890 424540159 418733933 636776137 529073502 558623760 193338999 449961733 621755973 170690875 724463580 397513471 587953496 221437467 798715870 264443677 58846259 401900828 87221179 707910153 884911102 547043694 399453373 411153849 630055014 571907592 34349367 278026856 454261413 498569387 497944961 140031389 601641076 110266078 447810818 93915425 184774938 447256818 57044769 448762889 129470570 484613378 37542480 744393139 195881909 363644906 389112587 908189888 687028444 323017301 862996690 361163806 108623685 272106931 635109170 617445892 558587101 919973178 570639548 209786602 522179355 399607532 468641802 428834966 646065148 832916113 613262014 867802900 896030472 430578875 536693892 628189627 935936591 924177343 285104141 355896354 680048996 34205887 715679249 983185712 753331813 361206947 748620372 758957586 800955131 230014234 168235683 804857148 385912147 62546337 549123532 832120168 629191456 728812146 743690925 913699996 790694055 331681689 994980132 796901670 24827816 70951397 11001633 386692249 779272309 576327150 867693969 69364431 772788451 304306966 208014191 565666029 149358926 586796165 632217278 466391139 953212835 159508008 401522571 91541473 515163720 307161019 274414308 985166435 870367032 674814909 286040551 633229361 567517424 65502836 408108723 219591637 275711350 822009589 154997620 725547811 853138778 39058452 766939997 85369911 110175411 471121778 340257701 745936503 168822809 947679866 121124498 65457550 742069176 331135323 74898541 395224688 329101375 478152714 841912967 272466523 890066399 156646221 208056378 748037072 280523610 590332326 781164010 154100127 860001014 524104296 910542849 765114329 854153090 214019759 872594417 954087132 607612752 487109717 855152949 897728077 938046276 46106886 150477388 739633175 931508160 47208753 898017220 996154221 500239797 696590607 745641775 139218895 290046870 112060318 298700325 865836029 826682470 607674795 77664073 428456196 619959974 345960642 796734791 891421501 554733417 440776765 336688591 912363327 215356736 459842619 221315740 863198447 29343056 164624549 447190641 966034042 514006073 186069036 322210326 552641366 202449197 392531270 784676192 231945023 808610529 3655478 255122984 446091573 682621585 850445060 730602833 853508745 342756615 839928446 526711236 173008845 880638353 292426558 110569844 563690461 282940162 811943332 167057501 423243998 538691258 39851481 89455485 899048253 381838243 510126282 252539361 992735916 465386277 994572597 862010267 427655467 15258681 68922516 805802181 85945338 405034589 664202291 175102081 942249 975010456 492889120 560302074 477390345 291892344 578194487 166501731 120647478 796178706 921617685 817967860 83599000 949511689 319575840 318408688 485495515 108964986 387866511 217763746 31099375 724744733 946007382 381507165 624669203 543179299 154202677 584522363 254481099 125951563 992424372 954160475 346168805 265479131 214434342 650305130 166290544 120647329 169174435 415527450 525063631 430057461 980094214 970415332 224573089 1233333 997878014 178970190 494546388 233361221 146194680 966675423 140245407 643991191 91878445 615610920 810943608 790813981 714338970 762994631 668139563 125449943 406084108 339909213 629365949 761458509 114956561 543993745 943636359 853579403 620099074 932082712 384061987 986694694 626130943 959769775 414707573 413253699 929468399 1899797 303269549 317300352 839755652 164736786 765801528 109945103 724370998 612665724 483992282 927161766 949132868 42327853 806838420 296798853 580329401 110636037 133048755 840446831 424094048 932545520 160928712 988269749 177961943 466931681 498162866 828167722 509994106 383132368 563525527 371790385 857757300 244704962 768657374 19688619 62431671 600550846 539996225 190082057 51208180 574903512 200695737 442715715 661403058 919885098 277336714 835774419 234568505 929794264 577577283 975904962 991310740 718032904 993959350 667539870 230831009 975165938 895856126 814920316 428408572 226993099 615127427 395433982 976507152 363561944 143953390 656792647 830255116 732756066 475832374 669846530 561617896 403899581 36383124 732650860 663689575 308965955 580639374 170096448 647426829 885918034 127593970 260326343 551141933 176210522 709905872 533707209 156802527 509079755 443045001 767827360 540848641 893346846 997414844 852125740 919625791 992873686 427020634 816306642 670416646 458079617 681018007 910539135 712874128 262329258 984899821 899932585 135868895 264817393 744721694 885852496 88238007 270533623 976881725 760488187 715179944 783314276 892250264 982981045 955696400 203548908 999360719 575308308 782886410 752479307 779978436 572538685 232440450 358036543 717747876 684871118 202566437 847489942 581378533 204634875 317352045 447261217 37749825 17930102 942367130 924003257 592377533 418938496 310912434 746285891 205058210 960068319 257520779 976583078 788327053 141460449 583390646 882357462 136060240 648479323 351842712 582161102 742494999 729806253 751355483 716207758 199767114 434069178 638696 562311461 485931678 765337846 489391614 249275039 723981329 773856594 959649050 711895833 343817701 670833488 886899589 247479223 332307879 314966514 957893968 743061920 486040108 108367052 287043155 441591560 759645839 426281711 210513708 140634666 769724215 952459773 385775686 268628551 974202573 988136728 14484689 482810538 899790660 351259635 251385796 630822308 229380316 140210112 63818974 82862482 153878298 177270336 788547500 786340307 386071494 315982008 593648250 230380498 189995512 142038265 738468706 135391748 934316810 870685268 524620101 22786271 332983714 31200428 246479558 829462505 611121834 108347238 69833565 392783016 238094937 216810094 552059454 312527797 435912486 439442239 557525865 194174882 675455197 389610960 649762470 374647321 475979140 175802287 255324296 264140991 685654131 93305063 109038438 680948806 424248643 162849035 103268959 688387437 283160795 204793406 407341661 639589875 156241508 282464292 909986063 569863584 640244311 365974253 159993324 320770381 752593772 985272909 657120567 409086924 696128427 518691970 302941431 320511239 481487709 598219606 530559996 629084386 300915224 562246419 993948895 223681618 753153463 706918802 79536896 622891090 943210335 358245680 35831175 225591013 841159292 958869459 656611427 458062864 63769027 763025387 625550670 186688749 752666672 656840557 811994312 171701390 362946566 7232212 837786906 137954589 134520786 537422380 654857044 156211902 376294251 90207747 764632140 841135270 330468585 137724521 260553637 207779344 562516401 614211587 543711428 723909438 299167600 485103858 710735836 988716666 169091869 745082856 41846502 611254037 305194990 749124890 427957409 756194411 37196911 726504264 928244116 694836954 659791717 858757812 118489361 355889874 187342568 27344945 26607151 800732613 668810581 852134928 763783374 892522793 996312142 413678900 176692888 239391619 255284672 2458627 525075965 315400538 301581024 355454824 525193522 795942982 464411946 269586394 79011133 724704220 969306466 345075291 752385248 843148482 315710610 283917677 777218481 203359649 385586453 943675935 619064069 890715691 421560190 779646217 163138301 353251352 651447225 437873993 356164991 447847981 122894830 534259586 133238591 390063412 917157778 214463206 841391282 855638784 837536354 877192748 132197660 416233320 856251235 6959246 356735874 315650898 723170783 234582741 779776439 930623399 950185578 108534863 305037135 519116376 877827044 653414354 642891950 786455904 647288431 187616956 477957115 556577731 625727606 22050292 542114854 161347206 824671664 651828966 71179240 752176578 246937110 517708428 605658816 632608141 292286190 370745443 938910201 437511434 630626759 977678703 496586657 993948516 69063536 990227263 418163087 875991758 721636616 77317354 551732836 355982209 109175026 107071505 704187018 987382975 710821852 51125716 213765427 821995473 163166139 170444265 497735506 565651724 256730313 85210495 634705067 770655435 919301768 967176279 481297602 282378860 360372426 697091512 347830767 426449244 890496161 466124144 514577474 31156748 308749159 611093204 379821217 875709689 170538435 910928324 363119537 265678243 951471775 368196007 43849442 533842836 759970865 525418088 514376561 167642976 325462260 26364801 521793879 145410974 547941550 739606764 953244771 971826677 602857834 240908338 462809377 262970891 775143550 601602400 201667563 595088532 662068099 586117647 880801760 300847179 236231519 899187290 300823530 502547185 351737151 458064361 35429302 285359184 1288085 360805098 509043395 283412796 362832670 741619475 241762633 272926348 475777506 328392353 615129943 825403942 464952360 862633309 298900921 273498098 975335815 999956882 514583303 418644196 820761562 49836827 858715301 426562036 314260552 154447953 919166903 646603047 79888954 168857373 418104880 99894404 390355045 156983788 732837321 844556065 151737799 288897205 829569792 744248339 269777569 204295671 968373279 48168320 262136195 256751544 519068210 869519764 10622014 713008260 319861784 814660989 445806321 602633332 582585197 279859833 120333565 696136230 650103195 995284164 499215889 761145792 701757647 820919985 226110753 906549231 675911940 361849741 585306472 155690217 68409595 366633139 244149101 992925551 603018554 699629701 738832889 543078851 810887444 167049581 754108705 768758968 910971295 945250015 917824832 449825441 381409466 411160659 517158911 939004508 580588560 503953996 614921543 300853330 314204177 349512534 422568011 253610865 85752052 36542210 818695817 444233260 326682554 460528873 441989316 337009028 936860972 913090990 610203659 749780481 256347864 531127294 598013615 674060971 689446425 244353926 434035022 471741980 757135628 531438086 921492429 766905204 750011804 941358140 74804823 359802200 214748793 152084724 917232737 19054837 800445464 495066623 347346340 360062721 464255934 407842617 545169704 569405629 640913008 383111042 60877882 837772012 257560065 760581576 22372203 441828062 294014470 604970489 605643673 555006827 742544098 28853778 22721256 149184493 684733117 425907988 962957764 489962317 594214532 964286474 461237219 789958392 590992626 468289286 626969916 40463846 912568199 619310625 895150363 988457364 340255628 896382079 187331334 495274760 859241230 792199499 269185491 681512915 868652522 463060149 432166561 180245766 643321532 21987062 98645455 286758469 62164976 601338709 984215055 289760435 937725108 352962841 946419025 584670204 770407425 497871508 512781267 330465628 508586900 684750371 671337240 209541260 9378042 378113828 458340079 891969238 234231937 804148996 899963496 918893062 143512131 133625398 354076386 156523892 665304348 777053492 285719810 839529726 828332984 374837631 56007093 641220616 952806793 288387744 216542506 841127042 259310530 275980587 969864164 33403875 15104614 328380346 53489059 79442982 942389052 163475955 426718835 402135253 172912856 213609337 471998377 776926205 143167887 644221186 634175715 225890099 737005184 123885384 933999364 538881174 532344470 729951246 403318582 488837582 293520257 583592223 442579442 103022342 474315448 169657162 150539250 606462968 385850493 179132780 609182521 970669792 48940757 432959334 827023892 909576069 222808211 436405540 144109591 882458162 375108687 691094934 337942302 730649795 407103848 40969142 897582160 948674961 782599432 518053258 139378454 801331845 569015582 169237270 577204774 369099277 741309795 940465522 798331516 638422559 34501718 797388727 648138844 461728059 975070272 674850823 760621649 731715939 36409906 236577416 954902065 459268904 191185669 482972787 718801944 367652512 106277972 930720511 450250602 714995307 210357647 278164077 653192147 832891053 158042337 84600073 257634374 188146708 997059650 40790052 341288451 931163862 650565751 115678490 307190155 985149365 447325187 690328141 892807595 732604658 19375159 304906791 706909305 155214687 604314670 78913560 707067980 862477137 425520583 805619612 803097808 758301094 98906282 809385782 597284331 746275013 85837126 468910960 168855252 157148059 371196887 23723484 538194183 591451807 779041112 652198420 164928327 17249487 754581654 366583997 426992291 608878771 230008609 970350203 394594667 74578262 330237004 348699397 85218878 827386192 356882493 543285268 14143746 374312896 934048985 11809899 356571616 442903372 277937875 83260115 721054286 78654754 506996895 286818078 592088583 304360950 455192448 654150440 748787217 713216779 583575680 320057301 760974773 991602978 997333869 756590600 800171402 644374927 43526110 82618810 486319213 364095778 463335990 733959909 784359552 343937853 244156060 778639495 826997297 515572934 851036673 803265453 177865011 158210859 284071197 153248873 555122050 907425633 163263342 751450324 368724581 160135911 618212926 801224724 473178980 222749892 80897951 484221775 569665367 787408006 500688742 553842361 359301977 260379970 58027063 513468044 364271052 166711448 73563765 125420042 92624735 467522479 773846869 410339457 336808967 190078003 170158543 816522301 633106940 411006810 593880991 909034906 962067142 51240165 165104721 888602621 357979185 897232918 55633972 368145614 760533329 109149375 236363106 343782528 818533758 245152820 444667064 850892687 206265188 467195990 497799394 222866808 755930091 778741897 127829839 173848010 346893124 176775866 211403060 860943639 569284082 253642341 840765077 40519159 179364277 747015553 986086713 279946766 562566810 978036121 626546606 757892870 357029877 390482105 724696658 976771985 988149091 924750454 597228609 923266662 135415753 940986610 989413988 699052367 133414993 242528722 28384363 672503310 708738417 743765316 406120910 904714106 721690596 52166399 288025294 470872172 60527022 893100863 331694964 539593929 251374367 229793227 891832462 127453814 36858822 873997043 935726263 47034985 241480069 25962634 89687885 50423193 704428920 242590448 875080569 47035404 827258644 480139278 966913836 807676362 482041608 18423887 264812061 653093350 572568658 288213416 229873356 750144378 947725110 887557277 341643653 929712810 781218881 723781934 414431570 622792095 887497540 736534509 978236688 261305737 926217313 583599340 17079903 634633636 864025334 177579215 537508004 211471411 918805173 861254585 600348179 493122430 835587213 286975577 553941153 451118300 739455933 56212197 414132496 965513123 713183946 750940187 21948904 815539253 760728191 660480065 248926331 203193087 253301489 546662951 276201439 304590192 803022458 145245729 802611187 539549447 187992768 422649615 654393443 744069699 543228336 836637012 53159837 568877484 46488702 931593188 244926424 463295193 293562021 691762992 92215832 47303011 400946923 384460859 923804450 867528680 881696344 945975173 982966919 20071704 191506246 847449122 848890273 535983778 101188686 715694757 30111372 442917954 904544598 507780652 402461495 660451512 171622537 187321186 129888843 641614035 447328091 876445550 887906372 801189983 468360072 619047693 745517669 616739128 6330391 17055096 809168815 847417924 657935440 302843771 871736825 366401130 417860810 541634140 71219414 423279516 337192546 102407419 73402026 55856087 878238522 45775532 873273247 445863961 594494910 369321054 462277790 908159344 137961380 7167867 263367783 980631020 911685866 18370810 474041972 746334634 627167441 475595352 93419538 678710216 559129829 507910815 140587855 445385076 74166267 356024665 951733763 927249119 579462448 393527711 225221839 754851395 184842472 974741263 257064475 291977443 685337041 502498509 465725206 445080583 110402012 605745801 112638141 98388485 613362502 864601976 931901641 745266482 452370837 551506267 447675593 125170422 138665108 241919348 360865032 870657206 874866521 558055831 170467747 67918571 528140093 78284564 467300727 11031048 131529956 937373647 481838379 943818642 532972862 344368938 594874418 634188055 962751614 439486229 511115718 521698594 195576097 394646791 36521442 659440724 53882086 112195835 870550099 958951498 557346785 648751739 580472231 575658675 451583841 706730899 512695862 458592318 740685060 57701851 851456800 820318117 741367724 193824624 694564689 523489965 227105931 828853240 510062197 29117215 823126030 927428515 208897541 943200715 871513847 525828645 533235776 59880845 944080710 865685948 395026738 319402569 141495626 914851889 770225067 232497126 393030295 21496273 982108735 791675736 938819849 864416370 77750866 597880218 145299906 920534129 630912266 149918895 798747696 582703543 353108568 563573407 342871306 267591856 463163895 920718458 156968264 2785106 886486116 727800160 999400753 852870175 447648231 493105518 65447249 466582809 505187219 311954643 456988537 624586959 305978940 761676478 725540297 454354777 596298119 793292906 345033635 673868117 236266200 971685401 975638709 240084198 303629922 447152662 871774194 923961022 919651871 883107763 886214809 795648786 644348619 78113867 808632105 351962273 842828528 240782399 821043827 672278449 520364511 522547704 340863113 386244366 650322095 903852778 843858887 765201680 174259520 105562768 155793872 77927575 305707837 526449005 24148119 251571206 115151122 172629000 660386121 534700620 664072955 770341365 755797347 138489826 86597623 320854222 33272236 990814661 606333645 608345396 200857904 838643833 753017615 439381460 94618690 418346252 310957077 265930336 960092544 597567512 779507710 630985872 127989964 437929658 356316338 384799017 765017171 219821462 931740900 382536432 416060297 747716060 295506186 616353726 361494059 376726082 832367207 126929257 597046589 442258952 658057215 122136789 475110412 30298609 406950308 665699051 920570155 272450381 901109998 654690718 745749366 117104370 185894977 306241769 571310866 569609278 323500991 317761996 121797741 835101718 33231965 546843987 304318262 780292588 214037201 372007313 38576496 873898164 637957787 178515102 657283162 736494572 33516293 72421788 156748675 290348186 984546335 158349755 626372030 209253453 414263231 190196517 340241961 630232603 518269063 26125848 427302695 902231459 27137247 482384857 10953570 973849096 820562425 808449455 124947665 602344189 499219146 628642795 739994545 452026806 461877524 763399403 935138181 193538032 330405470 517596175 309144601 37811445 933192444 401388736 34944127 349320334 767597826 402636661 771424280 850035221 887867218 277675683 129545094 116960615 786558613 569041359 168696756 834270186 75615289 801559680 684270297 568355214 853923705 87332175 699778927 696402889 496745041 549544657 905116474 917606036 756248719 25946281 667898440 787748222 375703742 103334016 867727341 201977998 928107322 23660299 549972420 812689758 644758307 246740228 641034930 349288972 275669855 126833195 628010979 631748668 11949982 698141773 120982988 731409438 42610522 876263482 377503529 246201706 830290642 484943055 704068605 732577371 167900691 963392489 532446356 809896632 248152550 316539257 563436679 145657040 675073254 76309611 308067244 739322491 827342455 643138494 242060074 709914130 30372282 929929585 641004143 377718656 26047655 133869968 78355501 551334192 50311409 408083758 91561822 710295837 69318939 934930789 484630093 760729025 397596523 472357972 945103743 66946339 726907633 445987369 872993997 646136274 44978825 355704340 244919377 895200740 350641103 17224016 795654001 936396793 429319214 213477408 922722774 365077042 529009621 26505935 298544248 671247173 443459261 386634410 957603986 56398176 962433445 730898706 961467559 890893128 672392471 609769062 183770500 346506047 600559203 11937553 366744383 858626580 397370526 986279556 186680371 942992929 648603565 393123898 579771395 21604927 947044149 632000695 322220186 73586391 456443302 841383043 287083313 647676119 403230012 436223281 237390144 727832244 739576053 287405659 565535120 599439726 312004505 337974434 671614249 136112011 445673655 794286258 581046879 235879961 4377000 596071486 269076433 918565293 482457743 707932926 499403105 527608679 960872272 151522743 939841340 699589099 931454623 840053040 457081558 631589483 47207665 207776062 938577391 942296984 848343432 961538491 130138500 194262710 965367149 360246662 637594342 605452424 46033007 896825740 503515306 7643741 261526566 452726721 889753002 655657224 279630581 23724058 759970827 654316015 223081729 950726047 436427321 648332272 43894074 144812886 790701033 774041727 49648218 406123349 56893719 18632334 862372833 670469043 604999940 57878430 21036313 63499666 388896066 323482292 913064973 203141663 280304803 851147104 326355099 727278987 359895104 263008951 286774110 926691342 809194627 693185623 412630724 223583470 489250322 965153127 83082746 137981813 696805606 324181907 845652984 479174131 949979451 996158483 717214847 760295619 772448402 561799335 292977430 43140934 428834490 560334995 951228943 198625002 823982278 340429220 795641218 839266332 375978517 107070772 666439246 350183260 990286662 904830238 673596188 367953960 624875338 857929931 166427998 726498316 102705746 405800487 360773706 993778074 993526492 990680233 649732576 122269036 401675949 49310288 759693288 664962340 40825295 1424544 680197879 806308972 406333849 66942379 398241119 32931833 313777061 490975491 868247618 510440579 445542103 482211017 26195594 458601419 91185756 687188642 604704230 61771676 566991531 735398588 312827344 354137803 985245818 784587473 983857799 853413422 285502421 728753944 502183952 721659818 897694465 752883551 360286017 760538921 878145430 467932144 891356846 161644957 416577905 334748832 849082298 704641537 876212149 250496978 258051469 447840853 531464141 578932073 928683541 373125284 586410607 87198163 345541387 318376450 779031188 981902087 998574833 572822408 723356807 147712898 371659276 452991321 402515150 864633166 243869553 504299420 854070081 807222518 671143412 851024264 912332280 216145553 12218680 723869783 679303773 20123836 144180899 668683334 509617176 736208289 292693094 67587492 208257567 5186025 499074682 37524418 600322989 448635342 804054944 231135739 468550983 765720591 126681695 164019887 568164793 553966831 430566917 177806923 219844374 272956221 631587759 628034111 830081983 371434321 687837497 809053189 364552019 164023815 616657999 143048738 839581121 669338568 85155164 354226975 62753851 402804097 459379870 541960844 598931520 18605479 852027154 826625031 831321746 218448185 413302659 214258222 171380286 441184446 30055807 458597297 817599386 541401924 624485469 421870140 567226688 895014752 762393663 859961740 974755605 392800306 816784652 115036772 771896645 359517281 971168121 124910479 789542724 149351193 885893623 828602079 636843729 24173326 219852746 917309482 116623083 460149124 291182589 555458646 579862755 752087871 336940635 91851340 272764235 591158667 956456063 502023683 827692799 9562432 588508361 485424493 900764196 361196479 464823137 721003408 874772263 228717545 900174134 575625594 30905275 427426606 366550788 700169017 608724957 579944073 570125384 513898214 356266704 167663984 252891210 331780518 627047458 54058736 742285084 659067045 521483430 637864596 501231767 820386321 246440313 397313395 285612888 803500069 709754111 414031147 209527753 383013926 720215525 281315555 91300635 228831068 384925212 49084488 254956102 601091098 890188260 184030865 455833864 381910715 716588227 365233021 249583853 677902495 887550591 446503504 929567811 556727091 855666223 370517213 406668066 730281191 280317233 859186293 698042474 214182966 423620647 402662649 659227334 46878371 43494399 837774796 619799461 676521910 79017709 416149728 697700924 385358343 398861163 853788074 830732943 878266921 62768961 775161386 252034661 897074112 874288247 879953379 515967566 376881274 949960292 643935460 485430434 376769287 170329253 215800519 467609218 657841185 865773082 639145381 194761945 416823689 740805111 443061543 413551441 69884683 446751399 62668666 210325350 163588472 123108077 995547734 613941081 549881263 594573002 863860216 136494896 390895498 923171469 515215398 407987132 726145787 338842054 804570927 122075031 745293039 613461077 558658281 280018975 937805922 540624732 615052211 325039741 943131990 127262281 561165170 938921634 63320023 957215694 236172948 144826436 622536950 221373675 980544272 249400294 460771276 748431841 343142246 574451152 798205052 249519935 12346264 993509137 893721395 670773973 805085752 745075840 404808479 225389761 558215516 708486080 18860413 798393450 473263009 202612792 478041229 186738553 914667309 416296985 974485660 893687524 83404463 355998552 799861499 812114918 754328668 480469179 752375042 468305156 885763317 187843781 452416281 273835788 508976829 817107144 554675619 238634511 920028293 174096863 305144344 371974250 557170336 209753061 959965166 495558594 379099121 369098374 431202220 278196741 347080921 507179570 878062041 453526628 407548491 587601184 954402823 393718878 733267641 851255890 948684242 625397429 76834595 340296334 1886171 827073142 520308752 221330788 673295053 531236343 248500879 660865584 107056216 822113744 617324340 988793615 473069114 70170602 852293919 941142506 557246772 945337967 704152309 988878705 205986830 475044050 474906597 270366748 850430621 963159762 93383333 520375087 137509562 936192883 979620979 142590890 658144071 207051774 708331030 762581863 389249327 74405643 940204251 864656375 853943395 507821938 523380121 391959998 245699295 241471836 544292783 846359778 620726181 234843956 717288450 763065940 520646076 909186220 902909953 298032847 588760379 576622019 567436450 879772622 586263099 707884475 526257507 231847070 624340442 183656480 119579467 683693389 191190856 183457739 639978471 118222259 40693430 78556626 491152463 374558321 170159706 386817693 504833567 486526958 563618685 903152854 830632062 489528669 555300194 516277363 856656668 863626677 962414691 157508017 244134703 712270515 501107922 951341073 934691955 190075365 534508057 135703904 26655793 257503126 260298653 783188151 522815029 639499746 983787473 322643821 297895381 623748520 884266801 68340777 16486129 266096527 421552446 28162517 498454252 182534409 487718787 375980199 607312826 666650958 902662801 478289688 462857420 969172572 535173893 617942259 27098660 979568127 811482748 154670654 384132934 300371141 476059303 240801361 657944641 717087495 501167668 258202309 453918378 963742179 962271710 172763265 701564576 225264196 907403623 872218287 571150796 898811355 770611355 315565508 818140761 830708764 629824584 897100926 86194173 906721099 996936527 65371360 248806134 414792559 416813962 553348918 930396428 456739160 559740651 525439255 123415183 164197791 173001312 736562264 721890641 362098085 946114277 537477156 378642354 847767695 552577657 556193767 802630043 791292497 135014699 389746769 321933175 38386847 428922377 130481251 32805690 303894014 756447793 411054685 528443753 97338034 289138627 709252301 494693892 530653649 169663721 692534664 931762588 543299117 191141589 23708331 986845769 211403112 165443778 18054039 986582693 142296301 278556917 183688187 455342299 836260073 180251570 98067147 428129684 889071958 115921490 309655360 989266699 99305204 917120043 318528997 192315386 553946188 322162592 661875070 128215213 22496941 664737052 391027751 634220011 110586158 588878352 461825078 948442641 698318771 457336315 707272533 212982776 444264416 175430998 571459435 237934090 351382057 387593909 126831023 10900275 806650563 898973090 423664540 255350762 210099376 79569855 621128184 57754926 257049272 114571176 106728399 211071877 669618284 408836619 359769970 4142074 328058149 922580119 412603776 518527272 714360576 219524360 221661151 927685675 495095783 127671330 666195129 102197162 267602059 970543791 793674624 805098707 744125795 311959677 834800628 793635930 857315761 913985898 870354712 686150017 820039802 327949912 134192185 243839756 551911315 25745968 674418155 64217163 581692559 627974373 238475014 474229777 724500946 538054256 769895349 781098430 991825282 50928599 974221408 289176634 479357075 348538400 160399038 865247474 702340025 294771038 203218120 394476765 424834164 743659951 196675014 87320436 877103633 346316849 661968193 72917447 703860380 254306830 112171022 89578842 260595183 336025979 525200715 346044747 638784680 859689138 239270232 676867893 959844147 307812082 169306342 454844989 907359422 877964682 839404520 969057811 114017347 488713419 160261786 388734444 565705598 669012746 529165950 222939018 419194875 973580720 683413348 564577326 20047883 499832869 400788575 972780971 907214787 935756507 391831752 359251285 139198981 712513610 805830473 312959240 281413497 624112633 790841544 607756334 587604879 273411951 394846592 540706996 24723329 355949372 734409702 619941902 799888715 678682113 426184132 478588479 575340218 275067738 670754085 39431880 556551260 692272884 931903837 557408700 985843851 21790083 366499333 434697902 503974500 255707069 668017156 651319230 817125074 724502374 781117576 26499729 695878021 599896137 298813442 350831957 105118706 316126009 685950769 136832962 821537887 954656014 844895768 648663061 115545294 31845804 903872771 354424852 737174549 37694717 910626181 765944847 480287942 927933939 495415164 787321816 332470344 362012039 369361934 720164307 835886016 830892476 245883045 313957858 633747741 916508828 403010034 879998070 691213848 673895229 39607033 928398725 187117876 64701109 523603959 549130634 355615927 364992806 64554364 989609615 113999790 45154492 969437020 40947488 357742328 691468971 805584819 278872404 449040945 284999209 911185890 744106442 806767298 885942139 81110940 905932967 935580891 164974826 765042639 242863768 278990452 316237771 681308090 212376536 721220687 334660466 587359715 742112032 836921075 48328264 691802387 741163194 304258480 7933111 187012959 581370227 891963295 330751531 997717282 516874144 291045534 513464869 705279492 824698912 47134296 721804066 72207856 285961051 924271420 724697518 609734169 764657213 91325829 480315231 431659003 533057341 395712558 24044491 854086747 546658137 403283461 692490133 78584389 625282838 890700949 572138343 381547023 357724039 17803576 26762484 768233041 34393405 699123216 100045814 955961586 73574745 185770244 954021168 89626656 574390910 545951429 942816109 296113999 710408673 866075593 840658556 699954231 60937777 904256851 115306554 949673951 835631793 460401258 591248777 507227541 131008546 108070622 506264400 799959528 756337627 496490055 11731846 609740219 321836713 195861255 1884706 513343278 690120177 789918533 190323240 71471278 721222804 19695089 456929442 498653680 301618692 581778883 237856162 970723567 706477879 4866107 631026498 560760560 947068840 971398308 800142501 435374464 477832801 524440330 179415795 603138930 702085870 728426314 901318241 735027683 825610342 148746240 51631913 336727351 826140264 370139033 934799498 599048728 527228440 729469248 516045266 143243390 622347048 114073585 634074961 265826469 712326859 150777193 723910498 764074510 777533633 538501938 354580328 931448968 386155086 407112092 564075727 602467111 927848770 528605891 851706372 617218885 571091188 805698433 798554500 455438729 522827072 747028096 735205074 5116127 636719502 262814516 774859640 258815352 168575948 323265234 42705929 90152407 608299888 163502939 692363036 807662009 936614009 235561621 102330967 350243116 23354988 202995989 71055714 715821446 813704024 619727662 221398767 404283492 39544018 709307396 998057402 453312171 305177851 744538238 269128069 422762882 6122356 596256844 100974104 3698529 221603955 510672105 333254729 587316484 810516393 45701777 451313391 829203055 630281555 83841869 287389165 910862830 846549306 986737646 753221421 425702164 925746092 77996814 841905058 558607296 992049793 233697292 874020937 108948246 80686612 287338001 880273182 795128961 499618893 591368458 482766897 427751092 750235032 485105843 832262289 901450414 818623470 1917322 738819928 408282802 812373965 660369880 891946154 488919370 808987450 509056174 460129458 102679630 369010885 744899813 515614880 480611803 315409537 275385883 716775854 63082833 371898638 534323126 123783201 980639324 457137300 160865772 926101057 527953908 404233150 210248883 457807713 995135316 963790023 74591434 53314266 214179072 1677927 765648059 383287571 785647556 190758120 545455570 293037678 535824310 992431898 224663343 998164069 459860783 517347665 452386986 806790766 994550742 166013033 988026867 124778764 493362068 548540618 835198322 760210635 869837731 773237094 551447911 598826811 460422009 106373806 280520909 334423031 579221981 311669155 153743982 165105056 571101149 236338379 975576028 518182628 13907400 822218033 44744812 996751219 448422976 242803569 107493440 923156228 180088616 656918692 384997185 171881569 491638443 553387381 317623838 205683789 494220860 733040909 800461646 490974365 946899353 354676774 560181780 469058346 4988871 886768638 215953273 422922968 592061454 946136411 50564936 862121619 457815817 490980744 534912286 610771017 700442000 757971808 931620698 66314741 930620871 185175105 84492324 114918045 635045405 414302988 321931885 650222918 489547330 623168309 996238573 306825223 712392244 501402543 173621026 309115126 227069754 114077179 653650006 886059320 66517214 942111514 673385626 146612217 461701620 395726496 465852358 341293926 617801627 426542498 200298618 954494398 318881331 180118460 63411996 251903553 283020905 885072918 976001248 177463864 16116276 554876508 926894783 920713721 132370383 772537801 47795826 2479578 59912381 477496854 482524041 53879107 630737099 339769997 183820368 120549270 542888718 19417338 417881314 382843726 128486115 924381365 349700636 570469598 618711786 959137177 61858986 253415886 114717717 587914001 271433722 711068580 549695122 517315335 375108 977846517 178343652 814580466 125150856 67078744 652619978 291348180 513511825 236153202 342343764 916283950 273015532 977352687 306539218 400499986 482817779 620826748 931147749 354793750 937750213 576654296 190577263 280800855 857355597 710929347 624102298 229526651 316481078 965660168 35641823 304704433 668546814 440108921 529255926 302715820 929103331 793304303 14109157 373384368 788187373 321044556 640324089 278960771 946228459 687348094 912818629 929921901 279868022 303248757 996096807 644311881 923676400 909177130 140784959 463822964 652651907 331435680 872363390 305540308 783553561 238089701 813718166 804486874 766052972 36004356 139371397 428488313 334736128 58627100 827828877 38730799 808408605 624434768 326127674 275608580 74621646 23748806 613351010 695905414 326999025 741670580 258211106 218654669 957845282 667192149 517648861 689792627 268601804 883793128 832380478 531698849 755094047 540365753 870740795 212829445 74224144 836586777 679280656 827664853 721204837 938241635 828062528 852465103 633058209 207793659 143737752 971973432 863591190 404517960 906847534 968539874 130013663 408053438 987145821 976399136 632076759 233623769 42123974 31759057 502732459 327069974 419530330 665797725 951166153 1944071 444820045 574948014 381533801 683424566 723847702 867836481 704154252 841142338 201568897 194177549 368899578 48080335 542623890 381791900 60772931 50017920 576005284 822953725 540986049 7503376 432041298 685654981 628770704 585706034 11397245 768126481 540266143 634263983 968710226 96763017 531913879 478999883 229809224 908455002 316870133 975415516 623482395 947183165 948588025 739941434 528830669 260948333 793100201 395663944 895061930 327623857 984179412 964690418 445120841 816713561 237201174 936980267 470130821 689263160 461742289 156292583 289844097 101476528 495571495 669361454 303421097 900684710 677975562 10057225 788511155 153399431 689276726 517979275 22587036 120725577 471018792 388285643 593635495 680109677 27856682 793594351 100305759 665323511 792583498 33215774 343799192 471403637 842481506 627402381 793181298 938719486 544894995 643952245 685062223 160039217 401069507 834200087 242916827 118359091 712630691 455387329 717963530 237487538 461042349 657560256 8339481 359925991 841314973 59268210 620798091 925301132 362988288 515975995 653051439 968015597 511530021 423421568 587056662 81692369 634197538 769146550 714881950 62124181 723060698 913442905 987029866 78379026 948754930 685205737 273272424 448571057 362526687 189746671 870725837 106575969 809043671 774094337 802983699 628169365 916004567 672467380 821519103 464939342 457231787 156972208 635698842 121467923 485713891 122633372 167100735 254151406 643506135 587875370 686897287 726830459 721499302 476194839 862658898 560448978 671021881 646532642 401333972 529536414 748158273 642359319 242654077 796804876 496737333 542041288 850235401 92162515 189865045 794455311 57122940 481659440 403968938 619949774 688287013 47231465 392941318 619868657 654661524 557541196 663972606 869967207 58054059 395857457 245585142 633031213 957330569 707217653 29873170 11877444 26744219 361936767 494851142 983629750 111959961 126441018 955703622 374649753 237325179 536065314 217690520 93674240 746280327 861116594 141629311 675469844 229713995 645700849 196951567 931818749 591729046 774194282 272243229 294695658 638595978 805017912 151021386 261050139 750284680 139531767 558582016 664531919 978774335 725929164 656963953 200832849 68578209 480575082 466606223 405704432 162230763 911539971 79473439 532865037 917723294 207901012 268133289 940156674 787761293 752463271 412662650 426635328 680320454 205625545 755326894 223438137 60468393 374655761 343456293 958470498 713394902 419577691 621289093 758622531 624570945 279706637 852972862 585643872 482838039 439699992 192534155 291404115 616042452 164072946 399018858 821818030 626949187 127800470 44242084 265982490 832223851 871363727 517260234 308179519 16436384 457497832 211720757 780570828 339447682 777152056 808879618 510939523 77066995 999900061 174724890 852241181 686954780 923168191 372555312 631197290 34386807 64851913 970097083 604299578 8976316 523589235 769074938 441095530 233106676 352169210 25118967 99075546 162174055 86552104 687886209 40906100 419533480 314078536 389200943 552299051 349017752 562908464 532552549 896560635 410242648 596661568 736914758 65027553 775670870 576792159 544883400 868191980 851249220 137211384 709418144 153690926 104024098 898733314 841362511 115870910 618642225 510708990 913936157 918094019 930124029 780485360 740284698 223977058 696606813 483154025 244215326 988126674 240906858 444317306 808689355 533167946 75648396 158862532 419148679 145022478 330829420 358524529 109929861 73486694 667849472 334790441 289783227 682064296 263027074 266899493 972513256 376246061 791898491 345328930 786383254 82665298 699677362 644503402 836364569 225253770 839994943 570789576 371734146 548915776 276577146 790964885 862913719 870276083 651018509 479596714 966101597 93555235 695001566 857070707 229148388 194808923 685672486 657928152 526705544 292168491 128154208 481590870 102329415 374878513 205289552 102987241 659850983 712838669 449490435 145546772 785596411 666433384 961850058 864520427 185590746 719378937 411680327 126960127 48348583 570077300 671779672 928162159 775752774 321587873 890616108 542879973 178241386 308953158 646203 387831947 527616651 824651831 649830202 359950872 388558825 495500622 125577778 950508494 11400587 858099055 771629423 557820783 149702722 796718721 853806724 361451341 464049318 475826041 64282447 882209593 797684763 557658446 303558384 99593621 190790597 988054023 517323992 550031430 226172818 378671018 92901306 505160637 790598465 116432714 98713233 331341292 198746447 849972229 705902498 286084948 496690691 174974968 374200696 39648763 325909102 168986961 680092651 738229358 302962024 517689664 302191890 413403332 323965074 71217921 216533078 116507035 968648534 262882516 550483296 978764570 278846944 429015302 675382054 853423086 169322540 246669032 163263716 683654737 502762745 787383765 993305886 294799098 695130318 956234284 30197918 653973046 110788863 430437466 566436220 611464913 623060127 756360146 359012372 144267041 307192720 73259021 15694857 538954242 960999805 37125004 182171461 965688287 926827220 855000797 872956671 370779554 910291916 227169676 429914293 113363909 14398313 482374459 611784487 539410242 430790768 991373958 979829090 576875683 692248691 171717149 664078780 376924405 870052041 456332715 791344850 934235852 248314771 561129201 965456519 967878985 586805945 234181292 864042246 854643986 110103275 48064937 810705860 583052628 150475424 995304891 622231168 701586633 355821340 712708282 339548731 277881001 709478247 771785098 841087041 796617663 567086413 47180565 829060392 577517910 331769447 44617037 767656908 810766409 654499608 958899756 740487760 961884145 459359112 582304436 811462435 721281847 6141607 681753072 283551734 524879241 292312362 887159280 201939145 522261980 325701780 426503890 171126490 342486960 446698544 124059063 700539837 122976781 479637000 902413257 835975232 77241979 191091194 531169592 111892867 488641047 654330019 953687616 751421929 123055739 680699501 494672420 347980317 711742668 563872391 691892270 545503764 962474175 172621801 789223088 325434380 850536834 347204690 113645060 257373576 745666266 203772238 394064268 2813013 966739978 659017515 206028466 27131268 256210656 711421954 517486059 654720630 610874037 931796146 983051180 722734540 613940578 927812068 360412543 654721653 855557203 780717322 678880997 897947297 635356531 407481178 220793463 557513935 699526713 835530453 9372364 614751426 763450018 499708736 640060809 423234187 36617273 931617075 335971414 624834423 274089221 498724095 279270887 25857319 237889698 131493318 889317618 961210492 831179565 127870579 298143551 459533478 636649545 529150130 489847956 697922584 29883945 78767616 738724807 396734860 810556542 52960922 136968622 725800203 148084108 356289161 907155503 247833818 371793175 324105372 13441331 743299220 696278891 588467567 943735722 625376787 630161505 694086239 814031505 793117307 3825748 923486357 693146600 433554230 545914160 772234241 9918909 368529149 959629151 423711834 256051487 268428998 117618902 650243621 131411240 740709597 112043542 76358052 560234493 884126152 178658597 477534189 656360391 320106335 497028240 507591636 411713462 888478138 325199473 350997757 427153671 871836227 758523745 968013002 363985404 130754723 171625862 709870451 954370782 146882509 898722709 108361451 568480513 941608191 587871679 859400693 431800765 894910141 441238208 552684822 340272501 201946067 979966693 442265505 995290259 715922516 227350777 390693551 36287626 23584416 221800783 828205596 818497239 285423192 834432202 172649366 317822967 927128427 172358094 74787721 431827575 423243528 214541643 425729070 363252200 680759987 117249975 954659975 176428518 721807145 818564621 615101786 533346580 774869881 353923284 277967419 156653592 938531833 194992927 72116349 942921384 888133955 276210560 832336963 226482815 774748987 430257431 699245428 477737562 436575247 766295175 369169093 383588616 390446387 447712515 333034150 645329499 452757602 101603647 508528735 92706346 150684833 298088057 599687925 959780698 738684221 485608310 962134071 807094999 511915720 3253127 351880639 180529806 696552992 396227457 895170540 181746302 220999531 341291715 107989225 508567463 760741136 785490992 609871778 637342995 482443977 487560507 637800660 896889044 289538191 970445526 668955644 994219270 159631782 45572228 555201634 763220172 156323740 752072518 968993305 889014605 389634884 33448623 989243638 611342525 446817722 909293522 808073116 95188822 372410213 842154574 372188272 602353754 506886895 5513034 105898663 8734996 591694923 10893426 723562294 781908441 574578614 428476673 626287068 9305341 902683832 97084593 842390565 158416868 444299032 234595016 336807518 554046461 494297069 220843287 648056482 237945269 589262995 682896114 257393614 670057350 754769325 126329914 363719311 255983353 137143849 308154963 142128208 753093521 271487546 336876333 619355725 726885858 25634397 120114746 302619778 158561417 1773143 617158012 541381821 281793830 426985008 826549882 258831755 657232738 61205315 557315392 937637699 539359221 280187686 606482790 878960390 922035600 694625987 928584969 477945281 727019518 844790080 502486479 708584221 157516037 1528598 48697316 483179158 554899318 900762366 501005060 235735148 185408046 196641024 816177003 558698664 286918417 313819495 402762972 429012504 181907970 406783941 230036395 541899607 274425341 122078711 689887657 34180546 220423155 471152930 515278134 90813574 209359852 685360306 157066296 254693775 852780016 659627359 43374367 982134933 667424019 890681374 780946912 450446362 20003437 915184952 100972792 218419816 28135458 174820152 827962480 303333517 634457181 44155891 470939349 579908961 96281677 839332229 284923964 501786245 977726767 61843793 405306692 212124512 29631810 201637634 649062933 974114852 673899733 987354514 368554331 985883336 67368759 576966712 498043722 422985742 492316613 972460410 500803750 665669757 663747292 736675878 386458037 236406628 387859692 899910732 486289726 791365598 280432485 895848013 204898719 487142859 71666112 9952715 450792883 383708366 55172226 45281969 110946785 64575839 275423794 203318834 439251220 875369905 879543396 952622032 160017863 789320390 895457459 663797834 27945719 178492774 670146497 827250352 410651944 721729312 637143095 469733204 318204266 740156752 166268870 910428370 855827029 842439699 873415213 933082896 518867714 611091794 186896424 692199992 595328029 880148413 338792585 387485632 855331537 409235917 547539226 440082277 157010901 763019459 558044602 940147240 175087719 113963428 456159053 372630873 72581965 608728643 131904184 746848137 650704854 411139127 614890481 516619157 686446296 975694818 722947824 600621475 661847986 203548010 969122488 982833182 983372105 589989313 678154327 713626810 629415693 970168223 770287065 792612212 36247537 242472066 539202906 453880721 623610231 866347446 15313408 272785563 438448291 442434888 562916594 204692329 163530499 310026515 191191138 876637460 7006639 562351540 613490829 490529795 428118595 336636311 323799730 729961184 810987495 642149864 289828893 146063265 632574536 152024485 941184287 30968962 472962718 36834952 248245780 62862086 753031335 124748828 331075676 787589371 381898663 171044019 965039460 967606133 998653807 601904738 872077727 811460046 203063635 443120141 88098178 48772782 753911602 947717207 217572499 606677758 773201012 732967093 335494237 720316660 792992004 336682591 293760878 937747723 934042716 746066769 332479589 828047625 267944569 493507927 390095074 170234617 10344156 207193344 442475153 864920623 452743068 282534567 959195680 275587143 141190731 415140201 775248462 285273126 654127876 292466732 476461788 4591352 715151731 259710119 612878739 250127666 212049347 789760077 851175239 281480080 310302122 974825311 855807182 105365014 318487913 685696487 175248400 867362576 916894404 492249780 772635381 27664916 63739403 964040799 205013101 815855867 275205393 971928649 812975989 892635371 51738679 451414423 585483791 653328209 3911523 268883004 509708866 468289759 572983041 129009647 592081191 580339860 900699403 993468722 276023248 743384242 456893946 985622090 101001318 260927942 814894042 329514572 920516368 244264870 803762488 468331021 597242115 965750893 329392169 971912493 538462069 453122941 351115592 261259029 140580520 245524101 518240960 731127286 752799468 183784056 585694015 109389254 848465807 389506195 323011832 742844745 83459564 827508570 557001390 583915781 796457574 436289433 812720803 778123849 443382118 629552997 475449767 873106991 774133343 366455065 25676815 278960790 158312650 646873178 247231162 45577512 899522861 561021717 994534416 838100052 912772108 142440573 117007614 180948563 15023872 121221647 818625528 253045285 659014047 884557966 82341888 127752848 897446029 696890632 8270746 746575656 615275122 857837520 175996886 212849988 119546629 899950467 599030600 374565124 768649210 129262084 397517583 796537935 563453465 628457347 442591697 888399318 413467686 924638062 734898876 654725651 583357435 814523271 653728907 539741764 132716394 730626766 574497908 45664626 472844124 790617747 110556997 587587950 340293817 672244072 731773509 76490190 498819955 199046185 580109393 482864886 77838722 69618940 361847491 692249867 977532908 769005130 282455171 304269567 306024888 75325389 748374268 280834441 932690684 925174650 625060138 292299817 990472654 392131229 762408584 49557545 17622356 565185722 706357276 8743833 59844791 98471084 652882295 139685966 521658921 922071949 605893544 725447917 64720867 826746302 605779542 851574236 634084649 700724209 1540770 345457738 18857797 100250134 781823038 683721522 565026950 134560877 748536413 220231250 934756172 794886261 389377725 198315314 995772151 984500734 413620390 430240806 2795758 734211101 188722662 239723331 58972582 703097386 267717075 326828905 431977884 578012878 897031755 899675456 809976396 689869555 460181173 68679226 801234759 479375567 835987198 629604240 873888027 708466906 504679070 452985665 899292257 295288538 812898195 960513811 974055614 583976159 145101152 552635288 183106014 412135482 490770455 158192426 476524143 344397958 974359884 149189352 722628908 647185578 302701856 163910075 953160666 257224147 910620473 660647249 323512898 351572593 191037889 722049827 342081846 769377605 451927665 362745203 681678222 331116622 742168968 247897158 757880624 46703580 412397258 638389360 593627140 50011525 860948616 878768775 692612351 567491358 841015448 116889068 665833238 942490069 53932886 28496328 218958416 677097742 119675562 266758665 980898998 456621440 636251395 312687720 818148699 832999978 298221140 257677161 476587349 359766860 397728030 986686798 351206602 508138358 950560615 717751597 139581415 513757307 311534523 77316056 888952279 848877685 838931506 131145461 962885082 571878600 922185580 810715627 945203248 566167334 169585038 44838118 522922786 831066751 126938949 511337956 154320390 118839821 452821703 183640483 537627700 879955033 698198740 43490986 95432207 804432941 361671603 816964173 923628031 36405149 853581870 109419934 340285817 526914308 507521183 575885442 441984500 393795082 815431140 726604961 440696823 140229275 430927459 263183979 848603657 610401254 941820166 579091476 735138236 191277933 422721098 6415523 893427885 151806449 209927467 545329372 967951226 935016062 110351918 480818257 960308432 622889325 930298465 42223704 804687971 727934291 143167578 151084308 474217960 433260056 483148602 104921196 278358566 593931755 581616038 975260433 914321895 985243196 328789707 471133560 222978811 516293321 951386465 774106343 827501370 95927957 5004962 664837218 529120653 690865390 154401115 315410362 840164570 397594214 121558740 450929798 383303445 775620061 900312040 629902123 18988085 899053429 354764274 655332301 854722878 839007641 421923290 667626844 830596924 963468798 674341134 765531794 757059648 353823905 404890756 409506032 384336997 785427142 700394938 541387709 325370570 488875515 723050936 403131142 724356764 979015952 949070344 719995563 60396047 625716004 121851332 99962693 180699481 952625309 12327562 910452544 764429246 231694883 553938305 922579405 418019978 854834092 597675602 218109920 720053262 805008246 261709882 323783484 219277476 683634437 525063411 225964394 73280942 269490723 318503365 225361082 918403734 659491813 140695167 491946818 464556497 65406887 648446579 782867428 123408343 935274001 338712453 685066057 486249001 621618696 272793879 309214432 905130067 113560519 422624536 601744866 787349735 624093129 658521345 525826638 735483006 626640846 90634444 502867438 41603260 139153382 251051011 236240209 57832778 357746022 345237683 145430222 746514652 607184870 470382193 134769033 246681643 544996945 362969436 667905127 290270458 290094541 419080476 665243417 846210323 4951246 688736223 539638552 271554885 484708374 321080150 708372133 663562351 92033445 197309895 942152645 417331827 49790920 201310963 285807435 900952887 308100627 888171817 726394831 80025008 879260260 236944961 824666288 190624984 766307805 275972246 791382808 584388276 488641514 751554067 815099638 415123787 77075266 95641379 5964802 962644910 743572705 847920574 737287870 287140091 629775112 233623649 495041392 188169040 692548677 288040208 495381802 475341018 485464174 133603423 515635396 474288845 770712988 666036318 385748447 723418720 265233206 177241008 341003230 708784086 715935463 645556347 896055033 225468283 875585443 232285546 299846435 294720670 265689766 551741108 735577375 225219741 91776118 634673434 694328179 506471382 584329697 968132320 28389743 859452088 872426740 643150037 348951087 939202226 59012115 748040014 403685263 914164542 419433181 69500716 268741947 235101408 748615486 388632787 663248798 865771556 666687088 441728817 492662518 483523224 48236010 525847741 884198977 53991384 42572916 321038967 418496582 453335686 872036630 212886753 457152153 860912972 785719847 236291853 556477581 590351839 275882051 639927695 658489924 641369590 963595087 455761286 340732840 498829396 126457716 467649435 657023339 827212741 513819691 372634360 45299710 962548248 615490346 241517654 917373608 93094699 62845 247391984 385587825 972278751 71423593 222111120 673529637 26203419 712157831 718097796 500991583 914566356 638208178 61933473 633383550 417217798 288914188 5151042 318981036 339556528 434466310 235312469 538966233 18616543 836706641 850093376 344950461 283452834 883194086 216427519 341269207 965049112 143543824 169252109 563603567 262422111 500436569 948078450 244546455 468693154 194906258 582850749 538331175 604664853 868713949 484233217 234542270 602593007 700397720 828535006 471800774 714694775 76370292 387430012 236383341 466103795 901114978 490378376 721266606 70689206 243718560 822899768 609621318 931400221 266126002 52666187 856294080 133400198 425118052 257971460 35599980 701466208 321735372 328695605 885312610 684302875 350150213 248233779 970349440 843260465 753734768 184399581 264122482 947440162 748634175 646269334 770633895 978716028 927788513 140614482 833414485 11402448 49598422 574616963 103534205 413873338 794308065 834051622 764845545 327129816 495960079 640721607 553146920 112532184 737818033 362221934 840472978 202015595 286397033 346199477 572613961 107146059 372782356 765633979 778439732 730361400 302558437 273082656 902047234 664296961 589120076 413079578 5915695 430124916 668573193 545890908 536059638 129562478 866918426 185714213 361103973 534955475 845607123 648738617 479309127 108299913 896874434 564396520 142505526 879721091 373397705 793825801 915500180 956598973 10466052 154130423 913710475 925018423 18220009 868068765 286095620 188064253 582376997 494889829 158322365 290724384 458526391 237148489 321862453 651247806 458358243 836387266 569323189 577826292 19627573 983801565 744312395 458008561 232750976 892647203 419073232 113162210 373338596 236909226 726237158 468179206 770516674 197943830 809316596 345630620 59519944 681941384 739258923 558738418 54070761 533444014 307989376 998282070 801438818 996326083 162906553 93355301 763941302 989061504 902280024 582222271 649088178 209035822 953525682 259457424 740177261 958845852 446715359 289910283 824747071 915980830 243726268 433504937 281822413 416802965 220821747 897345516 292869380 120304482 466612724 195194974 852608027 126421883 368969465 592073106 518519176 752687950 107471105 573745445 915196951 980174305 980131027 2437554 9536719 496154037 244766721 331638762 927311874 661518297 29927392 203772285 937245780 832784610 599638165 779483685 90412963 967079413 674570759 510537380 45623326 180862896 794997989 133821892 973748537 44104007 109152676 237682521 813779117 938664299 406083981 545959740 796363651 975837536 526849952 697090639 391964933 555578857 289325489 810453372 905980871 981973077 240866647 719595190 589086375 942982008 797594869 830649849 930939334 401011893 265563310 188697669 36583826 977998572 983631223 315092131 732803010 441859474 536083462 550765862 19663438 133291416 769720797 844918765 766604413 813021312 11714114 58974226 5579224 304118092 658751303 132516039 424676662 107917200 986895555 337416249 403898293 215063645 612786007 437709477 292501941 507270996 449302378 253382988 339291108 824142747 614373422 580925817 51310137 534264031 654029980 888207742 901601514 364876374 726182002 477435829 298756482 606290881 822598457 2074497 285498825 745998435 874078016 679072842 117577428 498945037 501571747 220018308 770198016 372937235 812510271 618929835 456921585 673055829 792353467 842222140 486370706 120115768 404465547 810632393 667511067 942267819 809749991 771298525 521129221 544441893 319370698 886948119 91411221 987892640 808045828 803985173 527053653 970152873 245053982 362678917 148568860 560924746 444886390 274712088 144434185 952714008 26552875 281631368 725917432 225102391 691890464 252392855 632894751 857727814 515457036 829669137 573656810 301923448 531787877 137728964 441911579 866919810 263825001 685903505 515744178 273412258 711770658 859717971 992525055 241249696 557503586 617029113 540716691 331547847 667514302 150765429 511575629 6132720 144583578 972031167 660335439 377814904 926184731 381389272 538099462 480879940 576823859 644112080 136104486 931240903 153751191 94379189 23131053 976123120 245980876 19907746 841186781 963070277 744855318 415662776 436989764 26218694 693524106 347274020 859452340 902543876 517147645 923170584 299179341 219723542 949425423 45076940 824958320 559211162 846593833 837289861 210227145 537907893 945807997 848970888 373843790 86089748 564116735 950280238 296785213 924860657 76579186 58751949 279103509 798926342 518922848 63075785 503383718 56041375 17235735 298902666 171143940 818681476 701274798 428723589 217030539 394948367 323420425 597172275 449849820 997190172 275738573 280996118 808677867 691538965 686733675 874710203 588074725 758721509 961174554 999529134 967614022 592080897 72381663 292507792 997581017 853096811 838253692 742287103 328799141 621637286 167935110 56260264 249051902 436718275 591388756 149861691 13316996 518275671 491833863 974660722 103749401 623361664 11028354 957729043 950201319 111800804 576549757 195494370 669972836 133742002 240083050 611489976 242195791 280235681 201665422 952026988 800229034 16999919 584756718 16268511 190832833 227714143 784495453 133920253 9130023 156583234 257835374 811065017 320294330 953885041 139729033 616172810 496121759 722578501 752077006 336628726 256448064 308234407 661142837 443154055 69804371 528226307 760750705 965507275 619766484 512363347 481889282 934135009 105705479 229391379 428745524 243547112 761057401 186015049 885442070 413618956 377330938 340135043 123484286 611269247 823538349 939757785 703573263 642450555 281331698 155566057 712682032 465394243 74126711 718622422 830613264 637406497 977274671 74874706 141943979 203484516 639975252 103669909 35697341 62462316 329156465 363624535 513839311 735168664 454895948 349621731 38681909 216313938 285215741 770415364 188722178 692850446 188063453 851796754 550490138 506774853 969147539 545936877 141187621 186880121 62606344 765373177 456041361 209443891 49283957 571749413 22256536 180547848 165109587 493432550 831486010 213595539 730961254 869651261 77360958 462431602 432921532 68065453 99192118 759319634 806619561 213681476 484166267 482491620 174235336 352229021 908001835 605878247 469480959 487757011 781833518 474422550 430818423 431311243 515534134 252354622 877711529 998499062 31073722 680002100 525865804 478817993 917151485 617072592 348055656 598017344 507026690 738394869 750661707 389822502 185942686 916829066 865825410 704815559 557754470 790153349 566902001 181282809 533799870 771591393 423231671 368922393 922675149 401402012 749030211 65664271 560603775 354566595 881090377 635455560 41834896 843420008 935241667 97556666 379689858 131276967 34596600 181541095 710059675 444131230 510528370 207570130 644643306 868969082 449544968 302164232 255296584 330160239 550741461 805146530 546958678 288808626 136891708 978514751 519169663 952912266 312276203 363893761 590929901 699638080 231545813 687425178 402432925 895079717 83536182 750738239 741976141 674213013 708722069 741817006 890594439 458063345 371711417 491695405 791457178 541747619 709207484 212392331 358194847 630026526 748733943 399565343 625263476 929754589 722357774 383517636 82427845 565056609 554116590 119454949 22863361 510723893 364756174 714322028 927266908 823338475 983395879 415098066 390556637 428872221 778292925 619469589 86609225 47023212 511963549 884780473 485883438 65076612 692347163 355177423 854513640 171603225 446879188 186263530 658679958 411253985 683847596 182459181 731384865 980918689 619176657 925229626 663604535 300109346 716746419 745477697 380700753 433795129 852250387 906518006 421657265 64013245 605798641 220475036 149175135 840333713 117292954 945387255 886521384 924396190 201758118 868002898 726443174 89908442 755298287 428591497 704435516 997844541 865792663 394178549 460991505 555762632 926648332 946374271 207264274 993101961 706291716 390587540 345598971 181294223 79988347 293270316 250970443 250177525 701777585 997699525 861523273 993684444 174154806 442705763 671127044 527151473 391314399 238811542 961046874 34989285 830825668 764935541 901698537 100639344 890011470 871136924 865659924 853568859 865459239 199637044 722774291 207691495 151136581 531904488 727873497 192962412 380753118 437029107 807351334 988923205 183697535 64899341 583543687 124049360 657532399 38755712 744175689 15766653 811906627 755333658 777916547 800224184 656397017 916929074 498074902 200126974 544681043 447618981 496945836 185443027 723537823 766397402 87570614 929212351 8151790 745834687 995921003 360534869 878110401 588996041 974785993 431339567 477082841 50842359 383790235 111698926 746131781 115729870 487044463 582837311 848481108 804672096 661008030 812395986 388045481 121391169 401536331 253114213 88955427 23431566 86550618 501738165 915677424 134360560 796078463 308522895 741351814 366920083 834912816 282051269 342434974 998076462 124737710 195230512 233549377 131173377 754507520 235187892 988487349 396705484 375196665 834875194 666560402 121672934 564320814 813333943 992697013 629429792 288257282 568211746 45977408 222473944 883802524 841859967 283702945 749247223 824549356 748858582 341336971 469242601 716731819 16419388 310104313 217794725 168250713 802802378 43982131 423381162 210940733 233689763 967385794 741974268 926752873 248205809 397997948 160813101 564681653 527730658 11257212 698188878 65052352 542389176 163708969 735871490 129943283 459597745 91126060 704175983 495898239 632595990 225118586 98225470 181586266 543630396 973197393 137473453 160599112 642008957 795874355 859882869 318786510 284090936 128208877 132504797 852370236 410083549 237241747 554566322 507615662 185115864 942109571 898031950 886834944 403905961 398975327 411699599 715296479 679095244 454979348 105458647 749468085 687391184 373052887 571724566 291342271 368692038 181196581 765491652 608574971 189106120 485921215 520613598 253451570 829229049 781120178 582876908 853183222 707798147 109456982 53249786 739695773 748369174 761955652 859029918 717583431 131748207 591746913 835226105 651428828 949653585 712260312 989166254 113433617 4630146 779436832 895598831 609526102 933642200 656048117 280664941 58299636 553018924 418578007 688992619 875705325 267551328 52037527 357952941 8678931 378757472 455253062 765244290 494978814 105194269 527459138 532955585 10037008 827658127 942714544 411722692 440882801 925873085 428762363 647760502 602777105 523946157 951305686 452891462 803512485 980122738 506708801 477740839 74674096 198339880 776407164 121248150 12540538 272758769 301797654 694779807 466183956 947422198 937082850 16387786 768060246 396935018 548398079 422139440 776143329 614482568 612256203 286244720 808772890 40088209 597700088 766580145 165022259 763347150 186072185 57536671 637464615 852939156 235098507 36924784 314570929 67580221 701144751 523612130 802186077 719685931 28926898 725799232 499127419 228074180 176655275 448602963 567955491 188074112 278519284 982169458 936254771 960000729 767745842 994401663 711541846 750328140 886536275 590804186 626411773 163027818 731673993 204236663 441967709 39491008 548007758 110968011 917588086 265004267 193659756 143994064 544701204 417023114 129137643 107358995 226653894 851242061 261264417 11845533 292485602 789023969 130190249 248761861 719188362 144119043 160544616 624383594 669654696 816278130 367414922 151429236 868281065 804333820 734600580 276162128 119019463 886409588 493830417 93362612 832299905 319585968 902446903 175985886 407964705 72360085 556739649 18238357 310022773 416212749 630057923 622540325 924031766 22472456 491783064 482707561 700772712 673077125 494771432 586110649 755266703 876852353 664572189 591900928 392409211 174802440 600998125 299172779 258837733 339058481 535680849 775163055 802970702 488903950 366486670 482203276 26984704 422923207 605224755 57519431 333571081 406434181 978381072 322461040 580777536 137346424 564301895 495131419 257247560 426068191 323981366 295142119 886640776 662890488 171037324 806281979 117453361 678018830 171880001 272147461 326845497 545466740 888196747 433755706 338192739 890430596 83023344 687641179 941414964 374463138 357795648 297339562 692145152 603236406 668589706 770234874 443990495 394050226 311602223 501546654 720415150 739832722 569679312 299438967 863129879 997733719 129766234 182861542 546284682 326354059 345441280 522302433 41688129 658206915 99250499 300329687 258295611 696973205 259906528 932253898 53272126 128979364 588898538 647180351 440255710 910856095 92661427 190227013 140558449 809723188 381371348 261219699 912380183 225666589 217928247 675837157 962093242 191028510 359823874 23290178 618775051 212544769 553880751 443461563 909019005 237370774 615710199 568193283 559430230 547248317 663448799 207444568 675474845 464313169 603729074 628222085 798682911 329966144 900126726 400640209 538603639 13725564 869453238 416605206 90705927 4645120 558577640 434320821 414070258 705439695 246252297 888174224 523294508 411539183 843982537 452472342 201501806 82573431 938247975 120567104 346942775 162551421 521397607 344866696 249883343 933287462 501628692 436021241 117223237 914367642 533636871 746448924 178220659 911555601 279992919 653799181 932383480 383038655 100904808 355574372 356422463 612831718 916369642 303646543 726354549 182716631 34250959 716312948 573049236 435858908 595928405 587102222 636193884 755205972 239125501 415291098 33974868 380408483 363278486 76728606 148085711 871049007 308039219 636980395 821831395 100143978 808280624 685248211 970393713 666308050 893296436 176222583 481464094 161565673 320016424 887927803 274624097 671663413 985637187 700568144 437727598 184605773 850900221 793275373 205479492 477414342 185110303 185599690 471195313 443504456 654800819 449967733 259923260 279769211 122801677 536088310 121144390 604073487 123152329 485517801 846149356 818569920 59837901 875612009 549912597 358995 476382530 738210074 717006195 72341133 568529057 55317294 963934844 512774723 61961891 418004826 169666418 867983441 285382988 519777757 275649631 390114455 265210090 782413946 921224209 213317885 611616019 630514053 538411294 509019258 587456412 97145039 477584108 264541703 388467633 720345784 437921439 277390245 534052538 527092009 933323816 727764829 193800044 323278476 353889087 724762179 249435335 790733528 119661670 161357682 948825865 985650830 944046050 367842572 391995072 4133810 234030792 354319162 6340037 303315667 684661228 907963694 43466799 845318662 410123505 658348069 306870626 520938989 90722108 244985439 467062030 149784744 547802371 382549540 149813286 905262315 287923255 327801549 290912741 819292393 957257629 26918317 263605457 612602721 160073661 621573418 465865138 948067994 917774309 517757358 947063459 969160547 228906798 144772268 739888634 874371598 65227130 405293468 484457824 629038975 400950897 765775616 505844415 697917465 608012416 387255143 473007946 70814920 413081571 782626909 114341504 728856584 276848025 243779968 159579428 201838805 515454568 934858610 927878722 10793906 1774565 588355292 744065071 227179953 828438372 321104240 719256452 50924391 352569096 512008938 214425131 600246259 270744759 519368204 582002764 630400504 258674467 445351328 135160157 930584232 338184899 188746615 573196568 388711096 487708888 733550956 606854789 583660392 184568939 14951010 713998061 580079483 60359499 580582210 877229287 478115904 395643151 620441598 475579723 471138958 486539291 797575314 686120514 323889607 819680402 989985281 711054900 957226185 570344811 889865042 463852763 218892040 553580889 475298457 730830892 969866618 755523036 333658609 757993843 188050332 136912960 65858683 181960756 213277813 165686933 47587680 72108875 927432593 670686382 571865815 89569231 656435720 850595633 413170453 380040740 835590010 509247620 919281503 66303739 826422539 81552854 271564540 959722052 116357224 902552098 543703109 335858239 994314442 546776871 869273484 715418731 968084465 679169133 861842490 566595736 878986524 171065923 761270198 874656730 61757985 477167298 668435060 69164429 956193362 391649484 955550957 36812372 586853775 99503880 416612002 220877087 470745404 340051175 724210464 437642268 909838154 614657952 830308086 505405900 141498157 798355765 49264322 205425136 115473125 319976298 453024805 175167641 363513335 915062997 732233926 720376088 639944819 264674250 747565405 611289352 225833965 615198060 982799519 723463504 495632516 761497250 731537488 712116509 125131742 363612445 422847036 643902175 978974762 756054610 589746483 239661399 156863264 473104006 465819664 703199877 391912699 881733566 516397750 444677815 371830146 705780940 117040911 257767811 882076421 444893766 971271693 324888256 300938071 70975377 549922472 53689242 378947803 327381968 814208743 65471352 840836979 460564724 259702481 795404559 822781836 302000825 35465079 388661085 808959266 238901661 170715639 768184483 3408048 422609895 202137200 135083376 834622525 632531625 969694990 807345048 592195158 503899320 596413188 992237879 672317203 907005881 345545099 661176239 753053968 271173907 416596709 245295792 746676340 993087218 971980637 618071340 647288816 538976085 215142980 54132318 398199734 54350582 936147189 530956495 54253703 853042274 925689810 38022983 919752873 822043881 330001225 636878811 242754281 588657567 232445124 451651302 921852319 924101735 486944198 483132945 843946919 228226281 84030668 211437892 229813097 534621078 277803107 498840500 583165394 604491428 729991193 654810846 53501786 287155479 610188172 624552838 409305854 394340277 662429023 380918457 720136516 328907788 152793657 656634058 459210045 78471545 366405070 619112533 588598651 501705241 165337561 562339137 928372510 218231764 157899547 689723829 746883277 825972060 673501278 989601578 442067382 671061800 580045175 431949658 962648207 31337083 496001597 264298315 579117207 225310298 580961171 752959048 662332562 172749462 809372770 269486823 185813969 482136262 516997792 699705345 71929126 32325454 480967748 208933818 965283318 881162324 302897748 667056771 657983266 280409289 881095125 390346253 715229210 907245410 673469149 513398355 896110549 844786597 180629893 799189660 920859086 671499989 667393775 770412660 746077967 198549251 363533895 431923886 849630501 39507978 129595835 691615847 569054500 655461002 441217418 924207106 897683118 283293417 683570420 164026412 564464358 70548057 34562372 385658586 137890174 658603473 214468812 388098633 38508969 925773584 122425829 949617659 124554022 213686178 397805556 374398909 24293693 563045847 693065313 336341154 505241016 178468290 751412639 995576330 368031218 635684424 202745895 873924759 280183751 533083155 581050236 128022835 94718620 355050637 936284971 85245462 931020898 799491315 438891970 248561595 304214671 171074883 938997215 619960805 504376097 23919942 904247584 114486433 600372123 865301901 239106868 791730500 729401358 446105711 597778122 779049832 147145232 812141837 381141148 348714998 234936257 884557391 267103854 586672663 503183044 413710821 255368714 451318845 592933193 547367241 102444611 340608296 497534726 313318585 126305264 216760538 754243640 65280061 556835063 675424163 369392809 404149928 345793856 766160144 436133541 226002062 65074622 416967942 145290239 568697172 912229738 128939170 347660570 5500960 813675593 31471445 811963867 674084578 762114147 239710161 742104239 290039123 380210379 181442834 76656525 198146034 154689691 602020191 397900531 869277449 247240181 43246912 264919785 878491558 407630596 856952461 700855291 519670949 917073147 415723870 380898367 595855778 282162961 666680604 892936788 341165063 866630538 841467249 883170915 576327172 949339316 305510225 479407380 731360147 591088090 658427 985994916 711560562 831241310 468619758 86241743 213492778 264244893 900339195 109558489 522113802 521558272 42272307 755691665 693970222 920498942 450757364 644574542 156494963 238096401 516892643 880865262 541239427 392920759 534338282 640995034 602836426 632614268 85029183 199922941 770927751 77110260 338249820 790150860 137542582 992674232 954964746 298679112 810377247 914996587 231732305 463738105 267393364 114921910 574307975 683711721 181200045 327841356 445428806 458592174 569389640 799242985 803810677 832241259 392406033 526630986 123799103 730964418 389236407 444166974 683290649 855752931 527149743 930005910 625437373 495095429 954618175 896937261 32451379 817323493 243437928 532228322 741256389 35189705 159398144 604450725 487725572 153917822 487724958 764203875 306105300 186131935 487880610 887986712 469218387 36097607 367940916 696084167 917198321 924903835 765183815 634962552 584062558 526472523 136490124 611084097 694075802 992777806 154310283 380378424 817616615 818214944 328200839 913520002 215590867 456313291 668447379 506593099 684769587 186010326 324338311 722164417 399937055 532510305 729313538 88763936 178163966 53744642 599431791 748285099 695180926 759102693 818037242 763541418 825954960 384583860 958529695 844728178 994727283 211921574 288104474 946857566 399794856 39106173 27308026 229989836 172738046 406220155 784525961 867538730 841732235 874213745 774552547 147013865 771424167 716795826 884206821 410844545 939902454 75728926 704777786 258020472 179673705 909148191 358792018 892213590 785640750 964355996 415263076 190077615 749344457 413776913 604792945 502795035 124029174 337997691 190532672 536083519 565610953 666497885 59597156 920073664 625721487 103839689 224006195 729771606 880515307 689501781 899544013 86377146 172392891 927204125 172985117 651064492 340077102 448154056 218958287 785378298 383192251 875994246 174183774 675087218 696900634 260689164 126679050 149810672 908359251 241747864 971207133 915374422 708904876 273378800 313927075 515727760 562853825 144332899 949982711 384857486 269291114 564524743 813583930 224716364 752619725 426127739 779088787 652209612 76383826 661785187 797836272 153920023 152737714 707829233 128286477 116037182 96329704 483639830 619102569 779067231 608073017 644426070 65794380 3290523 275258926 363509683 716673991 391765273 490356383 513802685 279775665 283672336 397704359 428897162 600362667 959043255 762290088 164460984 699588124 480774738 1713491 207070319 175625271 634495019 690044567 46884955 430296305 685314963 543571636 921576370 696770317 562297831 100673068 644245812 809741584 622545796 818974669 407460647 521451599 353822427 497949611 345772633 661688287 199715160 202696737 934394142 796049825 240510587 636683986 399947865 519428411 338687169 44090799 445945962 42412833 465081016 454703080 273501252 82806664 127258609 543358715 586080863 490782581 966490628 421170093 585705906 908457387 294704024 303985417 743958218 828118461 571249492 929832801 721017010 733020417 83896555 33355094 256141827 40951707 355764759 101383881 627319767 635759470 113697689 675196905 753812182 292764465 572717629 923361318 491523633 550392661 627550166 895994686 542806171 545855777 516051005 397819960 773893970 271955865 435418708 170195038 321988382 670279821 840201476 955165253 275669839 397980566 849847364 410098377 894219446 128870680 180245514 531120141 56996534 304081207 537850200 965276797 86285365 403054818 98425660 865238992 371127453 670323414 998932932 160687104 176214761 968829585 887939341 725926995 76436114 606015835 338439736 236248659 469125797 732775234 150114928 771009236 342028971 820357667 417424358 879380726 132711356 707002010 587253975 745795355 709948279 103492371 263372928 555818990 575189760 904315066 318016051 55170919 542412808 96856716 419824698 970023868 400627140 604287559 131213047 135388792 667926514 216698737 787831236 937940834 91016667 631099997 744953874 621153170 757622600 719578914 260022865 682500194 801257875 774522531 749454074 270801015 654149785 603784069 179041682 984710332 433960383 454052662 394192800 187257192 454179063 379770102 262421946 35925750 374190003 554853055 775102071 862514475 293226997 82988637 293262715 432830991 9441600 741597274 291671662 841160954 984925093 232601366 307377156 110745483 175186104 745238447 38459128 461766817 839120024 237741320 285113612 844810088 367740141 655899352 377815049 530667096 770532323 608725653 898477762 212838444 790377779 874441853 796379152 19414249 742536470 649259675 602810840 296918744 712569175 676699071 630807554 205920145 940624451 9012351 482597249 596320494 135075759 104067647 946393935 103527445 455006203 330100258 142245231 734303344 595387148 272136222 811144168 719772340 189608784 513776615 427989970 541961695 83366592 49394177 347496002 624738867 61350873 408284847 517022047 879656510 952453791 587561223 324000590 594751954 948406688 646905308 905693508 603198735 327212279 449486546 186438780 238398294 165138236 700489552 203806008 361935444 349950109 433206152 417569218 792552188 77290944 207373678 966459754 907388559 237167840 363002311 957162382 362046346 626630330 755193625 464091789 100040896 927330196 438346931 375347410 369085506 592324159 803930542 589394387 191378029 556361486 802324460 533051141 43540196 563641568 979823380 686912237 89425300 151960090 930691990 186334738 220311474 708934063 845567402 713117197 239115451 482407953 585750611 504628848 323992943 949706302 139327060 79831013 122199775 535323327 468529987 219107601 947189596 4330143 415025268 793301416 287674246 321024118 516542986 653149540 416988478 420929379 165928426 944791814 965284528 509976076 986637512 391878492 636323667 863031199 391102746 976970295 798279906 895466704 79520803 320849772 707435105 929305312 958246630 206735845 231936795 79512726 469303609 890290823 963701156 466362686 403674798 99646279 726318813 679540655 866428333 976461341 678161124 461002567 789306455 135973386 666133035 822975213 525437344 717723166 84581985 640823822 363225152 975670377 382295943 535448481 47640502 764751104 817942749 504712996 908772172 22950156 21799922 722599838 473954579 143142324 832306585 437556895 77386462 778608940 385072366 445808441 70962514 95552940 193051736 4956938 97859800 626777209 582970497 889866047 895843484 475884249 947625308 740279679 811657626 241500450 488349479 501587714 779793809 773622703 196054887 621362059 963218440 278443998 236612582 778894424 414211408 661781276 55013307 306071870 773560706 32780762 273136703 122551187 818638206 998041236 813528089 719044401 723097581 793059020 742290994 634134912 489655868 402036748 498675394 227501678 745832360 501581030 137707076 672205173 513092655 17270259 472049789 701114511 869288854 418838230 869938551 770966851 370426995 678242618 916498566 26438561 609916186 571590611 485273931 269992764 732021422 275591510 874313892 559791669 894099990 50024843 291256771 482578995 286872322 324152377 176263446 660962657 129068778 362256432 862354782 432501110 433853456 391168080 471999646 347527349 524327035 398579833 970449189 240153823 710294778 383185554 173320320 713493059 792598054 508080018 932992658 136627895 732898146 855685232 740741244 340066971 466475476 344212784 728574892 888995284 181805419 737745885 636810967 859901650 278566369 578277767 347312372 530115978 150578614 901250887 469668431 349717114 299241266 74126658 15898988 265728424 446597990 182959013 156206118 4339108 918261032 811586971 988017814 980581506 887663642 411575395 295363618 754651874 372546470 56778302 900039796 194394345 318237176 814049656 681568386 860739909 428429068 440715618 455548809 916515375 398372258 112764758 47307274 425014881 939425855 379873718 340440788 383859748 696500278 52183276 940744699 789086790 508474014 805618796 472911832 448207647 880922969 773479855 199159829 266882440 722609165 450286903 899797656 490226669 298044205 664610702 366435485 194958648 329728236 803896393 173682584 582349795 586349649 848277244 174595667 631658216 149007904 828904529 990082006 395106001 529813483 820941551 445561 998830763 563974921 889896069 823063767 55117067 701212059 8924371 93723859 694029584 215955336 575011990 196669083 686817121 514227075 972889244 889736097 626481965 604419075 751712949 246145444 916471590 165177412 257476285 688610214 394982031 965098838 308978069 368145653 866396204 707573509 234787880 596463653 545496909 470864103 897520230 850126864 488573638 306517856 822772815 395163870 883944950 409063577 114629855 893026553 278949831 680109950 694796578 483005459 878783903 204698314 627573546 777981997 271934586 66029054 152429333 76292232 626649560 937113696 115975169 651422384 917435066 481219075 124447003 220663676 993216178 191220922 668161683 462928903 172874965 477818157 169377955 65138356 169661120 909362621 534764175 913494579 503793562 2701727 411895712 228236915 659707157 27242952 679624234 622866864 626622561 815953402 567900806 421721461 592949568 993315774 326882326 875822984 171913976 619490660 744220229 443611906 675027799 191272706 536007556 78971194 525321651 343896443 521831504 485208281 347649000 801316214 796126248 592552136 836239200 700732515 392915608 737786684 663955465 51993466 290767921 93470899 898851670 85284029 639231375 628775151 404041545 92578802 104372820 611965439 684621159 450743211 663287336 121419058 426630587 20988478 1478592 798818859 932014049 947445967 343409621 438755785 291198963 792872002 22466088 22901051 135661974 429299274 124695686 181615861 954638079 857863777 143293377 29791153 646275548 156720835 860156592 158406519 940379763 377480056 799543097 312037006 171937924 986599255 742248773 982522513 101988448 254298351 918452677 525026135 362321887 89571750 778051507 963360775 258290525 730150052 17893138 534614539 563374782 767776216 496329711 329946136 704552564 510239996 708329304 871380781 222706804 441726093 59214954 742709640 873766204 45982932 977208649 263779260 60691156 355013348 635450392 661572507 455937478 167216021 867733521 577605441 254302767 193255557 820193387 814200334 465809574 631187227 830273383 792221111 588685140 204268939 958321488 747433256 650031851 875732939 62785402 542797219 328166300 896266397 172185918 280978857 343377446 866393735 618943743 787607047 756926162 534948057 948632870 228974801 732094062 426773678 623559462 242331748 370531151 31253476 957045369 955448933 128057937 955366438 939825056 594427583 723466716 552109537 736854825 45818021 862353122 931792718 257064099 487555479 263346132 771304816 576111017 643264597 586953139 188862218 725374175 322260972 634156290 339321779 578224875 374519988 354429652 242474684 437581186 596206919 143558590 225922634 907271777 975476102 779686108 144867909 4510277 290890146 213667030 646874972 134541818 491177742 820758232 530690569 323033941 163711878 801120668 877912456 258859564 808679437 185669214 560641764 452939623 71155697 584784357 949614575 802715112 787183045 714361724 521646143 64291753 557095013 449515006 570953268 644094624 265822711 804721352 293887992 207411664 561736420 369838783 211224189 551885892 262602469 941615952 149324917 279877647 997364210 990892916 395000165 487899976 385418066 186732203 895483538 364247830 674954384 696815605 116961809 899456159 677402753 773724900 93194166 896148502 617921089 906254481 519144996 163212729 937729586 388598933 409917891 230194884 274528002 519857177 822163904 979949705 182076070 175986888 282301719 512966995 728492380 129521631 837956484 278113662 982272165 197622038 989480598 925813359 893181004 734751158 529828502 695190926 117717353 1605006 63026594 368942414 225918807 975681523 72985238 185330730 311763129 59240641 413462046 183507363 804628092 179783011 36208041 522261827 473596118 525848003 32072300 842088349 352408129 886242136 624132714 268787018 688599170 28092965 592820589 677958641 693772709 357146537 712604163 775803702 465627903 485017079 506000515 794421198 717786667 642723492 275438094 65670770 993124879 258259406 190208913 509025512 881000916 764333341 335555252 96592631 360500211 671783612 702971126 916267889 229374242 413411427 421420181 314054961 881778028 196607057 254354841 370689050 434248474 705958986 404440272 185702421 762360768 49508513 943087319 759633431 438613306 266372390 557902605 286506261 280823982 589464125 619100823 239465750 227153800 521523142 965812582 996024866 495860859 40867894 850508087 575458125 123695747 622059390 205141122 118533551 92255205 569322527 151104409 887447404 553246509 506614302 548223364 326033071 38239278 127590410 362932512 487108775 877103880 578344443 962528780 174753936 424981276 204169867 655518128 920832684 496427542 760767970 989739580 902266182 290451695 772118705 835355048 223387571 303063260 391162666 815733943 197777734 978819175 528764431 875589613 208032359 39128666 576901026 238258844 556420478 289330376 249354933 738184671 954916862 625724433 127069086 178639251 185399651 784717271 558296889 509092190 723574317 754157573 227717102 334967222 347303653 423595471 745216170 962129105 818345758 699386548 624162790 575452590 903778420 703127927 342565532 705527574 822871435 534595876 155108182 149435546 610814729 923521553 291733281 67256208 176394401 642457814 43139730 767170588 271402510 124620124 974537417 756128290 103620626 810979276 652930667 458764886 443180411 758052252 746913958 935737646 669036053 286535816 967721522 517326826 295929277 215632789 39563341 678597525 66840919 912859148 129634234 796446203 440591306 988451973 787118541 802048694 59881738 683390937 624008023 185931818 652501267 545450030 84905401 778628219 713468643 76777971 396072919 406922392 926672264 964459223 469631779 457541439 283768083 340591320 299392655 510455786 117434783 430035773 473029532 704244710 283141706 822446480 687699280 710780224 951859269 615464100 336542521 448634834 640248252 346324889 751746668 53209661 888644846 297351886 228984457 137035495 75271452 453802741 674014901 364925184 910152590 544672764 905937566 592208772 316053657 700092967 416251261 938197552 613824662 598704370 593894668 598394508 366227175 465218609 566042262 80770795 324904183 848632560 505220580 854278499 926578488 909527698 244534867 364059348 19700260 741573050 806099385 398235113 787509564 528379218 37208962 130801678 453826062 476409232 418555293 845359230 33859880 364940017 100449658 646606137 631104297 278020916 862552862 653523465 56459180 219854445 157900300 760768889 154649186 408402923 684957779 368812519 634141179 457572170 406088585 714745969 833815345 815988082 8314314 307341308 132689863 988567949 176562881 533743679 645318535 45554704 146010265 758488748 534565184 205870007 349579529 499991431 874460625 894829698 635678286 925545174 684880667 879021255 623000627 446898028 579065607 791755281 1744128 433270239 454191238 519131198 47533711 447619984 282512023 993803895 317209404 227607462 272853816 61136421 848156400 817462804 645240950 571258876 370885143 708215440 516711264 174381304 352736937 589678490 414352660 17297759 496689443 132606330 422682545 534069690 586599816 528334660 108097378 723419107 138996846 208568268 432225628 673409009 735224807 804143285 626419414 599341384 18733199 751518052 254404115 540240280 613837967 19646990 556783966 761902037 5031061 300247206 782394888 152030007 999282392 580459504 408622446 736354886 331029013 562033269 1875440 182218188 49405584 905449856 225401848 88218081 592843548 304843311 249835769 109257949 823781391 524131934 110689389 129491558 820834371 811086264 197587670 748052585 252209183 633714860 777680574 893318168 200070293 198753651 430248379 669833971 516255769 418909452 896021347 564765626 678603687 810347072 901491799 821243260 794042312 318319777 734906181 292793996 404986253 370971012 905462239 227709830 434546567 995769612 371051997 35914833 947972820 628483360 529393155 509218071 620963871 701723759 622766872 439259979 600285844 600786804 356593397 138396331 477580009 419515757 548447085 908060219 787088475 387711331 868187494 446528327 757490611 963909926 512291274 374808164 71183932 974533199 781113997 954946157 946890447 783435070 738329509 938930568 429139144 854687770 622263318 133457950 388446993 310430679 476761834 40514024 664801044 815255848 980229174 886996703 558080457 532802448 314726931 583667273 446734510 179549273 704428958 4161455 408314059 596514705 753019402 897360361 971617709 579426574 86014338 144759313 698270825 181755764 186224709 439842443 700072604 404397357 278277010 128814596 824578418 28875618 772666550 662035571 369698452 526465299 243142656 492243472 176924987 153061883 193942990 391260770 322958627 12714916 246474625 271379762 766272916 175955038 112795264 737615768 659312732 635825219 773577027 376903406 284504272 30871088 204681278 972077018 623695059 10769105 268445433 145092425 423957954 254699411 18014456 454497130 269877141 445392305 983358165 760812734 69648828 664876840 439023908 865101577 178353720 334368706 224864648 166392917 329434254 946042384 925467568 900770807 671329998 621054059 204085321 45006219 869075085 249397744 606966801 506829815 162856935 201036682 994638020 238760551 224346247 367303913 394218548 9952076 922773655 262575490 48352048 944508776 551655375 691043738 318019728 660615355 800000111 757947703 511762491 999729041 47358521 532005672 604699673 688619393 247454591 605006855 723018009 303775844 966661654 652705588 534700602 732041569 517375580 33244633 740555642 471718370 252913209 658079201 249239272 543957660 767337496 115623178 545272725 324100751 640124402 549603793 568978073 808065016 867762756 814343806 910029335 377005419 396178196 142472228 711240760 4924599 121186545 473901464 781995571 233115128 689180659 234598525 714166076 199123095 459905714 889871419 654230939 451583546 182481757 223241470 598402964 241616858 730633883 348057284 77872256 814247600 407891109 351135821 592372663 129254724 183214139 236664347 342438809 465337441 460238240 612667781 873115792 852709912 816313252 55506334 16662547 949247179 550401693 84119115 799988631 352188438 552543595 954241329 936624032 927444974 338472049 411692226 808102075 219780995 905861790 453164341 393854070 89067601 955611240 716997003 955068526 561730332 927795922 41022605 869709637 958486771 89402461 309036489 265974690 867701800 601819158 852377241 81085244 29152087 931024538 98383132 214470090 183373926 461609216 706786620 946752529 9576319 615467508 660616616 76412632 622694425 677476000 862078170 610641396 585078252 744551870 155013646 12129599 154254851 631419529 481686098 660687256 715059107 759886281 383323507 120204269 980427109 606463691 196322568 772948526 499062818 345811558 971686770 428889174 292197376 864488440 759072477 949208425 897743725 283201641 591404085 215323246 383239706 341965604 112689202 676830586 297153541 829966115 909389401 561414310 121648755 981398496 222245356 48653077 421153518 891231335 613930241 452561903 416073292 581771326 532410730 606743913 759345577 847174789 973731278 653092795 442348393 4887248 899942545 807097384 148233783 223698511 616288484 972571644 450249736 810860200 610613696 525656969 351197466 453318936 495176933 615126311 911680753 769073499 961149914 942584888 668751703 198544050 312308979 4441130 96263520 379360501 194383426 491511659 4149357 930444656 351808173 727819385 411052317 279986699 121463514 603913426 45435485 578478629 543750201 74195972 888403045 971186094 372974595 405668000 760937389 895722527 757294134 553966401 77026299 80458611 710443679 775012231 408372058 347233073 493930441 21707036 762433827 33620841 367201294 144360631 507262700 31198640 498888337 852566799 414193052 144272419 823851574 323540453 594370145 333387370 104703154 4638469 467399594 681046196 939113848 45352256 131377722 690222772 357681357 680537458 364133905 203702444 723799732 270002556 919892349 276009057 634935301 84507976 553577489 688271391 712714064 995393994 58600873 507619775 804149240 730087420 456120680 758179740 110777129 922243550 945612991 866384803 30339790 421085564 810057823 667558458 221939876 193807848 422505797 35043164 573108006 762473533 204357044 387693447 104868003 453394074 83209275 263812798 771686434 783444268 491485866 257809300 892902021 323718438 602001185 678670879 64197991 674195395 236254978 332114681 835510319 370534209 818976763 305190473 455688465 193006572 651878145 943664320 490942467 464796953 126075725 565679762 771166663 813915679 104431973 19768448 534352611 639815009 676898836 420633807 559031976 925419338 619188593 397482573 994588718 81029452 573181398 877868365 689437015 810613984 896908009 352983219 106221002 362410636 123365524 81098465 96874487 496806614 908686860 145371335 552265239 547801938 597273294 429495003 229167915 230700955 85157280 856760861 779830775 284135504 372252555 803527438 579852816 455954976 474143972 932417218 653780173 587429051 373616200 968686542 827851340 728290265 900648858 770318671 550270075 789263935 954442504 127841256 417568771 433249462 417680390 519182542 412033377 202710290 132971087 175304372 570083283 712543534 382521065 329238742 120331360 546371048 512531231 729689600 801340636 413757996 759374211 865866618 640045793 537892849 992031478 110008350 422518470 690518313 970045848 911274312 942139068 658226395 425366491 866558435 24394674 465898514 95447404 689605463 426299997 509147359 531464268 590861468 261752895 506677594 829140924 143454515 978783390 924101289 934044493 281451041 247296399 606888948 624736208 272631027 549703911 943347055 517444705 62421696 852140359 804773200 191327588 608623910 866623766 826399969 250494345 664982859 984007046 455517541 505169086 684858079 95154063 932576561 652206405 170328854 101030126 426143 400510111 228857264 266141490 128910097 296175257 889599474 963002533 325082098 377220681 124425130 811431266 610465716 218926345 984624 240725067 263960274 906810749 865357154 495619586 419648204 219391634 870611109 897924606 528778030 8616061 205708776 202390900 323234956 535353787 42141344 946198116 524652412 230673933 295740620 351597208 597062050 572846979 218313204 965919392 935461035 714908527 282713636 478864595 462687045 890821485 774207219 547348049 85095469 677855841 279153793 42207236 886511907 9493368 120146545 710127515 475410931 312260393 901579505 698223758 412499823 941300268 378350010 9194782 796585587 837901449 914422538 299137876 855573724 123113095 78095527 914083839 486404762 475546559 437670622 437167545 658146972 681226765 576111494 476931550 413819359 387290259 41729278 729357723 106351713 978914493 222926634 291371229 631977006 298698048 660473978 851004766 81184348 190936346 869005542 115586463 983594497 676956814 554373864 457818597 404678975 893413929 220330123 584362819 531334210 130826174 507180632 925384849 682624572 808113513 594190441 328646510 360718953 992368783 992407389 120501061 3072262 1086173 62425943 327237187 374534757 83129669 670834950 828324960 895955409 172488966 244206752 391795296 356008615 8045218 610058471 686270664 123064139 264882406 672331295 450473706 974824995 454505960 496232210 791210975 626256551 127482370 941790236 276706181 285640778 426239192 204387866 870085507 954876311 646543448 136782706 522507341 188305169 384741302 523803409 99132440 208923212 415876716 607778669 162321896 210186470 8892738 503326599 14388866 958413693 848548162 91619 394446713 935557820 447844031 248744846 94684704 546730071 307753561 36709153 881005214 535483910 483457519 391144891 904403158 336573583 918145459 61399551 348509565 411624118 263498004 758331164 626742534 262905426 607256529 520016843 856005812 721406783 92921583 908437830 778348944 225078873 242265016 612318807 830277992 280894606 867015362 884846666 844438488 586329041 810999531 863192055 134704445 126528027 939599443 112755386 911826878 250796655 242718055 890436987 908842062 27209172 139586015 158372265 557504422 270815840 491309491 429006902 786643780 597576750 641390632 322646694 560692851 246421596 214892236 965943805 17377087 851692569 657138290 522575302 888828802 365253013 345733176 491234587 575967710 544603911 64986753 529985434 373892794 218278327 644690937 36392040 615303495 813164778 803817108 59999541 835927164 480877304 770864782 946175797 894444058 612436022 240230255 201734695 756499881 967032331 742507260 218732880 895896953 96296412 782190673 224637058 493404578 617182750 937631428 257237264 887204615 996267852 158264060 783575258 683748429 520090345 289398248 345445190 954201316 326168698 845010871 329796161 813780487 236696726 485528296 776280386 750815667 597027801 5130049 44328007 253149620 478469598 485160649 754482903 388130968 615926870 929283801 303129857 621902006 644976627 472701709 664136278 335532338 557547370 108326983 916144381 309789936 988224129 327990707 245109909 202333093 492668675 238283207 890117967 64403653 523071423 301171006 512365281 338986641 796046227 746958367 662996873 666880787 62631517 623018675 685890319 334146330 127397898 334678671 503411132 414296896 935147918 728841616 232445294 231313123 657437152 16502490 751920255 123218219 127909123 547415515 609584339 913122315 981046019 757365571 828265180 261166392 4975854 950047761 277428368 875911476 668275173 625575051 828381802 582362696 593978373 989330232 930517108 282812291 208575352 482034673 578180924 216515005 431566707 248617681 908980437 629825686 376387887 720200508 479993313 831036280 177553647 476538079 527461506 322837652 463199994 868404907 842178923 262912478 982195368 970402273 917393614 767620634 649988430 446918400 764463982 418352593 706421074 9348827 471413132 978204238 822677277 737393536 174876154 789124271 903790623 220194638 239363853 938658513 687555541 334641131 231546787 214114396 390731457 978882366 136954914 327247299 16837484 564398720 558720890 601668922 61662056 775684396 74817566 486592967 819821138 186037764 619734800 508486188 243745482 233976344 906412245 651962878 733233018 855508411 937310843 998395028 158389269 279586185 745735317 50534927 647723604 976576356 444965959 649678420 868051709 364777851 833800242 455797268 366856406 638934339 760336776 999243213 399524275 354103925 830204161 360173751 909203823 714446871 581639637 655398367 165291243 648699253 46517453 436508436 656594705 617840418 182187833 791783408 607345107 684157950 940474863 400822992 198360877 156274219 753717323 320136159 176908320 56402452 67317045 290231820 127967160 679404912 811789848 502993937 293029381 488478264 857051633 786597226 379424546 344244658 179928632 34657125 999388723 374163821 614940150 918609423 759124062 506706487 432779960 122200382 808990168 632510257 223320983 188964246 293278942 130339006 759397935 695514497 333980333 429682058 66829733 568664617 495305363 883368842 838622635 884049035 904961249 374445816 810995571 513035877 60274158 202642780 611095741 985993024 797239587 827143809 447470288 384778093 437915108 304111992 655250299 142528259 527812777 948349856 103313937 116296418 265523687 434400670 461347443 901953973 795882787 596825180 718182407 883484393 858842086 218697232 423250619 453389240 364117186 783074103 257672196 874485794 566645844 778211731 688903650 896144878 855713852 952923441 68885978 422153647 999975460 676407653 241562619 408287674 705660609 291031501 688861147 448701235 800151753 915360587 367460249 293636862 711027201 163869452 831892697 516065999 131245617 200769412 882840012 397688859 989301807 327134576 870829095 246897957 299044051 856104149 982041127 324839410 342505471 554083839 204860308 845097814 961468316 341081215 984592060 74279401 118394528 819228724 838265206 253983495 672023554 105300035 355838494 422379484 530333126 798083094 675878556 113587800 725042676 194212965 96181599 477907507 480182179 892183591 108016731 289963498 240123368 701549989 573615628 133783499 978878185 262563686 249917056 435008739 466571469 143707461 603655742 256919561 801458888 731087705 329214816 624187104 130770452 412506888 87215748 128966862 578775797 955385342 416568784 484578820 448439218 219338033 701115376 113846397 42752927 136046043 222804764 899801334 113978391 828148352 127395349 762386935 874816378 718702574 366259482 948256979 838003767 724296248 229104898 218831007 823139768 8351162 730914845 352278333 816331648 525510170 941925194 182245461 756475917 791535938 973091570 195283033 923560422 592527467 901203458 403314556 917954213 138929418 956423921 919048388 631911903 389583337 649427131 469459192 200607798 785548304 392804841 297078182 974795862 743098327 785375621 23752232 210578930 36965336 40882216 414784159 45392579 805064185 854439154 341219056 849925003 758775396 103784584 206425550 452145429 454273167 323617302 996689842 57907507 660660791 372238422 83522009 774354367 877387868 593442435 727311182 32270234 255457359 484858724 443029985 914867120 57322147 258322505 171245353 905913845 468695602 900864007 20264324 4432479 67235109 603163131 424407840 723593714 753235939 93452044 388236522 343409083 28739617 506123434 155249051 334846409 323495903 808597451 369559218 264703031 703691871 491695083 13335416 174651943 444341547 942696464 92504062 409652930 778233627 997816268 897891867 39092287 955325257 811517491 960282224 500455124 245632539 361439459 471360356 721535428 474473021 579552515 547081770 160563290 311468449 143947839 126172600 408384743 728650884 18819024 690281935 511704007 970401387 301726579 173981686 96349275 208917795 411045999 928833153 558096911 786523073 492784272 326620035 614652243 338996124 526072113 927237086 749996192 683977566 127159340 201877055 726439804 543637490 969208553 772667918 856759152 100871050 68167509 921589387 581621519 249246884 688987879 466219953 584622320 598466820 905536412 366967627 601289401 742799545 327729916 595238887 642487827 418503440 677708055 304495583 515176364 683768237 649199486 346815571 441390662 449759087 567227477 68181034 205397918 191732100 5959486 461660441 503976321 724209763 309693032 433259153 30272702 315547843 165748620 38040278 92359218 609906861 597939942 145969136 214651839 170743400 682956861 562062515 681111373 965526927 294585821 204361136 268525009 809748472 98727327 196267594 544868421 505059533 44021214 182333868 694971560 58096501 644150916 506107844 48138505 228758695 182214142 679809613 380378230 288358238 782184003 317623232 271326733 716231134 836135889 741481070 474511852 435118774 479126698 474589024 464157251 556002744 159378787 561669493 219996735 183944962 784075277 603649097 361883931 322710004 300186953 191549762 608962331 576164928 609662268 987447447 487232136 428359382 112973462 195029562 3711158 576442101 929396106 904318192 734672126 109945630 145042138 175633727 729065413 123363360 667865802 792206967 436870511 564435472 707742760 155408303 660537715 870486343 139384140 539568328 518980939 163795307 206701333 903112559 514372982 327859816 621984229 626139148 956921474 36454772 294558380 342270687 777479169 806394377 371221475 631465701 768373131 773690091 809623684 572292322 195951043 300225833 741499675 739104879 474249045 8062226 405192369 186666205 688252912 167179080 219816924 396227663 654371153 365084078 966186942 779750574 295902267 334720622 814241020 642602665 799326069 719557373 620228804 732866744 461074131 533007128 713827274 994189853 981933614 900841923 690737489 694876637 909217898 697972299 800868379 427924426 776245363 731720003 328096633 756685185 837059126 552714118 415795262 496288089 842952624 39536957 752519626 677258113 306264039 100760783 427710727 279153897 577220575 20287987 231155037 21128772 623592364 318762661 740627397 758297880 524025707 156451880 435092413 953961643 421921851 707409931 973842509 325076236 91693385 415505694 424100097 989961750 538406597 362388098 981341422 24736873 261800171 9136281 261832119 6007403 526782203 229308940 340301438 110171469 933704256 465070807 574375157 414029830 930205967 91373870 885778511 795125336 822676415 445535898 731285579 384401358 280650676 238481126 186665006 312015538 362225751 301376295 947275209 987754786 269338651 147500728 444928624 355757565 156916602 996800064 544040964 360116199 89498616 822591654 440497129 703851092 797433117 202748964 518879245 794925181 892826490 526663475 685700585 730486878 531549612 195099032 52457335 366380997 577489748 851992415 980482112 9852734 666915359 777805789 634190419 313050403 454404795 819268268 168836419 996648083 677429221 511897269 583088944 630758008 48790877 496589599 416156098 843768449 240164080 183694944 324075814 101569575 43771759 374203700 110980370 11842984 530454963 543655842 789697988 838762256 676719007 87513589 271522050 825565997 16823070 658930622 48684316 795213977 283220771 549953756 421350886 174125744 572093607 209093236 928401854 273466015 421112235 134333427 320376463 118330962 812767292 119000585 946908353 923167623 596051306 281274293 842809933 375256248 90662992 681381179 145333171 41223728 404914960 339922215 810012919 360077568 739830742 267875661 424070823 352717825 924805586 775187915 435676377 665540817 325101633 214056450 235967021 690803417 858080611 400316323 997543625 854017608 833923969 108816797 376085339 216153880 269345263 858179886 421121049 702562826 186063366 769383132 217241537 619152292 958754861 92673909 30739608 116703545 363792585 925894919 170944880 639012318 401493837 955281395 291103389 849473911 910712116 623896541 169150204 41400230 185774848 619432111 901367540 634302691 194330940 922118044 735226743 622845281 998491517 71054375 71794420 270182947 287578454 872801038 460986480 525451759 904973681 506023774 48556652 432887382 613278320 347234159 510279677 365697201 345005582 179530712 291607472 984404256 300847614 792819842 748741804 832618890 988332808 806894487 550168978 22900387 116954099 534663818 973819793 595161310 71001235 549424923 595359073 294755710 636044990 476038218 44381246 163710860 67080027 970871142 91967218 724357334 699777362 46931202 48396998 217752824 191820440 905554939 689123479 249031246 537637666 386165 845833658 717540610 707056121 346217693 282539294 683786244 600256545 319272164 598576684 314374159 883747761 556900490 683832799 561888927 535296702 59134226 90587567 209558782 757634673 26593291 648379047 687107388 141585391 494319171 291685461 676267827 976636778 902251738 570738634 92358016 632654624 759139892 571029165 679690895 963685969 34198783 697563676 991737229 79035977 972758314 598486475 434889589 749982550 619310329 310752492 251079173 665097174 901320681 191461697 448321733 912000301 225539531 245371404 253231622 853051072 273792942 551183136 425076194 139655941 993033973 961906128 192672569 659657844 143329345 695904765 998731952 569129618 205115004 56767754 453964730 777274598 796586463 283739366 554767759 950372358 746676962 385777419 907362349 335058569 797211467 680779120 191450977 732810770 698039078 128646051 993862582 893047373 936700872 27029421 631752070 709018600 395913421 393951015 888971764 512236963 103450393 984980526 36285925 817497405 523534295 704139881 213088011 828130943 634971519 701297156 48995037 734947389 339752648 344789688 803715997 245916498 633174971 338612930 196407118 743267744 320281248 782971881 961413832 165241105 252489486 14659195 434699937 718224532 557115617 326970959 49564213 207438633 958884670 544879040 531239599 524955342 405873551 631996598 774278656 159484815 135329930 343037347 657496544 495880830 732566827 236538486 522845390 55872692 828138933 773012404 812840724 120073302 409216181 188020064 215147969 127400333 969329665 677718025 65368492 129133960 143475634 388617157 902396536 543993735 60131119 16478003 834796940 103841736 516735523 976320119 290088219 960729750 273303426 692103744 312382742 251804998 248705672 222362311 330748996 180146478 185348028 486245062 111584556 40187572 127543783 640920201 34320669 511864896 147489055 123476184 545336111 398243143 660919742 724692492 634296131 794921279 841252717 525166852 457068288 779263660 569519123 723329062 229465817 699985433 357138150 602325598 703986435 66737433 405209444 411548710 388490369 866798914 30669904 124807802 343258137 10748733 269879991 522464224 399446877 111056303 129066218 657224551 386408868 471988298 832825737 70113700 872722193 746582222 793644662 783508409 170455433 247122935 461779936 608856134 780077498 621903507 141404984 841555583 87908388 716391536 136670780 330930454 53460993 297895790 333712880 447140174 934705243 835891308 890142113 268518377 10512643 772446293 209125859 168337975 658607504 939943193 925043600 207963407 172303970 591353526 497392847 909828045 208552868 348092459 617573387 351588694 257888835 392203908 519842039 422887198 351497976 547294165 139837328 850623513 222819653 525513778 278172959 201846722 618873457 907502276 454365992 507128610 55677068 223230643 19398278 32732615 121419118 442313777 684064338 411353798 987997625 604818295 154850544 320880064 367407572 894348232 289746702 651862489 150983919 87773806 272424097 869594814 841099778 173222334 50395618 655748522 457898703 500600849 181106777 365657686 939845852 482688708 120403405 419797005 798330491 122537291 306981206 929195673 441527235 632990734 623764050 572866384 813049236 870621071 942571361 931263508 694938776 908492108 735350642 685224523 135920190 289545938 184220857 603590625 988342720 142401200 22907825 339987533 241165085 780911492 964749854 784542603 154649626 784388846 579202575 147947303 49322829 469122200 697978580 343827752 662713611 625320758 172680717 404169003 620343924 867279745 855535260 356737867 193295475 815160123 718001585 564631853 405083317 733947439 574320573 829538051 646868146 706243373 740664187 926394495 214218415 489339154 483729648 638854624 138077359 17630145 724370026 64710385 991130501 932862753 497290623 434574331 794489801 256770599 861342214 329234134 140186840 242129867 117208358 521578976 737234401 471724560 459122252 730347777 592663758 35763971 776551979 447853219 39193434 456420784 615680448 902825153 917120004 801931064 469326671 773794775 612333334 789827515 16221029 731273195 20098976 480599393 81351124 974972300 422704249 754618719 757866170 269990608 682478914 999234285 505249661 394589783 976547683 311700559 586520517 252472387 58597132 608061390 15208584 175039814 823192629 21301439 956443909 242303892 911911840 466916473 545150907 877120494 234736595 559082334 47674746 968594070 892071456 10127834 368305239 522067551 526244767 131399520 197020845 82162077 453661742 362818409 200875038 164415277 504838009 11809910 90768025 421796214 627759087 46399764 548007761 417526632 530365892 135062227 701493186 718626169 373089790 990222671 552229554 847886500 525755749 84606760 270168365 613681523 13860740 835335437 300237703 6448371 209387960 907834537 775633496 200213433 910701089 193250749 855128972 785408228 400969893 999025927 74596169 492522266 503004149 149058385 889502982 243146636 509690506 473943665 652554367 656477933 983051682 507329087 654174392 834335357 405054027 871122844 110322941 662724865 830237262 948404596 804756450 860999110 259066697 529364923 60563013 811979686 316027799 544966760 878440007 575059965 8867684 866352766 932558422 893180337 564169120 979788041 537065001 942550576 437305602 225806359 160806328 326603890 441230093 478264774 931629641 494184437 344582404 263448377 333993832 545004989 122313469 398269848 25936363 392787802 514468554 40880916 186093290 456297955 332880659 498540013 365299918 266685685 950522425 88090974 696386112 597560247 2713969 908236983 62626614 953371605 940676016 283111494 131945965 275585673 229647545 247925865 388910567 550148493 619314194 630573694 703782128 296151082 286965262 309687283 84945438 830479406 675587779 533380409 789089487 664941296 799280401 739694280 276252579 100035660 631291810 568171559 536112518 987938219 617712613 105631453 827500723 280933626 317384978 317171581 957712798 672808367 772586794 762161312 467110929 790791622 542565878 867300330 443388436 365633737 415296005 162275591 424580353 205704900 224481711 464985252 678693999 631665998 63050261 232593791 950382402 913144455 76937758 113174873 475442858 574585363 471582079 60657148 247081752 820430879 351217577 29257789 123826509 728842340 379889888 88926450 722016582 218109726 667642671 590368256 95194454 555925526 570819937 882775378 935656207 951245211 621912592 830089177 511160394 533570941 108615836 86291084 127634990 210079265 228043825 623938931 213452840 169643369 18254522 367713429 793099500 379621317 958650869 631903493 152674678 372909355 700089434 831869917 307086859 575939609 481426491 250230079 244051765 910447254 938454174 179555159 244302536 632657201 960131173 192051029 27508450 930784765 368368427 760712307 703552232 547137434 124740695 565565686 520271493 806703153 866472988 443752231 399025839 961842283 864232050 75023446 609265311 521521283 992432667 723789793 169000154 517742388 47100315 948126246 714400814 126058694 902632005 717098386 467451566 696200711 87215918 319647640 261940409 657558860 460487739 32521138 938374639 598469492 84519186 967997024 806607935 373834984 878724642 23958575 262258395 486205074 831865254 884830383 852882241 213326058 877373599 600029050 13003318 257642222 187367375 834407734 15661765 337338151 217383116 700906632 700204355 819637918 810627308 729248550 947314762 251193324 772234321 538866890 513387968 331394096 405475043 170519093 481157586 23685649 544672079 290780208 21456372 451437242 285075473 829258384 165667297 812356322 302198375 730722094 929610910 685757386 286843737 698427629 688209273 410694199 892527291 510253750 391379714 511304567 854615584 904290940 412025881 34162268 66104813 45747258 871693022 452847692 222660166 469512433 950395332 826709544 469063711 897165226 555711611 317427043 619635756 616174203 422935295 549928172 570802675 825203579 356941973 517908039 965796022 37251534 958758599 938640504 974777482 885961372 579595887 320204047 649809734 876618266 108107427 993156382 872092043 82134658 640315850 896236105 864526782 492054804 305594002 581055410 647523603 448417564 132645613 558042890 126329983 272252143 372386583 647436677 57145282 573362912 967741588 814987491 23239274 642536534 816980276 923772009 334517441 540290236 82925063 335662566 431330530 982550146 879013483 430054577 327049134 734121507 904700162 195581607 946387402 906048802 610940604 66895149 522420906 684215561 29836748 372290098 600053637 49406056 34174637 630183726 247075929 431019996 274991907 379703840 408035569 493272329 419601724 101764748 385414620 496233363 579206733 256717953 220299123 659354162 33354734 800915346 204198612 555319196 789598470 292948962 686807788 851064217 712297155 663503639 228533606 469948909 210474391 997452637 624440254 801538924 258516543 438123114 21522482 560182002 714753214 696292479 795341004 149853282 639464800 167972190 171922010 846263203 379611581 572087640 440469369 897929640 726271407 499503173 782622595 145870190 173755993 224129153 594901411 1291511 717236518 156132850 790510537 998938184 265360591 920693510 202050479 774370424 198063181 102439349 538650579 566217376 663965669 939167869 486289021 166226149 526866978 599094112 640549055 752974701 838567133 940206834 910899569 328489834 422146603 933388617 599261234 475037720 720031092 33631998 372757100 386248636 339510886 32517180 226942543 54019229 767989747 511883697 976621008 969248781 605187417 913532305 205514164 896379752 194565401 439305883 802442881 297180431 999324160 228348180 434789767 888145260 55019046 588229582 980216799 357809138 6619109 737741085 724568424 370726941 790149342 472420318 522280394 749320811 981072643 139117177 649295736 630991210 758283141 675394013 883454632 655467690 812948449 868637821 489687133 956921287 377834712 105973592 628753242 677287267 664775549 599833849 656024884 250496038 226004510 422706793 131198785 850865092 647311707 93675585 218036642 599827960 726995733 310917532 891782718 883974018 337752445 469030692 704632776 207113521 418243074 651630086 923327158 63690449 103795300 699994360 575477321 113601598 991203749 171509560 607053192 159857246 449856274 591018383 832293956 197699096 95741760 637695301 15622168 528407903 88725773 649471797 692175712 180880429 595524761 100006588 679950407 801262466 159818321 55345347 114737595 127445102 31142893 20762803 312433782 525590782 559751013 302262662 240948216 506302286 631568382 454272697 846834571 996322946 852481351 609207122 395661627 464208834 947339794 786271969 217625315 140008256 680788346 380653690 207341858 290572600 99289064 490062780 270756963 591824621 707910659 692772303 10382803 211991460 421846978 184576095 456366188 889766325 930672481 941799586 494819311 181203320 783068261 161549402 541746144 633463887 540879511 653333704 551573652 20312484 525218062 138245567 378047522 421435373 652658471 10764944 18598251 109988255 148392834 874460958 42499860 348131388 553652498 229013709 518656144 102880085 954277381 486801804 568251159 152785268 496485083 861821648 395360937 115392824 108148566 623170714 649356556 103578693 106620805 720425582 358208213 152339008 346503352 643216986 978880087 186364383 236790415 210098678 365990070 760344538 386156013 508538206 918289625 125898230 765337085 154729020 827867761 850419194 471290165 287914682 423694581 170686140 453074513 973159568 76271782 37506834 278229333 126320124 145788812 153096931 282823820 676361925 712436342 342797844 561072012 916502328 28301312 6243739 86457907 318971693 155127686 26609264 838408096 320919808 25343538 512620184 669374277 658680987 634171383 350651418 672968656 525658728 331745929 233672205 95095874 318716511 204597352 233305988 423548128 756717310 118561248 330252457 17757747 784081485 961868286 707313569 385576463 850254550 832189852 878999457 651989139 534403764 948419163 946438112 889381666 146073731 829384096 762827939 545459560 845913194 697877409 712379444 256569944 298436374 725923406 806850021 812888371 315880638 718284398 857721105 242227318 474785312 368909960 234550294 133241076 314018181 981192170 347207527 250923199 813632437 92237743 510887532 669706288 243527437 600464308 862516902 241655537 233137766 219061157 456113814 947828969 320453162 839957487 272603845 634355535 225764677 335248586 273629895 826055071 600035374 373590331 788631603 402802330 826054116 695662084 336854446 967090002 360632045 191273146 355278818 778032152 183469141 366814389 835455106 866885515 232242869 542748178 760214342 512108938 927703339 173045436 381103347 131067972 987399258 717390689 146430542 511954737 752379252 829498492 38328112 416599047 794529070 941792074 378215278 811182541 346940103 587936470 165589999 111970254 754456324 868700913 369343384 955440801 380522293 147991344 712370785 610364704 416642605 790823925 793254463 309356400 123403085 884501864 343224374 999577599 125255034 98953336 640523601 679385215 429124645 645564897 137012642 734805739 887767617 6992671 439281475 854398600 567723338 846779773 437480279 839699686 258567759 512576779 907627271 384423636 683678421 812924830 130949255 452722547 481932791 105489370 558104591 822789413 642083155 986217000 180346082 195620500 24984588 582438324 72372812 909103544 587072469 54822266 3229853 265587914 792301536 543656761 924318256 228259154 595183601 332094072 624575592 187788059 580049735 234514313 661096110 367105335 535563189 320941186 76800372 330769666 764488336 140675142 530156857 459819813 894498743 678972284 909198198 318147207 203052175 960823188 486245310 333947742 846482694 430565832 996622496 778085928 10241682 924412438 813296820 58468520 496404277 189270598 576396192 523557611 476971632 607794411 550450446 660174403 345582678 314662490 323163052 879406158 689816699 746213815 161259577 732282352 553060093 101276647 572303988 510398551 83892096 646028443 410075690 546145266 171748407 131610443 310249004 145725827 554210007 775097400 292275026 609904394 173982106 239391594 373509506 642733272 508642380 173970355 588188837 523832445 346304312 838180264 760072108 872359383 786280501 144966826 971223443 545990153 639431075 671985636 732974682 658530944 740505442 319508805 702197774 558277619 322230248 644086403 547403200 306982746 942367529 455890975 799982728 789449466 415080864 834962530 432041101 92203875 564705623 22662751 836187126 87417954 527278299 766906089 387536885 256756251 932028992 795402149 187973063 47086062 609465897 319328759 402695595 289868168 404860598 832354323 500154346 849835999 306103451 343295981 109527005 981772332 688211469 964561995 809297625 331611895 230933446 740632495 96929601 348178185 133912594 830859631 725141375 615614070 480255421 915609759 300032774 62053277 987006748 497305889 869179217 200808480 640877839 771076252 436704480 801652718 822876154 447941508 673313856 48013368 640159950 433664525 393978115 334853244 76570112 507979064 440902335 473426302 874882190 788856273 306246170 150996555 922708222 200464739 573730241 904198453 372172385 70254921 802309472 864875226 233579336 197120419 32041653 77146911 177330390 826980952 450214529 177303087 242051502 192151067 934711695 304759677 754566403 663282530 811041200 542475465 513581956 125185901 165194430 281666835 188793462 167667526 43744159 151479211 435540634 146826940 430827835 739057953 663840068 83099497 594839939 87809621 336379716 722754472 994841713 602564458 544830974 226829224 105538825 498701005 165352020 484108887 554876500 656999470 61633974 773338219 52223590 462695312 732956954 709028198 478320983 163829300 375838719 651212432 434332236 984528292 272872809 498665978 369607788 808683193 439654633 216955258 106887149 125595277 881462675 507580852 485636868 631407488 678703879 23186188 947860217 600071239 612450409 499341495 69631250 774588622 492243818 10814888 497130917 545811799 194157374 139597730 361841929 8562528 273719207 405154863 46880928 669329596 451169766 24738205 283328983 594336894 156411852 89657858 294750495 32893951 529845425 116138563 806069491 400267237 838512750 349143302 150622931 259694365 701542511 147317691 996932171 632068568 705322143 300412827 991244269 893658775 190130293 135378596 748769362 846393628 928264174 366953122 626944798 99932531 790401173 914215459 328295419 604010222 334881906 536845694 542791579 510660911 773033247 228452822 468505783 381243669 784262841 222217234 303100692 755257806 529762020 36589028 172881018 622386641 930664405 326092992 572483002 577094101 616389948 496032491 73609138 877454819 237557080 620998762 53655620 766026307 675107314 694242830 288488278 360232589 57339223 149377136 2526174 844313754 39245661 955741935 319793365 870987154 102346339 651634868 817138239 435507934 776084556 192009137 310670371 461859125 110358411 912106909 841929109 289126288 956120595 685072116 980646831 834847796 803044451 619225094 639516307 263720881 102364290 689229278 841669226 245050838 209907966 773358421 64270954 537277125 78040557 984405517 678843853 948516314 761683948 111732587 850286801 425344202 952643876 749626786 246217666 682943620 823836224 595946154 355639797 340941894 171888507 903053124 639893185 982244500 287113615 397465078 118307464 926832186 961369282 207765523 340990393 979244878 848424421 137939118 435025857 704406056 704676684 860717997 191030298 103423601 589413335 149684919 466399051 646700563 355323885 824535610 433845722 769047618 675443833 269694574 628720988 935092858 29394930 206842457 537597805 936405889 672141657 264252091 864428201 847144547 952626 935637291 451999165 694490480 623664266 947399932 749938780 292452683 587890684 96540242 764812355 71063509 737539747 787488534 238190126 724597049 746228516 304295925 555555053 589173994 801627822 920796520 37508686 440809130 558034427 526458033 383367214 95049083 167069252 959050965 780499313 355065508 701222995 677413800 654962938 964232896 664836978 916888256 92154051 811252392 632395901 414849151 354718403 813584003 298442446 62526218 696155643 147839160 76202829 959031125 916401014 819278080 768873831 225207317 111078216 327648599 257156117 882865869 677394829 908595454 9069776 39447235 69249377 821742469 160626339 273118216 811345906 536312253 454042394 474641527 932114802 599379653 557551438 160960685 232720922 565110014 248755418 778126099 583444785 214233367 3384039 582537432 932023803 168692485 469870369 138418423 794401996 761384193 126355645 613927727 71946240 679826576 377922940 718803719 527283449 777853825 6754981 138858703 225055008 702487271 233422340 349380770 848368872 220583963 488968944 242548065 796206797 672069575 681034567 552719791 61644364 402169041 328286832 883347200 74796277 113020787 571330648 896547980 881451350 756686887 569237623 954949203 304352783 813656751 419193034 196210205 29533371 915795737 902579926 702018171 580705545 642970811 817239725 610296771 437632425 542663983 336224226 160925465 490777428 976140123 1935508 292003680 909299667 846754408 472303210 835833932 902199529 918717647 450207634 609491287 497387371 665446216 716281281 621353148 519332914 57867737 918130486 312145545 982694693 49692367 939627963 866570120 445058601 893595069 277428119 616307288 133237297 242357375 328111781 716970068 980970038 68539962 655286595 848232615 485451840 359459933 473483605 412494654 121349717 5080983 243500877 352389590 219238791 685291750 206860572 450717933 656353010 713717392 592210244 557852873 8859831 797895456 892929484 951724668 3441920 941631595 698431297 395580641 238711552 384658573 337016760 225287573 208625139 310223592 442896337 942497792 427715094 993745196 352332208 333069908 38602169 760611402 411795462 335777416 792188973 410291072 353328904 597360990 225965257 94820180 724982133 323061597 429968369 880757391 3172753 491994580 192060432 843586884 713009709 752686558 42700440 947909589 784183708 481343834 26125572 816813026 654679230 341652463 328378327 818555736 988321788 6821391 593952151 136438637 589886016 899409904 708520921 600680857 472922628 540140695 799947832 648264868 370005570 544386246 939389781 995050392 953253764 403912210 624562138 928589005 383609558 761711569 804345211 391067354 797157072 602954276 465646576 900908968 820616846 73163506 789208063 30469985 799000249 454608622 790437997 68565881 460964988 352797839 142050063 371701164 810486417 670267666 467955646 614452480 834069554 110942085 669395808 140978369 730883624 636352435 514353372 649392000 841835970 101480760 128526373 772629020 112037333 737980531 291054388 63047355 649851327 411892107 450375950 156575175 622530663 386733937 518546619 503337203 346924345 357124830 120016460 33854525 923716397 108961619 307459553 877966568 869964227 916784150 561131669 356778117 423143935 758478137 300440470 264674273 688341358 757781138 879827223 535157789 20926250 618384068 656133457 856126362 604902607 294128183 443276678 580579593 338670979 878872601 365555968 221947481 412156148 446982500 436429332 851473867 800817754 113268184 980215064 436378846 760798579 674462973 812027763 195474276 749481860 548572963 511618186 328179308 731714651 140437603 809061587 304521046 636933969 213695901 917694663 17068230 838636608 173590904 40403431 751713703 440664721 88054118 248908224 181346349 564503602 842554014 752543970 323173077 299087512 595467554 480599531 801890145 13215684 235936440 865831542 290774497 278381370 141795314 141026869 392102311 39794440 464961830 616980439 645177423 548163270 937382264 894900244 951306943 328290961 567130572 588759217 132958243 87374350 547765719 877864312 812078317 228795247 411540748 342387514 901251034 463529575 568942513 454570196 969692400 420622135 248231881 479192612 11568251 657859489 39352357 968608024 268160013 437198838 917829985 780869795 468663172 25477133 142420697 841152955 672530437 165269058 529902518 678251619 260202233 543504511 127067629 365788840 969322265 747352365 68267824 821447067 140474716 82929222 646498818 797370966 260688395 606660168 144745644 493548795 739498927 323543353 878089276 459318708 599309855 687418788 501536652 786963383 349575029 715646885 863373372 862201913 658069780 626788309 350812085 865996158 88486060 21740124 502553126 201286097 688998704 764546028 20033926 144367237 488898522 719257782 806807704 532298992 839737139 989908346 88340965 641388922 503261699 938274431 307108536 203078794 169021532 679698578 667177519 728969618 682772131 897321485 554209830 259820559 939271794 84847560 759215688 754332801 781799357 956038189 367860997 530872690 168935348 785198123 504866963 31139444 886763991 184181302 622478836 756986661 495996135 203836748 675211762 236798496 944638961 891077622 538326041 653317145 946326344 751834434 900068293 168695480 541091723 347132356 551982356 961075646 746892956 449664154 897876464 855834605 541692074 839865967 218059527 878829066 135997222 461496938 905319124 676476398 654960591 308142918 997264020 284172145 823403942 586052160 147340627 11848560 476455419 227284001 373720799 776914140 954009952 597769779 763630801 286231462 511976626 934312781 410608518 158478791 570458645 869533390 481463597 936512 265404916 101477791 786342575 893277214 496752645 581664554 729356489 404959601 516928578 677193831 253424888 807014485 891681269 954979029 734498952 708612587 784321187 854038905 75578249 694219101 12050212 297820130 902877134 189804764 594354836 415387430 846914556 465062 844595542 331271906 288914556 891407356 891225114 392269888 370146426 3654697 924523727 4046570 542159602 981511546 576610740 661510681 778558370 749859409 664809550 238922635 30623765 954719242 835731046 235090562 331362455 487773714 857094421 819215570 919589699 205782237 996103093 911300049 366991609 694949601 198535910 151856473 512079456 921056675 983076253 619950802 127140587 924545707 701084679 657829931 58830288 535903375 447921827 782212315 784239376 155156454 863064372 606463199 411133043 524869716 135661001 744266685 988392072 223106 796406194 913770885 525548458 688967203 360538767 921136074 296592120 394738419 900203333 779824812 628909914 427595185 902030075 520432085 620377729 708157478 701727275 497333613 74954210 732521770 374292876 991161645 461440450 221800853 941302567 281413461 71539750 477600071 870347589 828455334 205494240 807845418 667674492 400282230 739172744 421056307 114654121 487713684 691909245 363462493 938785516 794621282 329987561 422076071 19107511 339060167 937427898 295465754 617785786 611180335 657836458 817506255 527603 76059025 460776504 881401306 160990887 684375914 967537070 644869473 424094046 64607938 198843677 504730763 670704371 502388776 375624024 54285453 683557757 504767408 118688774 523225758 548385890 489851897 822866570 452665605 521914191 40643370 762198297 787724297 943827767 78058481 711300516 43700474 627914070 201453700 925294836 220904760 657984048 218461601 408283019 70434082 507099284 609268622 543359677 336773411 518258324 17377563 675488670 176023724 731142286 418246812 71602706 105919801 998022693 501728497 890269633 483827530 52569922 964808319 335286555 139202924 617156894 215711796 472435284 112791856 878514484 223458952 444050034 266197552 876417097 842001017 298984508 119495950 337513832 218187915 257195329 437649012 228583141 40009678 575847640 754544663 754465117 76120280 115224868 843258796 897134770 832515271 781352460 148183547 927422228 222808643 915664961 858076106 504560116 536117367 309602874 159184110 850860816 629665821 943301430 582474048 924806510 680418927 616690243 297016226 730104919 5614134 216726314 110868222 77068385 667032768 396198793 864970057 381655655 551416036 223838651 759686777 406809229 448846847 41828844 989335954 634270528 33194230 522000652 320108961 96037431 144218426 277312467 728731828 832446314 855983552 748541888 121989865 398919711 122602502 18638364 106079582 60166626 761267988 717382904 376403265 895592841 50619508 241194027 911757506 208542764 186958146 490371670 719138332 943302196 325375769 965930976 290725013 330477642 359979292 663699964 747943791 227770468 64003840 763597728 415812354 116771006 445586422 958063244 792529833 141029085 541230017 339137610 726389443 261806731 302581155 370119467 853839293 876214493 105892715 356949314 185938183 237267248 892625008 136591220 220071195 498607657 143393937 773335146 357615484 762309809 98568498 600747921 416332215 207005953 137684549 89192483 401868891 875501456 105431868 644803103 105091074 780132903 118891545 790862158 454767185 420955343 341554272 102437953 486744815 61549278 313079327 453328719 228309649 590279664 739081454 953566105 562287601 917075177 593915115 234966022 810246350 101698293 891668920 247709258 39361782 795346566 219218314 188934104 582113594 935465055 664249874 568560373 431701620 271288957 170402707 748281254 611718278 923394865 613711823 325104829 377621339 486223885 643181333 559810769 57948645 371068652 13677884 751166272 681130783 632956660 165787298 547423544 922169608 646546325 206762288 260611239 508383151 732536699 385910097 204913989 443608098 510104489 731046139 177771919 553687423 738334304 164744876 30294482 791786468 538287150 839588973 381516573 482147713 459033831 482759370 557767749 771625345 698733221 56429020 547240174 813862693 388102863 650619967 629174912 884161194 47355150 642535447 242556200 787830879 671551580 921941526 607185123 934291 597420016 93282930 213274223 452186017 601028177 782269414 783077458 411619563 546002504 330916541 666214881 243172316 741785580 539402691 706719791 14562790 214997914 193283405 328651041 825266306 841206004 79752248 546639450 282377782 626704360 884610286 91813969 401866120 270342056 739079261 485301046 837306380 671372722 72883451 510009874 991980892 557589708 284325826 363814824 659599386 3641342 100963645 943472009 205391603 945933728 813827193 967506188 430995348 173012045 344918540 90711124 433831866 781689318 858278676 87891275 794308651 395882652 903520310 734104218 992434602 918703074 579237541 722363072 628050958 109952883 756593939 639065850 903047472 553059924 379433663 893933648 492249586 930102738 703931503 136193687 420384065 547504256 448105841 566816096 52700427 743407418 48614045 996232976 935374154 322859047 3628880 920271310 774499078 175185326 769735281 123000971 125596485 269322633 627106157 762902012 41013784 105616305 801217338 799758246 877465500 980872554 844195162 379945166 817074419 251031618 463675086 554126214 519555911 764325132 746855721 760551334 780570312 279954149 885052287 837079502 141782965 673827889 268430189 603394151 680254794 331259805 352081434 952013983 418430679 533496603 322848565 517565294 83183275 473292009 993587700 883786393 617242400 501472907 59854871 39494562 675748253 457217487 442989793 192240862 39609221 413055941 976379427 180211299 803269967 749135309 273895216 891603730 33225077 852073609 289596392 947717523 260237687 645231335 402126260 855063382 735229154 554797851 852100223 483824532 767888454 392999838 417667518 124183628 2640959 264976952 492506994 801254729 539658860 938518774 242066723 320804632 847426172 663788843 802830043 584205330 38757663 6078577 269711922 447689051 657730830 946768300 662101319 407488469 198316045 380548109 734079422 977855795 735629797 963198469 851100103 648537326 301754218 915359313 490864920 52792134 92688244 58515189 849715697 610775109 891999207 749828156 878288405 601770166 822262957 848876476 144692181 275652921 182928566 471164753 134271748 999726374 932251904 731033631 85942277 376935339 981585803 273736593 306164921 738167476 50609760 596426844 226301328 458024446 764837014 845799806 654788229 426724358 367931203 209204539 291362319 831846677 791783560 197168669 604885049 468851258 583132820 367276027 760690062 962149969 180374167 306543340 126446632 280248566 932999626 495003739 101263523 286740372 693963889 708925937 72684325 718682202 980361430 528447650 478676060 861336896 244240458 108476843 860792448 626029320 964154409 940600207 334093900 489086009 238680789 863981338 701239308 366542370 30294710 53185637 339377288 954535902 643927360 26463687 702715418 537360716 7152111 877113572 846342560 947546130 956512064 209934253 947009921 976270501 819141571 949086035 654993575 430963513 395872008 471701331 728038796 251429073 757242024 997269615 305304365 432191539 185372487 64666551 468399120 486919920 452575630 829103996 670067012 688009825 895155505 579161692 807509856 99956902 990889960 510380092 670083968 18216870 229624440 925442375 470766157 914626580 685702057 512194801 789616883 196102759 377988428 643383030 133595177 431606748 353761600 382070874 346111788 208513408 162708579 104967788 243553477 199694112 108023200 505620414 901127745 398127704 644227818 779447087 43592820 250222981 564237372 809388767 541430465 328256719 22711449 288898875 56995336 283785511 665257223 553928699 636747710 682029895 171593116 402625302 676007125 750555309 804924529 566761429 844251340 795268770 152247462 862042560 734195371 861312823 523147626 386272688 610610173 823025730 640543983 600585404 591502811 50062950 396795242 868746575 702795233 795300363 507924000 387089420 380053814 113363039 62030430 333345009 243890570 354391644 275985522 596639794 798093330 653394371 600182457 762858843 988710540 484162073 230725268 525439536 430612542 181748657 812364654 244193741 565873913 90300066 580672441 115479432 382057487 336231375 772829679 200979466 159038816 271188444 188104595 838187580 860137044 230592061 101029933 990355539 432813270 48437799 419022929 335605965 100773472 556600733 700874906 161488237 522309359 132119652 193086123 318762047 542035462 654550800 486719019 768188567 473639863 89617911 480581068 810526737 313159063 594074171 158233677 264083859 148019650 774007488 941665131 508012103 51937762 155285820 528283380 773389475 761988133 143068452 130040248 935358818 822589503 694016699 11055765 312696971 95378030 126363140 147862374 408463975 609198204 514804691 803453469 740338314 307575988 867304128 244925353 966105300 784161516 153618475 155227907 298840166 394236805 328140091 420290606 382052527 338279010 177682914 186084148 582142047 789406707 421219288 863189800 842888309 737442863 582919068 404228390 778380086 219294608 476363129 939247438 37703980 839388707 618413179 286409162 639970862 721474162 749442429 907611597 170501204 643315860 683374111 407972497 705733897 976508198 525917131 23288921 440507379 679748689 181107884 21165932 791197191 543615168 471979710 369403682 992105093 663354540 993544386 592187088 798143468 369765588 467375936 671947996 603847439 560228731 689266567 714618286 244268028 986084208 849166510 129669819 947428114 658872586 775400600 697973113 715337718 911225641 585813740 827102315 149483154 358308912 202184218 219757598 264331804 636785937 101748826 278000674 256009744 827507261 554975919 592830996 913877811 360704695 851813342 383654036 582325389 413131523 370593145 201625677 229223545 400165424 237075669 502194414 945480589 640370900 570776086 31687222 52668337 382784012 626665765 137541351 965131022 36692608 214331054 987686857 39207710 227158881 987638061 301717164 252575129 848335710 952739806 389010288 706149762 307695547 445539791 651231476 334776361 428029756 469116620 734852130 421675038 709688623 78511729 193960172 862127171 317681260 904472856 682590543 37834934 502805585 663488241 168899147 777531369 763222467 684963556 341647083 799055757 111024686 486642097 445637950 439302557 687490702 427125460 314999652 748388190 640006751 606677908 80310396 311303265 108379300 549026822 115098032 500565362 257678065 456286718 994040629 552710580 311664215 508710432 590319937 820129674 765627508 791313617 999338263 453107102 199026291 260460864 113472005 628783079 74143232 489998954 414071898 78772383 455072848 589955085 386619504 742177608 476245282 382676400 25069485 920992692 392295359 436459429 97004407 637951732 834567152 325078019 528270403 897201252 435328783 640199082 474155144 20409003 762337019 64405828 717309900 367999153 343570709 694267969 960435608 268511405 244049233 963000792 438656124 449804571 169677091 680657419 238480150 422355391 616170632 19241630 195315974 303905444 40055049 450715686 975730678 322009376 346559664 225702138 143082651 736240849 772945178 372983866 810045867 354161303 639271518 207655630 227197675 202651552 484365864 820186726 6775845 166157920 744856739 607434362 724395561 276414357 602790277 446302028 561669589 903187779 535521551 957662435 875826440 428779442 196331267 580017167 80241583 765719163 455990195 630261608 742032058 269703545 70694132 384469071 145050916 902986702 722562853 345164268 6759665 873201898 388916778 541967921 866044969 33472385 284898933 934086867 529051613 918771852 392548857 256080467 652020523 732322897 357629237 783933179 877214771 636949340 254925358 793178587 458513694 741034369 372314996 404246984 169188642 861959391 528343839 98519144 573921654 108566229 553634250 604072222 772066911 646640914 344806303 615569951 654422052 107725964 473769798 803444061 980083227 20303486 893274363 371205023 970427801 625943917 518631803 324607335 660644100 771062819 731650315 936964619 829976776 898077365 909450360 324640415 366235218 41533311 477335067 884561157 383153442 74267687 586934483 900382436 725463991 101441689 105499907 498932913 590060184 37360647 329510810 586799773 340817246 899609070 2682638 370926508 226823073 245211412 570381409 386812584 829540352 748238981 499964951 524105503 443676969 228404883 707029818 147902569 214128332 423860189 252911207 386580134 300385445 639567940 194421432 554839488 439540597 434638840 185613014 905279078 96777223 455214701 726432749 950087955 119963181 448847707 690844852 888850690 312281024 550589897 263523945 745650495 727634341 607444228 524039122 231751576 198536899 35629470 119923774 112125865 462124814 824535671 714309765 272992205 254169217 449337265 51759616 287860785 545283614 582126007 569607067 871920066 705901804 82317886 181587649 644090683 598105858 633221442 514972777 153435162 215175289 336043531 481186321 1703336 48167025 284495391 593944257 283323382 591009813 996419159 437371395 883279067 659820952 689778127 472730865 987755769 456437046 481741543 934583080 575093428 277398575 682741328 276416976 302394178 806250957 852774908 212212373 556743065 874842722 700897833 691887278 591751030 129253960 816571480 701995481 828756070 281301222 278608985 37630301 670693561 745848737 722291516 323270921 616281731 664063212 628431969 695951918 479156390 90855235 833990762 294837939 133751246 902139430 801437255 527301622 857529702 429371682 286033446 143288811 363523243 158167753 482423432 351593988 50292633 972667826 961446195 554713667 533942266 454994306 756129324 767652907 820460127 375811045 722084557 636409292 554448158 462533512 166367409 914180285 990081883 346203432 552740026 174536987 726513658 780262025 414454297 961896077 596998320 978430323 821762878 334207296 342648560 698904248 740464359 528411370 129379070 755480885 20258585 890505677 372630754 460667593 939567132 663538091 966758762 919994209 440980875 927992018 396073264 908730860 934695741 683962652 517447059 264396135 910356568 366011620 729203132 217856979 939683913 914515987 558841756 541011258 743780290 586537238 91742957 210868913 559598018 975242210 561857577 377983823 516618891 856980727 778959263 976073526 1332395 146066521 61908058 123601044 994020340 273923224 528112948 249083033 635051655 235256778 383435728 572904573 711663554 82532495 683399572 917393028 331183445 462391050 583019694 961794299 295008819 290237420 184252186 867682097 684003225 705472361 790639000 129872001 76700682 92202048 572267182 73038 629629525 391819448 185373102 67821568 867361421 92909982 91158446 375560205 630961419 276046154 862744211 775024877 273733495 789836443 705336831 859563297 183523260 989405170 590212199 663947572 428446992 332757571 418806271 449321147 140460780 597246976 326312908 365041997 360564246 266033709 415700117 824591756 984567708 756832585 632154598 858052134 948267470 667205735 11271964 811941066 978515277 337800218 604967510 989212469 541599738 26490245 358204286 424716325 433868290 195166026 894998848 129744999 694943449 573086363 661529112 511000012 983983677 94150187 82436420 414734896 160060720 936387382 683992524 220822133 884116734 31193225 221449092 665827717 358035518 570850158 557254145 318365009 859841995 779271868 203716002 91802581 796915145 854590929 280076434 81895441 275292835 509889429 274665920 245616401 613339662 532707186 936620004 500483814 60635656 600373347 786488961 710674860 401570772 820321763 12450522 400016517 449567999 952185083 74388741 63327899 913136219 511874359 862998230 36379166 814738694 75605421 86306545 366199629 506078052 282114558 146592699 643711844 101108769 63417677 972623460 540518323 887856947 70603595 510909927 154152073 834501843 501081901 713176067 267946051 564483206 459257009 862235710 520263743 772083738 419721500 713593581 169863147 835512997 807855166 592324131 184756151 562235260 607888239 772229829 905032733 776719180 702453386 711077750 804753570 286512893 627661046 907030444 260736719 149140672 720501924 512000156 446494516 180633368 767578886 905239110 68453487 902966725 681106460 352883828 8258593 546994899 749167982 492336054 633554928 695202712 281459977 952738402 822827157 604012977 46000257 226246556 127677639 405897728 866648056 4330057 334081095 803302834 298180369 155692568 878505187 579587389 147730941 683206279 735777128 549780827 588694641 788380112 573038772 303752718 364907179 535014912 304074409 231756200 336004721 410557413 927565104 911526842 503679507 251814424 328153917 393656865 315909476 344925689 674705352 768629248 592284868 635064495 666975956 492930247 816567836 581665322 307512942 57541925 839290327 953495079 784065957 72875544 244423149 21169952 66664339 478668262 282890969 552464225 373964893 948716827 450381989 17362425 814144040 914745224 889442780 106771904 797998126 472769358 21685399 219362393 636193699 553657806 57189748 481106728 684358349 839997622 139325080 980388960 242817011 70947577 156670128 659733497 11347049 816141267 957232118 398296242 969571722 193320395 125437223 27696916 125524407 784668073 599283849 846209137 157604698 206168452 892648167 514589150 837642727 549844407 696330394 352356159 153602262 383511017 357695107 539719223 95427754 583074307 853985540 296464186 222356465 610258746 816811276 77461633 476386359 795197194 587955475 923755274 221629721 139054650 852625431 922327454 429971258 253422547 974282908 245101007 811373890 301665835 269597107 981129456 923584744 472462301 59874286 20544809 448013795 939249358 832459891 488015451 569906418 362551082 764830177 606868283 780082917 373777511 366153577 194799678 331807117 610108990 954408385 891843751 324132545 39897014 371500070 842081149 267060583 683965466 861018465 765349518 769616484 770689534 824795838 708745080 718526386 581549119 102386964 511783574 534713670 172581120 429704130 392580627 716639778 849975473 371387309 650154718 767797076 821121792 521778244 571945903 613030122 918646255 668872317 869972487 385497856 876451009 713779158 746683183 487932602 544103167 527142740 619090229 484553025 261122943 55215754 248173554 27515077 841465182 892843657 679198729 240268162 737010432 682453746 391628254 356545210 913538322 962742506 340589732 745387962 6773129 743984673 614639956 534570192 193075868 65958346 132484012 740949083 903348692 614590374 488028980 750030262 447787775 593522427 969516606 827051602 175553835 515268503 665940707 492873886 192139195 479255759 115301888 74997526 613030221 115826306 633579072 264991036 399721168 545267737 886048531 724785305 414511739 597633916 174225839 479933889 241621191 780657192 839285782 498657099 410630007 472033814 237424656 369438429 540255899 250909904 727933486 535612958 818752388 961509988 774141126 137263555 972617680 359773284 27505405 373571204 499219044 680542965 790511540 39817767 679609452 410261431 852035235 120007280 959579 526570203 431250749 105996344 866726637 116394006 43652037 751482453 484234790 955156904 522426433 986441386 384498260 292494680 282407809 745808674 463808779 926723441 488873505 310784687 841158182 762755020 893717373 404589642 914664139 692021958 53980351 386337273 666761315 367189061 839387609 751435201 598861734 971830456 55336577 782128313 365428622 131672596 149254966 770291190 714929761 840887514 578765892 226829729 246982314 517356303 819366584 810167775 187187261 535011135 141361517 475399139 699222327 686717314 974218753 452165353 892557051 72858233 600265183 365293363 537364790 705438277 99954994 954642187 193838302 559143831 298774007 688547777 438904620 669480100 855589100 886972083 459244201 104376876 933709469 198751806 731950109 456617078 606918228 346134227 717605275 748039758 695683886 970037728 591368068 731174923 151914762 426835680 743079288 732108426 428295568 947221079 487784295 554976309 962131249 246017739 804008578 846239735 306137122 252434386 671755848 774430789 599939432 698028293 900335484 998179361 556138954 732792071 618798891 525610511 618062038 597686400 890260902 55727900 47844836 415082279 649443725 346585058 201078040 534953137 744872642 648989566 410934361 60337121 681014133 918633108 758069333 240564101 367765780 488371797 928592261 695510380 430393184 340456821 669737256 817701744 196220253 756630837 775548490 720041591 628046422 379132502 227087546 692402534 874763998 256073772 895816208 378057269 482998740 925510540 656838826 190322393 588237659 779721170 974121652 755034709 718563807 713071591 398957339 886367158 694816530 948236597 722863256 482205454 105211126 507751095 932851374 350037620 423148234 899199465 668346528 671863566 195446813 724959697 719192197 282365445 559722947 595071997 68733998 927854987 873080534 680775044 506931266 764931032 468869567 673031687 469620004 853759026 215122724 591075495 760500230 726180832 443446524 990222613 505218018 477373241 218081671 143526536 824301686 183741586 71521349 545886909 846072652 166417742 839940865 547433210 478286515 683736285 312483539 106349838 325525187 980740009 901435670 389825614 799973980 668405297 658473580 107640474 523658793 310434294 230394310 12645720 491404695 889651332 839238484 111043702 712297440 383293037 772982165 866282858 63612676 444043334 79645771 726604339 784459979 60737977 967897987 633541205 475523524 284450410 350778000 729995742 525323339 54644496 426160915 920062057 146184060 410277474 969402346 364863505 338264131 305668644 482784325 576769658 746548813 43364897 345939096 553394649 832472339 286363431 693101471 215916508 561073878 706213397 262486364 220230854 819872671 455775946 639081502 374386783 639098429 285776179 124299130 613031665 874437448 815242817 360647498 523082836 765849121 820146924 45985970 98416870 761505264 655270203 23481632 43428495 896050855 635243828 482705737 235253691 727508474 446929901 335386660 980486238 87778925 468514939 352331261 801612028 450016838 158875909 83454809 620882842 32128664 549314995 277521937 959768771 348939320 658177464 597574207 722765454 881587402 866813519 58127689 678437788 849146802 901552057 129572057 493297169 357855012 403515456 742007268 66924189 537253653 954432313 984888745 165365618 109583433 736622075 286840999 280688469 917300036 569252584 35993006 367728261 269768025 139377260 286462162 250052054 280282527 238296059 429444209 948162458 515535350 531638027 243031082 907294387 411237899 895692321 675620333 42465669 558084679 822065607 551826668 218099967 795207396 316275086 357258918 359172502 238110953 84380945 413631967 112245323 212181269 169704691 412269987 537687457 221631228 369165279 807462466 940760232 567007225 690900866 433414239 759344631 861406760 385428894 919370201 65358506 788897653 158399216 439861982 291349355 922409100 699785796 362267874 474070883 137388523 834576747 446807458 203365194 224379084 779073601 84724260 252159075 506787386 561835942 416086449 603189102 425895431 843592841 191321310 912121276 513418184 559000788 58762888 192861221 153095646 994497674 307414739 119108610 748592244 91369641 54556715 487752254 317877368 792858170 544493636 44521030 688152226 934717776 288434973 948316944 439044212 34098696 333567988 548113947 985306420 969819010 731801693 525486699 401860340 494305002 470215462 802561425 908734859 307134577 4012910 129175713 305208218 425243215 265689499 584020794 836804489 658528712 862063701 986940548 42159752 167881257 250148754 949860394 826297233 41646529 103052177 604112231 698208865 200512746 867506130 824806899 861513347 853500680 885020708 262665497 444876359 273922437 624795034 563474596 545194947 417328850 64721810 472432623 821716953 799950188 738423471 872489682 848295219 206736594 305386458 275775162 46348604 502618256 271134031 578738576 393138994 998805303 242392963 313739468 502307090 252919650 15048253 266864237 76608678 681525941 293333385 209246711 138974845 341691608 819027132 603039098 480086255 914084479 769151859 853530764 448543005 942965857 43867279 119330125 718255086 538667074 464560958 350557537 585549590 197838318 236792310 914708212 28350472 33927223 423037808 445760450 471160072 840306676 720458674 852621830 116674078 17773322 246174986 185675140 251212312 394978149 420257035 651636368 781921169 757695475 926223759 747512573 198814694 25989551 61419962 147984167 480197185 821230749 766887679 933081847 20454035 809732294 403154441 313659099 536816277 917639998 830895066 768320201 143557314 580014366 428652727 116981057 321533802 521662602 697017640 626638917 94557593 977546664 110534917 875541606 121193509 961295278 212097639 735558586 588471986 354067415 249698997 575308001 640476841 611139168 742352794 588158463 26851380 431114136 773922827 331579330 714991955 881061073 127153474 930793569 32372930 831061858 921003974 366155930 492215051 175295409 893768291 780552372 732885373 799890983 596914987 584448893 749761838 415329330 499093628 745893707 171006469 580615508 164166650 379763964 134058915 240558090 985144722 397933303 179055741 435373280 7209079 112124969 789173447 813565289 80320551 256968456 725758342 948065596 359021411 19300501 280262529 493758208 528573240 618590549 751803461 896883547 656504831 581383253 859284780 292037121 158736975 801162282 651323481 933606061 734635021 164101110 889182643 724292639 459845990 432237151 309161447 435560226 3822545 290583697 9534833 528067978 173272838 957332288 298984334 591159600 362403338 82690993 392045897 132202232 439631404 424036517 415444594 790212040 82985983 453247853 212029089 951265174 513308253 363001053 781458484 520081501 283336045 795849811 45225814 936332570 40833944 770592950 548736758 237446877 660364951 826773881 671419852 122711476 735737954 3595658 957366619 854271932 520019520 94225517 851544807 297103897 192152509 970676007 458381955 914501614 692499371 440142661 907245062 554057076 928893223 938708957 734761491 264904932 251655830 247886479 264310542 873763199 899813031 172635264 40905258 742259857 602124104 196444000 665077855 183770728 521218746 439507556 709317485 322873187 770463873 866079048 995548379 322331360 938951272 662915416 939922170 759550542 641954691 593356892 553707491 100133916 236806959 23554478 622561398 152009414 888592398 379633452 320956250 417220045 194071312 712027706 568961539 297755835 887966824 272373449 609659812 356447779 288704657 234290766 577230401 182051998 480995665 716638919 511381921 719428562 270765745 163405754 826025557 506447717 662099465 159307063 996927155 329807372 995349747 450486480 316692446 493647998 998578259 738459816 214502589 282375811 296119129 235999844 160886014 649156574 413620339 89756211 236022815 200976742 529338979 75825097 240405595 354716660 218843947 567760229 896398780 115545453 406463767 314127564 685705493 240336308 448131002 983675982 968034552 62184388 742525170 980502980 295770827 874282129 608849892 89596806 556030386 529997856 110156794 747980161 577255328 873246330 826560490 974335517 913603150 341302451 820059312 235245907 968423994 869992930 841311889 693446050 415253932 494754351 96700950 752851727 362439607 728123839 272704792 326504491 685349168 906935237 578370478 383001862 9454011 126370684 526238016 128047684 343021756 640064807 451456379 257884682 655434854 719171342 489101649 258698502 358045873 419714185 829550076 744853870 191770204 920972523 424974853 77425153 426841074 151930520 880404534 615191299 538901694 927719423 423860899 637231940 730446815 392502925 774400425 746864411 343890737 5785535 407689963 729217892 856649821 709400087 905449558 626380423 236793297 719393821 491813665 260667762 907680712 478733157 129262789 6641819 866360132 903498633 857115652 884321536 55017738 46773037 481777 830487847 479788205 187859704 830970074 758765088 371330944 228641950 759977823 968746111 804873130 109473755 673785699 350175586 764276494 916540268 262574352 722460018 592235616 823065122 29689823 569329628 730707991 904583115 852567945 360068950 23075697 513078336 144861968 634350366 143753592 498250345 519598535 905203709 815583229 247864619 541824063 562700602 486701721 3474040 530799953 545640884 676887977 198047310 319825189 70286530 148409687 679317420 792215591 159251281 919151252 837479329 832541705 933047496 960969238 137802808 586228424 260321317 42801504 34952593 916243371 985136863 86636475 567859917 85257275 445991937 117566259 366048020 838212942 53977879 849963427 825966234 692508670 623867704 861593515 84206490 641675445 921059331 248224691 30236503 74679318 412427935 76709100 868639511 723161631 925429431 884932173 868001071 326024964 985016707 977888662 829985787 349389392 996790465 973940304 212340953 418251723 545073591 259461325 169730359 384290442 574947892 655478562 464065415 811937258 461135247 699107890 915278400 225489040 570054564 200198308 993090790 945520998 784090077 122856937 415910662 727143075 675447842 309782839 784520494 859635391 852516336 603020433 484917754 343974274 114681152 561949116 259881230 433583353 144526748 561291085 325382162 648550004 460796688 919179671 426480568 670715795 63337780 698919359 142980797 651575608 638679590 587710632 499184864 658019472 11693451 28528136 151236078 739496976 409890193 807650133 330113718 365534324 932335 320585422 138585108 319634881 472790242 759562365 71423980 722003521 299034162 145000751 266007079 975987593 444571695 956621697 660625844 775298934 8483499 504892622 674293139 247011628 494551559 460964419 94449602 437640728 903204905 216766414 103281230 97877229 956295038 815225129 412443207 511449257 183436284 609558225 432103113 689026957 598088740 507240721 625328627 10467367 791456762 836065526 62242802 220073037 250227725 873972061 305677819 340323863 206120050 292666851 42177858 488787695 23659466 401206258 313045005 734002812 274756664 625507768 885879463 6950325 204949612 667103023 898322527 364796887 319195805 550933270 334643347 113622885 112790407 864709113 522465699 963363113 964427634 856877346 442317816 581703995 759657260 85226927 908150535 50809844 976447243 502340476 986717768 554573564 198556140 905522228 567356993 284821053 445096505 147289158 55132534 339691755 589850331 887322091 303240576 392610435 398024269 168151587 773928439 238864841 707202954 828412343 657799544 562512839 698676506 201682485 328402100 4068566 355339274 463663860 117713244 922886542 170718963 703174170 743329065 737915862 871608561 421820301 790960348 909605848 946058408 790559226 395983168 926188300 982741322 110001117 118671402 538907434 51518349 410801778 123359600 859584313 546394798 259549895 485805560 818023555 992451954 120860329 39445674 590370716 536598826 18726320 310705530 966577509 434124970 720390716 377752160 789895165 234735957 487479416 897461857 441940434 245083656 601754961 18105986 232304795 554014266 372116352 728782045 48647758 486946526 645677192 68732806 205038644 889333107 64282540 192496545 930142171 158878973 791447299 138178648 428959251 692522250 86640223 366408160 639475705 913114804 847565925 601821809 151441904 302010777 830609272 734999885 73949353 894108379 685907148 884726718 337837076 226555435 65152346 417167895 670743664 679334590 199398112 739527859 853933374 336769623 768053992 511610611 748822094 408393780 103914432 562534465 681440946 799557163 530068355 781076752 525477318 196817807 883937550 848135643 264867377 66897980 769021708 643616290 618188507 624760732 287497964 478246768 207238651 884333469 516201961 278422618 244909068 385807280 741902335 793770360 809463509 840243163 836502775 105745514 605965918 563733408 723443043 502776032 697019905 251667213 816022426 304394631 559499090 327753144 607118526 728211227 330724156 268391874 623027126 389555039 633080554 817822926 481454131 897021469 715975374 810296077 290668458 460207655 875430822 76464181 278296673 58802260 615293305 29531264 801441883 173438604 873520781 253393338 766473835 613372089 571278969 381075503 475839784 322866631 778514714 482040242 849569779 234571444 795306391 948044968 33065460 775086469 793258836 345369331 514326812 892773440 933302543 662636287 522968355 944041979 404426175 518454983 989727367 457362892 639705510 492787398 730626450 168951257 508285271 6556421 510043990 159483464 259281054 966957584 775155369 285389390 73829281 858366462 272924973 210064681 556739514 151952751 334225991 40998165 316614301 491232389 166559786 108076125 776830778 130834930 669350092 882887767 817935569 248588267 187842291 378112091 811641826 72979245 554690848 788400843 188776252 264556033 149676710 729283088 906279666 754946867 180790943 339704224 432634208 522116378 382085865 630403315 396128301 422392469 161314094 96479882 263224131 494892553 901749724 280698610 694205396 66807908 447845166 97516989 989427553 555421727 935740963 60865666 284791467 399310389 405248897 864276455 8891582 930172205 570208475 521147539 280507377 857373718 563422089 464506426 1818334 359729543 261270443 541676182 111343979 658588828 945113384 770984043 582459331 388604 489236659 434662017 730750299 37282009 552810178 503588010 236521965 263407587 101852822 646544065 674075263 600636508 902667063 477213098 746444383 564989194 281422452 265085004 871564828 993485626 693706217 167388317 676323480 825188290 838505457 575208595 28625399 766246404 27821240 175778098 704487073 971109091 233817391 182225799 600124493 954498508 933528074 81342368 221501173 975305145 70378190 965560731 99673568 70095909 515252928 170194582 66307227 840162839 158749682 139025342 86100468 767943967 323207227 767578951 705575696 85407824 559297085 403594086 415651405 181439820 17718365 244128099 893776986 227306294 99666894 166228613 850494763 521022401 639530377 461462302 760205051 152799773 765040458 825766795 503963470 848913421 604781727 593910059 878437362 574997205 159869396 812877674 854793722 351235650 222256387 902854841 652742339 45121966 593883914 636381076 834361072 147470069 856402583 44649340 31635824 811891581 756282642 111677436 426598005 299750197 387521467 952007078 743630458 224235410 980475021 967770900 523477320 986990743 138510674 298841065 262622951 4830147 77460635 422059980 337516202 769333033 682105535 943059829 297636914 52081756 499744478 175801243 984292450 260730239 531071458 470345727 442156643 487898165 995867005 425982060 575591597 908321962 538368289 227937207 533748218 371772570 186061075 799100599 557918799 690488895 432206682 709343055 814457846 462884193 382332103 392523625 781599368 503652430 379831281 586506745 787895775 422384859 988658745 940386808 172894495 477314409 724778180 190984041 331852723 424850907 279715209 714836565 79503441 118367905 384739389 637336015 717283828 788863920 486409053 995809009 922293984 780947337 132408119 577969628 959952292 424868401 115991766 366081212 847056403 999747125 551763221 792903876 954073673 336706474 488912277 675066158 51299240 596505907 216290236 224641595 635807710 324440307 281239994 609637429 918835681 900177303 15390093 358238830 642239722 179976537 395953644 165220930 493811584 573506292 261064039 348531218 474464366 654234289 207106890 793109578 272930250 808111450 570065071 621115994 66705389 704278858 123240311 901964732 104834686 159819612 981349190 698160887 929752422 308737018 417296530 32967822 258868191 253472271 955627408 578325016 279242591 715568657 777465665 972084014 686270124 254685438 887146604 280807026 434559702 105185120 822340770 398723215 154313773 303756354 343346492 962020662 402685775 850014266 669934172 719337508 146550304 774821993 202664935 979393048 223762636 305300850 738007692 788019678 341333191 41194116 839675592 580331849 959023054 442320985 670872025 266845234 85795046 132395050 140276932 853654906 776994136 195348673 952172896 344323596 648748988 394972521 403612993 594415069 355157228 176639739 131957958 634878180 239770894 883393236 930096666 356312100 534798477 684110810 959419948 941569707 57640733 30272381 441005492 601172100 74982074 420107954 187465781 994543566 924782251 232747766 503285491 508009386 492820089 683798355 82310146 835365188 871533304 554442578 120096054 229408972 886297929 574309389 378367797 394777725 920487370 184076064 112622691 881822618 581873450 295873460 313277425 366087020 337097057 773612919 637273814 237922374 808620196 69851547 880458966 601484419 379872380 228607971 846038903 293125506 704001205 940713363 209773321 773423282 214028898 857616506 732863394 357223554 59325150 292734447 872209449 524459886 40344787 831491533 126853951 391524087 886150951 114090878 319355481 621378214 94931470 653879534 627434156 816422163 544668170 520487828 709720635 365360848 452947162 740817264 876781261 137133957 408289422 924815877 683014387 992171226 439039094 914407778 356653826 859543427 180634162 867540257 470718496 398999096 129738406 400420698 948821808 377757373 878303996 268231097 665360869 665401051 581350826 924263017 18418614 748173156 584465772 189142305 411091685 421988663 980780612 922068510 547749753 333616687 765834883 865221928 750698051 170657851 876488121 384798860 197369304 596880459 10339779 645595683 746165149 804944219 449022406 962590793 824084151 328830826 277897009 134138083 539073814 858539142 571813042 421763171 482440310 809447360 771087691 895774907 523500373 913433141 855572797 829546604 185054201 893502464 394833685 527201658 739581812 57234259 940913319 953951863 203083936 681388379 447035409 750534007 216320797 110152533 973441205 601527574 127976529 281604993 999788096 604310911 819784813 302626860 413582759 528392029 3343210 565351079 393754661 164070118 463928838 197625930 225633344 920198875 823764686 429657469 637049539 624670078 993161998 205974690 758298563 297930658 940998622 865043764 647956379 237180826 920487202 104011430 62624239 390812742 816685185 841031552 604926125 282867723 536078951 46181448 237980425 43236822 742125330 231067794 621927036 947104802 909129087 914264059 694826961 871717864 100682359 410252062 994166796 36858290 830520715 589580461 150871432 535154317 459332625 490998868 121679070 469265678 285086764 358304723 457567733 306951253 198007235 274470889 255842037 513578246 512527238 52526431 984962389 17133651 296226287 467710985 591710416 856823023 148100154 575253443 332224621 858778648 226676084 184056683 902793588 407585943 584387946 162844143 745417340 765216184 945245112 741057342 219185762 40641106 438482107 259353943 648517960 827689413 969345691 629759800 298226075 723683572 336065099 664458733 696710415 921204047 543962238 780161927 948403104 979194829 853668538 550154786 754057367 294455785 200027719 460992223 780950392 185075884 861600048 929920744 467558173 169286052 753658195 10030195 528175265 695614441 483619148 246255026 892153959 26876693 572379015 228431344 895844637 464866384 119288115 355113587 32730295 921720139 112921413 333123471 971178351 926834488 907408256 677715355 771503819 724746713 459081580 759541757 63395481 2193523 809232731 445414429 961603050 739074258 206771043 200525933 371927580 159788622 346429028 283211112 370362834 631050950 679398152 486421651 832037883 745020318 880795839 230908275 620680904 591261384 544973502 831325853 478382776 890380727 237498634 391132845 604311437 310553707 176042857 447996736 878099285 142277224 815251051 902737926 781440866 278705086 515316326 827946416 914404178 808222212 18345088 349053686 596399626 974482263 417195933 585033627 274529463 38206813 577847663 521197418 805568968 521342535 684212076 314492212 563241470 892959687 826526168 917396438 995888988 443809308 879500984 649248558 751070255 91447054 495357148 732840746 233394185 140593388 993277664 386692285 210770632 919273355 991626785 109645532 304302480 476986696 994109383 422423949 616975308 168969741 944086469 292099290 37967413 233640515 374659024 127035348 144555969 152214501 869029482 45824921 369688247 497931118 256822236 643898436 363282341 275569894 323112245 945627655 67555419 749200602 402149197 162585105 198905081 921531235 794450373 755977114 833964257 706536731 764240903 775972585 85879744 392820269 115141695 7566403 921458317 934214978 904559209 923905790 655982209 663493268 656671554 255105138 42825246 313167073 98134869 806062341 364842039 830713966 927433713 177028893 127833816 686373897 656171566 841319468 573064294 16786955 295452654 397284273 332084350 809760590 55458009 840691754 28711699 175997501 565769052 862385188 105545554 113198528 564266933 839471406 386733243 122574420 978918621 342012135 943157778 889810676 538025890 763346924 143079013 941211687 931825043 290740970 124632069 516713720 855054852 649610131 454817681 457978371 388564764 569532321 577431784 143399009 830461633 633842135 281236031 570301629 953599393 622531838 620533507 909152833 733814836 472277224 379965170 787252644 498730941 850059123 442080019 41365030 610549059 934639483 76017328 709530254 803530902 344843760 605467741 91058729 20227921 814788288 545111286 382156234 779036623 959033321 810008225 43454676 397294141 144364651 959436744 81458221 777880455 757214545 939145761 149837632 428749928 297946282 821681576 752890118 389463138 276989079 982109088 587314427 170347194 240854581 409807255 874273830 680716673 863929006 877392992 991914009 45333647 214542902 346859800 408116196 246154886 238767880 527072293 389484329 30356428 914353255 243826222 553432847 244314002 512438171 202949931 335740225 486231250 999852791 412449625 332521719 202848074 993055955 50384954 668525552 16506500 621635732 744518042 171459953 831759054 817767844 767620753 738407241 145929795 36587126 756314745 798977230 150869440 412950403 162559475 141426654 859547120 379519053 288860144 818649569 141943364 501313630 894111907 770335427 234382833 913036360 264898694 122411000 746369273 78502057 74729824 338034052 425589027 195331358 687398717 450536683 384784128 438184788 405239151 458900538 797933803 31271935 965969300 490967305 627096065 596111316 493242000 164216693 912508202 573292698 323033999 398536482 936061465 476011032 802385671 804824643 794995779 186169125 844282801 130870925 830389738 193637526 497451411 537795642 534034710 276140113 453149945 406560534 884599449 713231932 252085112 910052204 507010824 997408590 195744492 234913555 50179012 243183230 168405624 656159848 503320569 354584016 634500491 918410069 740614547 740325196 274751703 237755972 54492746 264633865 647833431 676001071 926491297 155108124 623200595 618057360 501179615 655829163 545536339 615760497 342806548 730732764 715752751 815565662 478545689 866176231 686272256 475284847 189029774 591707648 644453934 662896961 655576283 311954542 272263779 924625145 998032176 71371899 133317779 649254215 236877446 331776372 465009146 664251491 302693276 744484539 191443740 155327751 83577597 80033965 886102729 579252605 654915061 534320054 408537872 107647633 605176735 157705543 478283346 171994778 63566810 160393948 596206129 433475703 769472082 421643510 771474583 200043148 739066739 762139167 827315899 522243018 673741687 93595114 464788505 946427047 473571164 276730355 462316405 732070431 125856236 338056920 686818781 386815160 490787000 386526534 81020833 195229061 318762264 274981617 168781664 759010071 726840109 391396238 710796031 476935823 784559324 273202148 603339945 63550097 666663641 469993660 296776145 974689870 868620699 198905320 698166325 137984123 664200289 458767683 594163419 332558422 115724851 639751084 710462731 261046949 41363170 493155344 182622556 253625016 456172040 870049379 798886058 287615331 791971331 231100059 899787033 698460167 429859581 415983037 594906900 322773894 984647140 774738643 477349458 851589459 365528946 952613358 855834319 543881310 751680297 986296619 213885899 553721391 395545165 768583593 721150167 172940738 58850545 107589779 263379653 716039340 952472811 6248988 459374256 202139648 465562846 529265281 121422593 804535135 564358448 665227519 162951775 733270507 991072021 544752355 434228929 528623958 423451008 790107772 767664739 999964372 48766005 543066154 37615305 73302566 576634042 815245132 5040062 871422096 214471523 96382799 494449240 151033824 205388866 997751457 969416692 365729647 243343934 400779708 384520501 989872406 746808314 948998694 438177540 304067137 696914152 31640937 794669981 282544347 505825346 216829973 924169588 357625435 943780358 968314564 51195986 87002302 789998078 1101083 372521538 184373647 57310904 373179073 741159067 433458391 330070671 200005227 581536501 65034285 715508896 586525394 659327028 422135217 537058264 71648697 717248904 445311750 619492323 861575400 474858852 594387041 44526136 502585652 443289218 13651313 686370589 616129399 829247721 457835129 642369174 132515728 965468389 266319676 872508788 691488108 951844873 813839882 313560144 187921918 482599473 935674554 720630410 152895041 672303232 679350186 626552649 204913203 676480617 133110974 150761599 887697889 339616409 431251558 9800164 922727004 82370060 415970969 786061817 871463104 906680588 625716179 386486018 123579183 433269795 25979933 370747412 491684306 473147171 758812672 966173188 909073885 855499817 578838426 60619382 413354119 87226523 963498884 177937617 169898004 887137317 18015717 182916417 340239569 420672440 108438381 473291205 464514572 755723924 264778833 287644439 461291299 957052221 872535373 846116291 392304759 78734973 169984170 395813656 383130734 717246568 78634296 480892462 420801153 350911327 234578763 137006312 639120422 217749248 670484415 336386283 795618784 334633277 569658108 693942440 82079802 717074757 702894068 628093529 862204103 56087193 816437528 72086266 249026335 945936888 664672105 96706904 200474084 141690482 695816042 354650880 900800964 696193628 770628654 612820813 451349103 270715473 539113547 912047710 849058717 392269363 771541722 589406235 314579477 945882672 565176455 823336243 715449500 101926847 913223803 722677792 748737801 32502424 345810801 940000291 575801651 126400961 458914980 51756097 481875453 938859655 496223453 313898575 966314579 862100861 354922343 516084705 79735845 498019710 767857435 289823064 371504493 953037491 762256214 308290782 899055921 939793282 14819071 770081123 729036406 733819812 723533698 990566301 380181843 981137684 498367961 761926414 297131998 614487831 931384705 822001920 741957436 135409463 265240444 271163265 7309976 399225929 946846046 516234855 856698402 642308969 663249980 133693526 603145238 582750973 57799091 497790903 777388981 703191985 998057192 476727734 35842121 172678007 985932682 153992527 323125284 253294220 644062930 12803137 522212770 474184313 606597244 632293907 565492774 984246019 278566862 760152343 346177303 924345665 535431320 97780066 3079401 417805969 8286766 678412251 421988375 854431637 398438510 546674466 560272928 530295611 891687619 397477038 227853973 752914358 140727060 373777333 914895361 937771907 840461533 453169716 229351681 392321639 604906010 159693305 126367543 18789994 371892817 723930001 238978126 489628903 103126416 603397971 251487992 998617972 962941808 679250531 274967537 674624248 155283980 228682660 56324343 561013923 295436557 571238092 125952471 737552608 221038239 672535375 188952420 256686196 653925494 593109871 998355574 604760928 232401111 222273844 675044080 921370609 990638467 117925744 677256382 802417081 746399435 773126840 844616400 828250773 538282627 529759854 13026338 716669866 647193867 372636090 470953653 798818405 547498054 331584140 544064661 610929528 82478760 615191199 142298320 28800482 844341794 711216750 23977093 840654311 227907892 917151813 249307602 477210640 267694567 204418866 474272487 428167222 594496708 45561360 116578544 654180976 83523046 995694718 985637164 63974440 875898857 132751333 808856029 549488901 773654771 659982962 467282761 654932991 188736947 342321187 544266948 924637774 206507614 501418417 128474026 347159163 751788469 766666667 250332767 941489488 775801338 236000093 46613320 150937824 139153918 153396702 443024858 367496074 259694618 251434261 288075664 530577649 173409063 849779364 472672491 469108481 731541390 873777404 118516340 511064302 33852 709824090 192769475 351928887 63827370 771368377 835658859 546263451 276214483 168835042 64826643 263575595 491697214 517734504 392859745 275747896 756226810 146226337 930047501 716892256 86507934 781723822 877027786 426163848 454769479 250794103 409409123 92301018 889004186 299990188 876288666 95326413 498385608 632912327 392585289 288608283 430272135 658117381 653705538 748850632 589031699 863218544 490464877 355560736 100155699 263579865 673351858 598311101 330988599 67426521 693907463 169402739 835570931 959829453 653945439 206243179 628358343 450148831 125188803 251127569 838098070 104009728 439917624 761383959 827344852 425852647 763265239 548201594 234716530 416882197 387195058 678970241 848838899 51765458 696684787 834124468 379362649 347012910 237945532 568464108 663156274 314716930 74484297 373111104 977834137 440685294 274254796 908437530 377087014 930231643 222422154 642487842 35683332 924231032 418587088 15381325 736809952 144719421 885241324 984610265 562463984 177562986 232253242 361746759 917577459 461525641 303320862 770549093 331996462 17629672 148538113 109270344 412762479 98899362 330206547 269164108 927953166 675783319 749231248 71134486 339740135 130231149 937329213 337394833 605512547 518747029 235318239 709228784 431874414 748504134 648575500 96149168 527645054 782601093 478460765 235459481 192326549 89803541 688198517 702831539 513365813 380637064 724456956 851863635 253010029 783330102 402272166 233910549 670272212 27922755 875268399 978740959 751470216 250035346 443014230 257998043 519018800 180956373 266811622 674080127 448789755 293012869 819503539 719962503 38399900 264211170 311417238 288961271 631493974 905896693 26605682 954544667 961532395 665998475 146325552 893061768 574784426 432149569 401358275 119498776 902088810 777505650 385636389 113032179 964675210 5928778 828953432 118011778 18350577 245549498 658814822 806052219 294706953 389336697 580216164 957523162 7039437 892234245 327869544 265023971 676102329 772218024 662151321 538495264 984603088 506967923 791456797 699710571 683810216 931608892 151921191 449355226 312836690 635301289 410764275 677690580 810207853 576083995 585177026 887687942 945128479 345335492 503353823 978100581 670439958 6997408 32138141 258025769 813616269 869515629 446729811 298200795 615517243 421419696 170337894 413207874 802529641 196297918 475855425 357703288 552477927 226762927 736145749 285825239 414926602 59391072 429040922 138258435 917295792 197477757 920407061 806546918 946221630 827737203 574534865 874454457 892061350 867027836 748647134 793115381 731219037 332443542 223246295 847037022 837458525 495007119 782759519 868950786 732415792 849056496 971605790 446198580 176668647 763371284 990930888 805590928 32924435 278301727 46784537 707512828 207305682 568762357 285403345 246365349 80902350 188474694 568153275 126663418 355912503 421974156 418170791 72975548 643840445 615173382 422258546 270442222 265143713 770859966 403359998 513972444 262357930 227681413 288925492 616252187 99510054 814082289 251909126 220651654 855994091 696553825 569991538 405712194 141360727 127494656 703151732 94808509 166440529 882175420 175258141 513796009 376289862 117308753 634014328 719072001 945001773 210115133 661093286 513754378 979088005 661000647 286928071 238411605 35794770 472756223 802801410 734395057 465702182 240908478 556971150 779757626 675791124 699649193 223610274 665939031 363847867 285188641 151504771 929954739 775122755 652391000 882456950 289518658 22243926 245790283 351563221 598760002 585233198 30919605 243141874 852930868 139628425 639185441 698629686 692826856 433942189 709918685 293683977 12035696 497959015 431546115 494839260 51254056 438461967 748970098 753415979 213239222 90740608 683456212 341711991 760653573 1962532 3557274 15354187 574213960 95083495 666256377 85163575 130723071 889357889 236511218 849845208 628814315 951624495 792012622 802498513 271420441 153090102 239791264 957518792 879678175 479031656 281771066 885822069 355668437 674457177 906594115 546755725 981501411 663615268 468223646 353232341 152848437 39603575 482809342 628346902 29747516 645487480 877016794 566282275 269837241 915508962 279828341 915116758 855756206 738500085 750857171 540001299 279918439 724659825 616445127 483830209 754460791 188986024 100744936 401429717 345028284 119377011 99786646 221485638 362610524 658688555 36390909 331811354 520705473 35520953 380012552 868637786 73842332 562032011 106434930 901223447 620690161 841259926 93719738 987715180 861253885 304071770 826000938 349822332 829303632 463402461 295597779 465542512 326564798 378631852 24564617 634993021 959105635 532761823 605764593 718364376 891005601 918063889 580295534 563597769 51978792 739226988 919199286 357436566 391814121 365812892 636718142 217238164 931926819 933664475 612127814 454242589 477596249 266912993 111524057 445331087 433962071 657843960 872745282 719310170 615076145 793722351 200853662 469994223 523254082 810343449 148370125 721284292 965276210 669932120 564124535 673664352 278424556 56973584 279174409 11352909 23528866 769733936 592887743 482478104 341436115 204747055 391038615 604156258 360926272 392943625 713713240 914305995 535401720 967712836 212840598 562784251 634333520 181078257 862774440 102484390 494658017 473223334 569616046 87427720 452267153 682447487 888438929 789615457 312702860 351270181 96488703 744172280 205637705 904283075 347022450 300961062 822494847 342378770 183004715 759819714 471209780 992171598 28909870 26528175 479451065 303735872 478430544 276535253 811653786 642399796 373801512 498905129 829529787 648456450 987849749 777866917 788614204 210971654 447926081 941065289 908423050 145329193 473993882 471130655 933989979 486956247 627802842 951557692 144531110 473334534 358025091 492144827 854703030 335635511 642306009 654079675 471131412 227191151 888432622 761258857 942003090 379181112 151990682 398305011 999606355 809513905 619928961 359135641 863246771 651506030 582472709 792091801 985368677 540075678 633559130 55949630 781767257 926291181 544815480 84428253 981505484 226723725 267185438 761806028 429432900 27158080 474125014 779007344 481327501 868867658 75884272 199768883 625923257 607218046 163094403 569203847 1733413 966862124 909259633 253516261 250591094 200500025 817799006 932261073 52293787 510652677 166872766 258758868 939126467 92388992 957532363 361107074 363192943 47818019 772879232 745905269 642022239 598032616 221037739 772915788 161608609 607016283 978387159 412591543 724646536 561844867 465778783 464121187 561143732 96888829 386248291 588299275 234665481 496232929 697358284 727460210 479976108 653043162 667070536 712370020 589367835 390821911 19021649 498627250 52924173 266619976 154180903 685725239 250157445 549164210 369788371 593981907 891604435 588294425 524581411 471756659 707643782 911998408 536032945 474315271 691811968 455111835 818315485 928438409 987169252 958935018 49640909 740814588 714018077 801149859 558308726 678279533 372468446 743150124 76734860 538703594 909376550 37776768 536763538 324417168 230698296 427236892 369250511 68673152 451579551 863984134 324519763 266387175 788052017 164357070 570139381 654839538 910896138 2092426 749773657 86646239 816636302 134808534 711620069 65888753 31155305 84066521 217910982 156384623 29723023 280890179 75512317 936159148 772909628 535678278 745819712 808093700 592271607 822552999 204748831 897729753 662756488 493958822 86781671 214131858 641124105 360940822 890423727 130799271 308573903 19142985 210761818 263102094 565557125 222043168 757779086 686113482 577326352 678725121 218132159 28188647 744647852 645719000 165796640 714516341 379014096 214058015 209309364 70177038 32096578 250268115 539101764 626346326 448867344 689813879 688786783 360337144 476391563 900228124 849322844 569349028 571451728 453787226 869033568 586187543 146080839 906242892 211506766 786011151 376152983 962683288 96366552 206568280 251913911 114595952 441388408 994614982 683951457 362954889 839232109 771655730 281273500 786366750 658731965 592914558 985958323 528968952 743652156 857158295 119752507 213667684 771729537 469344875 533881871 803940667 67616747 135589879 290850389 787912662 13802403 873514043 318808184 374338082 575823512 500580930 396396588 598355337 314450820 752188449 407301484 947085569 684477929 669482478 177699713 867556874 303172365 597593297 493693938 170101161 820248831 192624109 395396503 230069613 32017303 990954872 341189515 425094252 186596729 428810670 888634416 297451077 276403979 131240910 998652469 185774107 157991804 794470693 940497294 376964000 572952518 34945027 540483703 362876426 183888299 204005061 14370931 358399255 940788910 230103241 415287631 674813963 630119717 271733116 573656096 210898101 616445730 145007953 8789571 232500333 880846220 645226686 192542297 710446352 519853319 996195148 944235857 332851204 162208004 473171585 955374429 469015355 528488637 620728046 995984125 887858724 967075375 496462641 872619504 561197251 29440293 800393963 460977737 64289437 438568495 772935106 918625109 433695678 257424802 455672943 569463477 121060800 642765988 935741865 397902668 245550783 135732248 873792307 593752135 747861089 89162675 639590100 117896216 697486547 200253158 873620835 916693886 527191502 207786490 68084150 968290427 372617104 21953264 275686837 664441180 162045407 880675998 940016963 472885686 988211977 408998296 77504855 688828263 646424803 369626945 182555882 839315341 818567117 245675710 825124865 115850139 611730859 68408834 570234529 501661248 618153708 105246918 113783775 166355069 930361738 966456200 627589332 834349203 195048958 606581393 11071910 687479054 518920275 112066801 840055419 704542661 540281107 949067137 557539976 313944275 733199958 84204513 150922501 418786714 709169339 363678073 352405047 865568714 412181607 533404793 115379300 23694421 154195465 832114395 862536418 418978934 513092564 581847387 332019981 370584247 482204300 922475654 375901505 689648604 414611062 935574954 384261100 184384001 176152156 176848351 613692032 710012797 607334553 44740871 798801528 403879412 96843273 583831241 928335957 165984086 110691603 869092755 971812514 734136535 537545890 759936418 191993585 937614830 610264881 744243186 9294554 15051622 749005756 939961167 444335877 837806151 485297354 872444742 895693335 750547175 538155369 802534193 875759043 755270625 345547820 255584049 228547012 904049434 586902072 683709738 146430685 701767358 719174190 15526355 933257176 386457154 921522494 233164703 469703814 873763682 467045407 576438734 292509890 960708899 139160076 526264684 694039409 938630350 5351887 796703304 869781881 557468411 209878197 66493432 684907725 93054084 16820114 95669471 497002857 40584591 366487497 904168738 953909837 13396101 515142714 587892151 654524550 254701340 462884443 20092239 660971045 99486549 675344154 897965423 753004866 689610860 805062141 26748766 274610436 729132018 903054340 659560749 162989714 209535675 97978049 829233843 684937247 182672354 690090311 968977041 536177637 290386893 990020408 247661359 652277543 169109799 980252089 588591038 221622573 322875877 923297399 47596340 880686154 922908737 152892072 686021972 492929244 30762432 754653197 439093156 404665921 405510707 661475305 61405302 593666533 789836968 171071500 599337955 370479162 661466751 888169932 775119048 823522233 899044953 616542473 611749840 58803686 159705380 234496806 506171498 24363084 804835094 232872466 120818638 974933883 240902827 158469958 508404735 999022093 41115042 611264190 373580993 674647975 496686606 587249151 217562790 708595697 964574528 110019867 713803782 578845084 348369622 623792034 957812229 263440742 442762160 322723771 337820038 698132241 259843329 636102405 159078458 287306339 461083959 11177904 336446365 246668339 847539984 503307636 225798125 894848855 734694546 549964943 470414129 501148085 833348616 970892998 160277560 866215733 321575174 436682856 336741793 497381065 344754027 174987082 885087428 57638253 160975958 42843596 650991310 901386018 683165495 613738450 584591281 484101106 890592963 40399822 12387617 554951922 634087410 255663540 524120990 695163704 104302860 250214400 48462708 838541035 400397982 232949948 272431025 212275248 805204089 816516214 728319276 627758141 906325179 510108993 491596170 584506445 580663494 41466302 493254190 641049245 75268682 988012050 802119498 565930364 286905403 46676205 652710616 258776634 176744914 581322371 57008534 178207284 460781461 998253973 442127372 787302856 884767824 456096869 861311372 632274276 793665561 442509764 504666927 660771962 35375944 553729545 262930643 212231810 205686660 250549776 650956320 669236225 636127420 73928258 621687688 526481788 189106720 393177996 154829637 550399116 879402797 177927267 657584208 589298374 733998249 661733319 670289786 841352400 350122910 72133181 473299022 148347730 513715811 82600660 748042276 651515905 954663314 711080481 452801825 276710034 913914129 36469572 337542953 340523468 734809864 399511266 837497581 401435255 9860848 931971114 496046308 46336102 890103429 298359252 792478289 213201779 910639816 932808987 692721725 458979969 123329290 853243076 166024818 260683896 420462554 751047203 862696081 154502990 114867225 103821835 755822834 215228666 555300839 413610457 461748164 2390144 560345010 632295540 527818738 583036137 304011567 454850891 432141369 310844489 113018970 182056789 521427991 898294454 508154999 221429774 921141970 569623896 670111505 107578494 82490493 435673430 239401726 436154930 148440814 358787812 782946138 106534466 223075531 813741627 577968267 482665549 451694708 17233052 448115512 704999797 955976990 388429140 147763035 958282092 590968771 247733939 905879851 288390503 572243998 428863252 291832368 689327394 803463101 4093914 391143990 912767976 975398634 655548527 377230414 73261956 55419331 862112066 627480026 348392268 817402149 29902548 149941114 485446944 410380729 542671520 791047195 522985063 341800689 25656375 469658608 253901581 201173504 763664934 250733433 80808585 491442924 949854984 446244983 822727384 195030395 911856771 716741366 850307 539026495 808003133 524579405 158873237 778761611 57310954 567348247 133937574 607369861 702857029 731000631 700564695 951830034 294127374 893559001 641586633 212725732 852229139 974506868 750203054 538611570 950853411 574002115 86367547 568583422 746226966 525536713 316596653 963956879 742030293 854748115 260256205 55298293 916144964 915308406 948704231 491377865 37238875 907843214 533357010 412940649 614272014 335126590 990530540 266200576 524312676 134036981 739475997 785377406 798505830 998904933 716239056 813848730 918187559 204677768 692815358 866043605 81662397 673068712 96583716 870956406 699832911 822851405 863875912 304430481 96074759 70831180 727139832 89245688 526808595 767232451 391066188 669823570 278581171 866129172 615209187 533818883 867150116 240900077 940154337 416091453 458444979 3123521 213048819 326006774 635282355 224505932 758005585 103305969 246393724 251131284 505765051 6859957 286498930 78979042 58476660 881391761 748561663 167864654 427393868 376001438 243171477 404791861 589829529 45018559 614149804 796181559 372756538 274711706 595658699 391809345 802946453 21659806 644650617 286812296 755375252 274059782 783797321 467913100 455182260 988346320 684241107 3350796 963834352 789940421 718338748 592776215 271682000 657319028 426244273 24113407 41673311 266494520 396602974 198138466 36482101 459949617 722357121 61260324 239226993 598721604 966317787 280625779 614368184 710958884 835851062 22617790 725460792 79386443 181149797 120906440 673286058 981063668 102813250 751566225 893526600 4526635 564295600 105101925 314467293 655785919 415170458 505182683 639352754 950290505 696969712 779344077 455381155 298955816 920624813 862307678 419133449 95884164 488115922 827642367 912702668 75802449 881687405 258437216 82078812 5146690 301333133 391388801 702570927 294169565 759326794 910174625 922427456 699799396 6224847 399575888 928330521 271972076 152769085 780510307 148927430 627920459 968206794 991179762 777280863 728898082 731494576 590797926 800047489 748780760 315116595 275780713 673926482 243798433 204045723 24226286 487780992 250763121 590176059 967353140 974447685 557201929 891381612 760891838 308953689 815327474 516501907 933863768 874195974 562009726 557218071 340415254 645547803 533678787 14966893 437194839 81639660 859448483 4260367 225859514 248418651 709323971 767678845 921911344 429233096 105937044 328888898 492146666 585887782 192245586 284409074 58986343 877880811 807138554 621953573 758877289 772373779 851792727 967671168 389622015 192149284 501316852 697587883 811838073 461697585 729112111 275374168 135462518 583229386 613467685 423452483 304143322 614945298 983039425 763299631 330542035 421720239 801488558 997210593 625106643 56320458 693931112 327134257 23795092 427816736 112359729 300678902 297125920 248400621 57221902 930114583 803339455 490411253 961519825 683018102 415580935 897731463 880557841 947995661 857776339 437987962 184655150 642520273 605267784 402182701 517387859 906680777 947646418 462703749 735596140 8403706 436324646 195090417 430148916 858166648 1656895 623313513 353266476 900252769 752270691 782476903 25409179 981770708 478145821 543722994 802742417 841455098 881464129 909549980 228602341 324908041 635427306 266223481 122172475 982461240 570029184 337872934 823669497 624097738 763581615 707578317 333533775 421592586 326333287 350070552 48104500 459116362 929810407 864684607 167704939 884383460 690053298 982868993 714329210 746368314 233032343 544043170 948169908 690169017 326794663 670281458 206838574 409187534 657321537 150386505 513795532 503126263 150652935 474593922 564902450 711733684 846463719 774228229 669321940 667474323 994854931 19003838 988213736 493099555 216183050 281502502 438123630 256503040 368506510 183312444 254554929 633411787 855505837 967405954 335632828 383851564 219724474 38923786 373047660 816823003 335565906 939241064 911756898 502665871 432973912 742001084 419973762 808698376 845417211 667743916 608962687 28936213 406904236 724578918 446916816 108461189 314189866 990961567 930599095 688931122 125419383 419763094 24022843 104485635 969982689 25575698 424212011 475137755 339059450 220555106 734495520 115807920 694991521 943138138 799433853 641287806 890727928 15463000 710681703 307225925 153936237 347174727 50078158 276554255 93640882 115451279 116559213 341377262 357784519 824783913 940774083 387816449 382850541 967843987 561892121 74589794 581708464 982134228 524874365 563661121 338715366 325353850 612837062 246572752 537268139 549723291 482814107 728139079 917353827 460082389 664789087 104091626 83521722 603818318 463160643 265815042 19943333 779828663 440779326 729713123 346393695 658110275 341710612 876387301 312104046 663384497 400175947 549345642 614652316 35289158 646615347 35487201 124504831 289131731 957362402 300381111 109712882 788429997 807580990 354545000 78159643 988308914 455256299 403243127 705580900 605997896 373457755 422871148 35004676 144647518 660788164 851566557 307525236 176457069 231066154 26824547 407976317 59927917 16764497 204075164 614207525 211845353 897622732 751332665 130270148 462479852 719382514 652326374 432436215 597612047 933087463 513072480 704502175 444291950 101430924 574783853 226909165 636646322 181507736 123617233 658565969 342498056 243713662 203699040 474790022 644798758 838241413 214413558 796118934 626640971 619741868 613066871 906033866 842073147 371470285 258441672 15244727 910353734 587591288 378751455 624249911 487565634 279286802 39736754 14285680 802058380 717388739 568627019 621594318 79162127 674263417 568422572 202787081 348796723 378109678 797318380 747870999 242483952 843718818 371392806 975991613 267685065 488498909 798528889 770313740 484693183 108090032 237445649 278836053 332606304 238934256 529176095 301228338 138161348 167264578 722695903 727229711 38328716 306444045 623735952 293934223 54690264 986332799 430567296 39960748 947240029 390249874 136813314 711764129 485517132 982824196 957336684 876940528 320055655 258493795 807542818 718086251 817835248 170110969 683226257 739841310 673334971 248701919 813964071 402172780 732253977 708929784 65919328 975372536 111661802 47767276 489858497 832970668 37963924 620584489 931932367 790660797 380709129 602387690 697157150 876827048 130321081 556097581 136521036 644565809 102192295 933639867 973581046 806208612 86793045 414573604 4087242 838806422 319812567 208843713 607777656 156906339 241777852 18167731 804935101 907175854 335714602 68919774 71377240 115598501 754907586 181317368 990992149 423637434 784915892 658671990 950844100 218313901 173902773 174647448 445807171 4085887 292644613 808315241 652241523 694657148 35034218 546405814 910931005 189544251 282455344 395814680 375147922 402256789 123020338 838434289 83576433 848425392 148391624 644755047 783723993 237956091 348362207 571722604 29144274 465053733 998088414 551225782 336698739 145289261 120366787 300647624 103674836 254925655 328939270 260717546 973283607 249811759 339904686 423719723 66313830 40274570 206084943 943116387 455783413 110160004 632843254 245314610 768771580 928311169 3624011 851574530 498841536 552257068 624263532 918972932 388062344 625050746 895201036 428429868 975275691 180868266 950067809 569688383 878176380 440035900 594326311 978259648 905975141 774713599 596978341 339358468 984785608 983923206 547771051 966523426 778463520 954927279 692662412 553402619 376005859 587128733 921485866 242371637 444218257 176064955 279744747 971754817 244479673 590893374 90093240 650240343 539140328 201377954 886567694 993510521 103396030 65096110 538248166 456576108 101506521 28440172 103449290 986655684 611417060 532853809 217191879 407899351 247444884 87495319 634048115 679322311 46348704 923961476 290482413 471748731 906103242 299372324 119188696 474587041 80881632 701737196 676752487 875757493 707058864 436284569 404951885 833127159 190678294 929183789 363529673 425876332 98155767 409048564 821393314 781033447 491499577 355836807 466153765 429783296 356938704 577051322 264549419 728920087 100126902 105853112 737353487 272772693 337648877 705038572 578804150 946179495 579201152 959920137 551493780 609061833 534722688 747406092 157567387 789507384 803868171 856027705 945889610 21226049 83249468 762955291 634490280 34869743 710048836 413477001 799199043 177865501 815513172 974400413 873616944 698936172 94404772 412103867 978450704 641700419 484241782 883949457 817035783 22738385 558816025 538797843 157255106 367236113 990278872 238087802 496958586 86693312 8675860 111599185 430752492 587952488 948584749 965894492 828917601 698459 571873418 86728630 551589026 709156271 282313120 239858617 645227784 784911684 176587242 896502024 410255731 453857988 650426347 885954448 996893767 976890015 864219179 173087366 452063857 437083917 482948155 314269030 297051242 955057418 781779896 617733365 244025649 703070055 962899267 104086589 439563593 24988588 948131206 786323 51196352 50935092 141205559 471426450 607456048 813499938 932792074 870924323 912555703 368193628 974978759 257282414 396564727 252018323 770320946 595287273 25121056 389065021 18616100 531654734 556541419 293191067 766964085 518576293 597645460 959597240 967998466 435135798 43344864 972170848 940447676 654043803 875913505 780344369 395780244 220771752 83374379 290938500 710439554 24947337 155425627 823983496 299815562 898391462 372054167 379203625 890320309 537931446 675403344 478175521 261146135 417898931 402961276 608541681 564300233 254388195 798105 266380254 268484074 18428111 963827114 476058363 344964012 871083343 114961217 653959455 114770234 500688508 99778931 933001964 146937555 973599933 883884511 275884233 82316726 593444540 497923496 842059749 893431089 549061233 498508416 248261435 745210256 899435028 223625118 853145224 549549876 208443690 496992956 967160152 389464445 585650562 804220196 257193976 927478227 134273583 168029858 455855235 347253418 352364170 360860812 94300631 581762173 304672061 716283587 218990236 695387853 547584814 960198826 285359174 178657059 83970200 982889011 108868105 857148949 733794801 330157776 481755111 58793018 570839808 212672640 635702183 388398903 902716371 442890958 763248093 506666675 93998525 506144195 578974427 786218849 11619414 783460598 839966151 187127807 36088969 467239048 334395270 541627976 34790271 44795933 437997002 645857806 642138026 578179044 831987210 151468577 606826444 769753491 169195657 551617881 393336293 445430631 436222282 9048470 969009217 715214120 123615011 558837451 400698997 117978917 931321000 526761952 556628574 883817779 302647610 326728153 864177443 146977711 655842308 800846513 627863083 474076800 581938420 289958003 658017835 601282583 850508226 449193012 784046626 609764964 277318383 793624334 96437843 883009005 221015235 795024674 40658251 131574453 23906895 133333146 867413725 384315206 878304873 296722602 224789796 470718909 366107317 89559179 490259846 913368245 582730391 472815742 364803507 523485778 726467138 668627152 957657240 695358793 51439023 322179793 578760053 68649416 62874011 799693276 503146190 602025108 616383120 664968788 708040049 836728303 288761310 676317346 888742767 264033960 529761951 545379898 140011300 422998809 641390256 507954836 451055161 561785370 819580863 930742836 189681815 166186518 594764853 688408484 800116080 245392379 307566158 125194359 692762180 70805053 574735115 628400197 873599447 95049690 633995569 483480496 58871602 598053210 454723666 283940197 34542255 224924621 960696776 26916116 19445987 973861317 119406514 158574712 981867958 608808547 386031609 628384853 907242326 603663435 750845258 102524787 124092214 535567023 618363427 920417701 174090001 816821312 30474174 912206533 291650026 110552643 335589671 939683252 348659475 435297144 936076844 939202910 540303128 14475057 758624872 415781302 581090524 85227586 179001402 364489397 868964995 908615691 857914824 724936028 595423860 347093872 154979846 488039608 678830185 277540323 312039850 216059610 549504089 649851991 435188278 644960732 79443340 650742346 353951984 354374368 101415310 270177988 585673195 463511825 428402994 928443220 325655802 860918433 278871444 735069454 208524485 723865545 493871387 567975827 579095981 805080524 939903086 289682438 38460134 31986167 241508230 816018967 848685416 373234328 281795743 443870972 226550005 59777548 582897978 208639090 587744526 639930804 989212966 964072898 11394573 953613052 600469879 329475257 634943490 561964115 553237894 251706541 412942292 43578423 692659708 515328378 19156007 688886822 214574021 408093836 753371755 537767342 547189520 208691660 829512154 84251489 839004256 62105266 316635252 87814102 675775348 350711101 752612866 450359986 825337434 388846320 226475282 274879390 337686120 380856799 511681023 703413070 954337591 19004826 867448296 95080573 33455023 892118597 235627445 914751720 339468025 651905410 343970581 923848799 56979848 59128193 130499456 919309745 205951006 563296248 862616378 256350137 386378939 539982628 36848203 447604312 713202092 674534607 276611455 444905338 203007109 220455749 180442993 881075731 832801059 581715546 763879809 850513179 663673514 333553774 184362199 460691091 128818823 989715304 547087202 458229894 328170349 618687926 743816413 834913800 112237657 961744206 370967494 725448243 260918670 818086062 520828006 422353190 317895576 388627934 271110606 709816079 672245327 6010218 728174804 973865246 913034188 911369576 743613212 28579472 617653621 330699897 880156173 274598309 209164530 645395648 425880532 738617511 941176125 529927917 659295340 350553832 522691983 302789430 19815572 839233476 481615980 622344795 383448790 630875549 36187300 896459422 177819778 216185565 365901383 510299857 68512943 923080949 533885874 900593481 463668030 309567838 565365899 909252834 266038231 546305697 168883898 764261384 786332906 445416257 10384250 717628837 215335600 316557523 125688386 562674734 939115049 680185584 268344792 395522725 112458781 655509564 690190154 717343631 225176603 748695394 359673577 694878201 374648189 703611411 482262866 820036217 471335012 571463175 38703725 952471086 915627703 968482819 873426016 251308480 592857893 821458642 542246053 890843741 522109993 281801797 614485747 505880759 186198273 410423349 96152658 32005649 919998647 412770180 122494476 427585838 8674072 320712481 916732601 675258209 797499328 842008313 393465650 972353400 58603279 994741510 150067099 620511963 421829931 347348048 388550243 835397736 267303684 718456284 53691707 915404693 22463828 71419839 495235103 250238288 295310237 728355345 629596758 858452252 332873508 472105973 473740140 746373120 470795771 182195351 349001781 315732872 674405367 998712359 75321804 137083594 798138301 569616094 379349143 854471527 229086643 746075140 752935744 278394499 129549065 202372319 182394300 328021964 304098486 123499457 706967625 320433786 102528638 667344133 158410857 460802120 477313510 314403854 38072808 666854528 267802944 661556293 958539743 234611952 968901282 516253212 117629860 508168429 546564849 769678353 372973022 861998164 181739726 212996513 42126714 179030157 279528880 962623579 384750251 194171268 270606028 977299148 801391086 399903411 814705188 892688787 802088710 53903895 380922748 211441743 427124226 383251253 471271787 331461293 878619699 316814874 680367682 680900957 597119286 187030623 721009961 719606554 359089650 514653216 566276865 595397542 351137169 632158471 459945855 596878541 14335622 684570431 804796951 50137951 882565008 953184895 896763151 651806777 145621168 978910981 117621865 224070969 248611894 322520727 393147642 462602316 325761461 732045186 322083161 489899109 717020424 579248545 682325221 789240957 378655571 682894158 191503047 399387284 58466308 803658866 792452847 118788280 912319950 936079225 517618966 446185981 166636462 869357656 658270652 800969079 3888104 752335251 677556008 171159882 839165705 60303656 547604591 108156836 950292195 134959532 241383009 205689780 550301076 59703604 101120676 269886647 29355649 441515612 728147105 61959914 599595349 757511501 324928133 186432158 214787843 12015282 12582475 352527649 39006923 174772932 580929710 383693260 327642925 4521536 603443263 237911815 733819639 903358829 727384135 518396212 229083711 475121433 947968479 932114383 272183646 666615705 12262123 749355595 136872443 827635661 270513937 301383978 138055680 532031512 447970497 94542075 513773732 226458991 6468146 416798543 778874208 227264576 327265382 218174397 508750076 327743886 10225703 856205032 497367169 5580256 774622466 195906430 315669573 516857410 676312145 746522926 730425061 539507020 919695412 49479092 289700928 494478875 766469267 659511251 563096712 157089109 558778910 978847312 292794673 997002792 881188175 446634755 612499445 245997389 185606499 427476421 624819673 944432639 191291749 821504884 393923113 340296455 575848740 6810368 771632504 217169838 858572344 108155992 389510822 941075152 641835778 58529656 377863124 978844106 446537131 932619106 517479790 350404482 429445922 754959135 859814186 543857509 414629407 184437442 698958598 817214571 200517154 945622629 553412675 97890830 548636278 202442536 290581613 734947162 725245736 239888442 890051673 79548891 781627410 651603917 401378596 196487846 694790101 340008470 951753523 265396570 308111575 751995994 535851312 703473950 661729354 370917351 172639506 375950752 764555556 696172808 24628499 35108886 956427561 207455260 90145974 26032704 707677148 718936710 734918092 735816032 609139092 926908846 174718311 768106825 868957794 721718279 837048032 874037069 978965293 916865546 757841118 124663629 551466648 336245565 314783311 139868844 795023382 900955941 980993380 739636063 597465310 720120918 795991196 935267540 789405939 273899374 941155259 285822736 109652505 193505293 647764681 100974487 997842659 69566937 711784735 352048757 975816614 67655050 870936152 76372290 63761801 817022425 887519574 187695645 673216367 212577412 327489354 979419309 329089286 85485404 41775780 93628189 793209293 481691439 977394210 408359716 669318145 764069080 639355337 356112642 865227689 525346872 883080163 865084540 561301396 791996732 772496900 762800610 774778465 191891671 69726733 559664392 32075624 179054079 854542108 912272974 735393241 6500534 36625570 366387098 84198300 524274445 571785040 899725658 553647216 644157455 981215780 91848578 422762707 669882075 728822627 470674581 985028877 494478225 80393625 794066068 259979308 606874202 794091671 274701328 546215692 949641322 357652605 242984737 933697871 338557181 92446895 318916705 267875926 724697171 317974228 617185274 373605463 485792437 364450793 164910745 8736072 732719480 148385572 662730866 945730027 317404661 712068875 652191814 526710981 826194063 842960490 377597020 402235176 357933487 869824855 964256128 847383086 677949641 155621931 542602248 273090998 562930516 503547531 757025492 925557609 906579925 992931943 443342923 982865845 973861590 128963311 954561367 483080917 74963433 126125983 871728755 234617796 271844520 332065087 105987738 924020050 51556791 441350361 723972180 15009547 37728189 802171073 530366127 752123461 499522668 335337364 366743104 201578789 877420930 193467191 799667241 241917841 894227904 273281490 652050698 253704760 663528944 849253087 363930134 901952917 236087779 808514582 104502275 679343333 627620724 720472705 513451533 762959668 617045382 911149924 445036796 718318670 196565251 594089817 192885791 439499217 287017435 660033850 171489865 515491350 760739851 972814637 592738010 468185421 33032853 692582300 269709498 510788702 869189762 33629244 610127703 189507593 519170020 946546956 25976740 756596170 45911256 520886605 884034336 542007019 392219263 767713933 59639510 568384376 173344256 39707548 704772174 112923471 909630352 187827101 156498595 715800334 300721516 752180977 705451888 854467357 336637648 391274050 359967709 757505706 30342925 872801673 835783062 584424626 799296113 845565181 951410133 300974835 553317205 504371239 391295063 67452661 757391646 792331472 115674719 902889223 424038199 185457678 887891391 540589890 6355472 332512060 718025677 838445193 269878820 940148993 653343844 287954304 273617142 138445381 80992495 713759133 369064976 400028478 78397273 898308112 154607106 877679210 920986903 366945504 719228266 175071628 853107754 124125653 225772520 897607344 218734105 701738362 629903142 692691755 897339633 493123115 322063833 937299096 349058630 185243401 421766838 301694941 496587835 457445115 121767301 176746018 500494448 249651120 28077578 567797730 786567960 348958371 509396254 439517652 31721451 203505170 25107865 165829119 229057312 80728583 237680987 344781998 441584773 34299728 241092174 568179572 906992738 843817096 252690792 913496625 98368145 602558732 384544161 976258565 453377905 359884808 48247035 274281566 872031970 293383531 495012737 899380722 588385626 881149674 97336898 42533306 90823372 753389321 840013919 680760830 200062902 230950414 734486516 526885190 990957086 509656845 890376495 96453994 232234644 427514073 948993857 436876932 431474988 311627543 549396323 743197691 638951559 203679531 981499352 778633590 964655302 455973704 770606317 365443566 265925278 560597863 853295088 410571935 976839745 648823365 493410365 284990475 534106220 428040300 282433591 217069309 320549227 652433709 257333833 599549836 447547910 899483551 43734497 976223255 992200856 456587172 703774846 162487868 478013436 817593058 251201697 989328875 755301531 258842571 67461329 516193880 715562336 172248727 966048421 513825534 5584580 680604228 727918004 515046562 949390789 465971613 924980898 262272081 836091622 124976688 23802392 620633180 837967163 725968731 613843403 938037605 810435924 158973237 958984561 529527626 464846933 532086189 771723727 232947772 489078495 968525683 3229614 724643245 353617957 55324411 120355555 382865243 749548248 73137032 552205637 247364679 247748668 204534306 19190199 142199230 578085139 382464666 716981026 433343065 17113263 721603721 708419453 826755310 495730657 721960013 754324156 95403941 623939596 747881484 320213990 504953577 332495893 205087932 80342021 542924910 414437737 952896275 319922473 742805043 664149246 75259025 484632941 831455606 326655572 459093117 186594291 70040011 306804848 744460520 865840613 415565824 638969058 541290925 571217271 596879156 363722943 364283239 474024163 762262476 212855205 100838531 902052200 602040435 293931192 943766060 283230293 94412060 745014188 944572768 670317559 319627782 476877235 702581215 86454444 207123125 845332620 138617643 940477910 983490802 966005118 481174939 413070560 26969044 994825302 495128898 18015803 576085177 710183021 128006918 61523038 572933185 470294941 216413067 187716816 448526170 435781966 887161921 360999706 907265593 176255344 148103779 540587982 102560088 413755256 580484078 285028231 846599807 405467493 233082030 735274469 237530552 756760252 703910705 71560340 296367703 336079244 813106128 398783557 847482872 79033195 720012714 435447732 716949889 340057718 66451880 737532066 286827037 354740309 975479162 101063899 411106368 637294391 911503513 26487598 440403111 918982353 407173956 255595128 114011478 7320926 341359495 743590043 712048792 783164074 802377773 536275840 556124165 560671488 499192785 595995160 998877044 284220984 749379026 526892899 299461135 249227441 513656667 280641884 341613373 415920717 687301209 659131923 416849844 283624316 562856581 542359703 334920817 740690487 443852896 216930307 725145016 250648825 449514035 719705721 434093078 704054731 674674957 493052965 609827167 566010680 634311110 946745399 848816045 887734104 60276222 802968041 418665062 631175883 297477408 618295166 123876153 612186548 741747547 761427779 94859029 154027714 15518885 895387783 796605752 961236527 809956287 761464485 478701608 180673204 8578355 441851392 369173169 7812763 973572688 76620544 109966053 136367791 773047342 749659930 595643171 472758088 459864241 282988489 102539020 15286597 710243706 642497419 212574352 377049356 248621312 457680620 145017057 277623179 625490297 533690241 126904189 11543862 841655267 512004832 625686309 358224142 913803017 237057967 691569894 238957466 868302457 761902230 210990361 744142821 455730063 748592457 51251797 321761416 868306022 295231358 347110527 589121697 100690154 560757759 500574661 644065492 509981643 932592527 43352986 582079568 348273537 655835139 985658813 713444815 228313419 240973621 58928428 47724171 639673906 854584838 24868666 347372875 740068870 843127653 78651513 117571932 353857632 9549631 221290434 918611352 529033120 610618255 236068670 718412124 152072687 413409627 734939478 842617229 11510331 966255017 154874816 219695513 625485629 336305292 243067512 42737784 383039606 377386017 105474242 286092199 641277232 499366278 363693098 337019946 453320569 990384107 785309061 233026452 743012649 32599420 800127468 987635451 659202783 800568952 874481096 857799673 595689223 448100895 322675141 364362166 673313487 638050234 798200787 504852451 110563118 102317982 717513778 601796017 713824745 986270756 514262628 819443426 159704706 547545264 372365366 47203517 602032975 464505513 987091133 982136079 29116003 890892933 609463637 864069933 117343395 580679352 109503136 81990389 817721010 539473100 121417102 519850448 640330759 388165190 277939283 312396714 747293140 206020539 245671271 772489210 868452383 535082946 808326291 164193473 242591914 807103489 779082718 198412159 230208520 620284448 268429986 424410183 361159317 611045586 773609593 444517550 117076331 318318290 117294150 529191635 902365557 81283553 156574519 865156187 15504996 967639499 891193278 72332149 115579311 584261983 690581656 108339158 685061016 544399736 672256972 832968637 658864676 304810491 193097125 784607986 568677929 91235024 241338292 312768449 855847481 263957226 418420696 28951552 412393399 285927237 240331062 196487696 361307595 895715807 749778232 827995092 937627237 442640070 307628183 580392895 368380222 714697995 115425865 79501248 84228823 923179462 536728213 895266394 579740021 107549470 48775174 389313940 666109484 654668600 398538867 488642043 581232594 872750413 636579318 636937125 921887750 139378319 365216757 676737839 225053749 968495430 137496600 996079297 376883850 165597115 948652378 571507465 86956803 425819454 286907634 342290493 653772377 179265839 303723366 984332570 454308635 848056809 693025156 546890217 805235860 414331354 884015964 136369527 32640991 754874997 465814862 263600664 63774428 859737395 61605118 776208044 341249845 115066517 688974422 620605340 30707031 306148648 155715210 910310866 981589371 400231548 851150106 385634248 657435809 656118317 31361734 136219768 90325395 927074525 940379806 720858733 762961889 667605299 564290805 106882736 695078626 101321447 856311396 644193244 972181175 584447918 666548436 396074252 528393030 906739788 84657262 676538089 379644228 604130701 909024936 236023966 393111846 627956546 858167615 650855140 761282093 131406148 89392948 938257144 258657120 658263160 489148375 533512097 247679635 487048133 409995705 185040429 668013912 946049312 996615607 608588656 189782036 597295747 796098550 443515085 913313006 948779245 624508645 294683431 645586136 741740907 957570098 671484906 314203271 316765712 704553439 576138768 711882623 845518068 703317805 687795993 35282691 380863293 635280297 552318470 470025511 616833041 698817065 220507240 170543557 57624482 910142918 490008406 733457784 498243119 550509286 913285228 423534253 862902517 905990711 244088019 503848081 803067715 156123560 198668343 782468124 528363879 600712061 198684622 573077267 18815935 583212851 49273689 794717945 395500457 682492059 684336668 688649250 614984339 162973381 116689380 864563874 657363181 585265936 665414157 370838879 426602290 973385251 907262063 956938493 687997159 333338852 172192369 334858988 50294160 377118092 867273220 360882278 905839559 433093780 288664733 364112748 661111327 652858308 115317818 522777028 764422718 422922023 319346786 501685760 821232591 375927311 1664803 518717560 690021249 118340632 625582610 691991115 338436113 567533611 907051342 963617891 472756545 354463598 416842879 813613164 89766104 836487258 721012688 440495077 741890478 551114154 340351738 565762827 138008216 700538210 631769148 650329060 499477373 927196623 393765721 193341250 247078467 929102469 776040096 974839233 794997213 974574940 176847848 927691451 149278535 304883582 934239120 672777053 384709763 360976982 129840511 342466450 250181017 214648983 405104159 280683800 965708702 728804671 566259562 88966252 940328363 161507982 780387807 405223384 982409187 986808596 846201729 712941163 344465006 336227494 125099742 808889599 84728449 451629406 568415760 941547825 715061588 11558048 51068339 788178027 253768492 603632667 674987501 451330269 829996627 694023360 463460719 503775361 881593879 853203405 608986218 621278740 373083607 843222471 341498785 805714465 831375345 873169783 558740311 554211318 736173267 153700597 995247709 147657902 215310318 619911322 167436553 606308904 800991932 738769422 490564662 984402444 590878656 505430331 611818060 28623050 710953858 479805781 966382141 182615196 794861977 573581784 35798139 335188607 520720792 70554507 709906946 492980543 61808681 579919222 925203295 193480296 724172272 762303984 926731164 692447063 416176804 226366868 394399569 48155686 203183100 196980296 150300569 120815812 693150394 994033721 207236894 14037983 609385388 866723543 917087501 886846956 959566499 771689441 38422554 573218863 519116149 192877146 985239943 566654896 623320329 192998800 380243993 467629628 939561542 867507737 822655772 643342704 701424930 554322123 915837801 892231080 780796821 266617297 619741789 347965201 280795807 14945169 637395678 706584213 839481679 609178565 958971996 150420721 68839861 62125156 400074698 669834661 918835177 306279097 437979818 842472950 239988496 821424713 158638593 974906871 811757140 993748460 297659740 51623297 118528488 99204287 385677778 406628145 113382917 923637538 85314816 283266929 411226605 756357062 436954129 979237232 12941545 950614687 453414573 427494443 937154383 719961574 253377037 163215197 439495031 500324641 371735024 91843729 258797760 748330013 333862811 439938068 529083548 502365164 877195485 448442883 527621495 725743596 63072525 377905466 784305101 88892610 696403462 385877093 409452832 850789723 463847730 566779122 353896189 630909415 46329469 429162009 633937906 201317092 358035806 306511834 81739931 113851415 115941845 329623041 477877402 641021324 657836389 6086937 685703579 844518555 990365214 912818045 554625614 644418777 744783766 394893387 640065903 873382190 201943531 112178287 889747134 389947593 558544068 610061207 87023113 217352729 125025871 441218363 845260316 563273695 289026625 673735068 570066904 918465563 532297946 819588802 144683805 363371290 150270433 880639871 83429330 673755764 124900768 292370537 897203438 480055296 284486128 326194398 762195817 799406825 875340592 311738381 425721157 286025365 796246343 143914464 242988685 690810296 288005281 340313107 406351443 852781397 404508980 148242723 347309486 454792616 183433088 776179547 607382214 35244868 645838219 697693130 279236034 566234618 102647778 62206283 119104983 577883110 933089437 901350264 65228346 784611948 950994518 402998207 643405106 777082685 439610682 441342031 238481673 258182983 737669106 309730591 135730447 426272710 593820345 848314095 366038687 878209861 741701190 339843657 20455450 262757002 496227047 981343354 426236908 61873068 942859108 483280543 345098121 50159367 979785241 959384214 571087974 993126463 731211743 527870983 111244555 988420416 598002462 462265697 107671551 977733951 291848902 467453663 254131922 839898038 923041613 85512063 794723620 411701613 998182830 146223113 366099860 702393196 866024563 589027857 842285263 45923341 47300777 403150059 906459265 43949540 361729253 539449526 326752362 139293918 669903942 567761760 871596875 708202784 841563507 305285017 715591148 200646693 738237337 242406354 521134113 148051874 387778417 662046034 456306629 834865824 738782260 503347486 549698489 366582380 884887215 648045321 248964329 101658006 357006379 993109673 816870722 48072446 234559872 390581342 556010694 999273673 621092877 959516753 531685491 218193759 351874230 10136946 79973202 668794998 953485037 451746938 315434870 993678347 454172581 209073387 15844605 464326499 106943069 100635657 493519620 89288712 903375389 543641574 711978171 700024528 483156080 339836508 884329038 20176086 62674031 902677001 119746043 106411136 163081143 69055830 996941059 868421752 841532268 56769394 300209840 363353781 697823043 546330456 846795095 227371889 864135786 241815753 910489935 663828528 347190438 515702086 800148986 243775168 375761723 669635881 720473285 172391989 995498484 782737026 430176289 133874154 399740973 853356601 338081414 599714437 614635454 180278511 497803644 381246190 279686163 557665302 744509064 845703007 395509526 818781930 340868668 557491283 326991425 159210345 765202743 24720267 857197454 773615451 765735190 505556244 95665288 824446798 954472840 331359303 994308409 554680224 21069117 713902264 138646330 281703789 87911149 819808596 192225960 676776860 266711645 182888258 140338984 888583648 146672982 103025910 540475116 568505776 349674669 858610993 321695655 38703951 692746041 965539313 754470809 183317187 534827741 1315207 817650310 751723227 17397637 131965315 77347006 269087792 475445792 917864390 772599321 94421028 637097387 290854257 943981811 659839966 474525734 747548656 185121585 500056911 371138462 780759035 782281026 851491885 754432805 943377547 920146719 297254139 740411347 473190885 326432066 567267838 142861260 280964756 223500214 368551498 103196984 133716079 711749381 42148023 588582732 27227534 855072073 218855649 122828097 13115739 116925724 732151861 794813275 691829628 664281766 348061921 392263649 888372459 154907801 633274589 9758247 338265825 951269671 885025513 210214791 151762915 525688076 8374671 51820131 307783358 915605140 303073823 206099749 491407236 392904333 249266095 256553280 569259669 258781512 390262307 612997168 243922320 863745959 106314526 333359732 995335781 640303118 384942871 550774425 770610249 285343087 509499969 493297710 427224245 172013630 565564317 513562833 983905393 3134329 348110836 991765283 239443588 421512613 314614998 200823243 967921993 464683987 815984031 452568702 21989716 448847001 644366440 126295289 554014866 436186899 675981598 470851065 767258410 416965095 891553393 950028875 115769491 886592582 187609816 131638209 8397957 700796647 729555348 844274228 229902344 481483013 664970158 526624907 908666982 525965159 510726389 671497641 913003062 847169882 506238720 970997637 648276 550739896 83538482 14164504 76699360 493806046 685077170 362118756 726411341 261864112 767222128 501581173 684694088 198589343 850683172 478808411 725209810 850740127 678009168 901578289 979943212 817605168 572516156 45464346 35406054 808146006 207504119 100328766 177521874 49689507 243407960 732432082 556462095 500811562 371482625 558773265 532292860 197948554 390989402 80433721 417044554 768308970 601572500 496177305 7517162 494142455 116350375 492817790 524554779 292866281 773781842 952113990 400882783 498688381 255870751 690140498 773776515 602815224 706441565 938769167 762638237 286632236 396443170 950709994 272716551 448993132 258051668 648431970 730336100 628958103 832318102 45336055 461696420 206940436 814745180 935867443 337713145 525871569 250004189 925694632 877885664 406964547 961870872 325744626 769993244 472257385 262056406 574642613 618727868 396850122 544612007 484644244 293878032 212087924 51826405 93305930 911238074 865021694 872978349 902237835 213212824 550539140 951222760 477578268 542911195 646267310 630689099 734100166 464557300 563963306 707623239 677022045 329785762 646633772 495806498 525758649 322821864 763186806 575648736 982106814 350990609 690965324 581283159 794542421 829073842 922958334 842323224 32403315 221020842 63769696 953329288 785681933 206704411 787803858 971305678 405726506 88132206 185907001 444567515 290968787 937425244 473091587 304681319 205951512 47779553 961563945 727307760 394184727 243528511 293445924 609188800 936982769 161892610 76566017 519234539 498563790 832886272 566178889 635030339 294495458 563620950 520579093 605428584 798558825 415126887 82012673 393430472 363350433 373161695 476023860 337781905 781909207 282292657 139151199 129872315 33594718 281414428 449126837 68895235 193641102 266596770 48994805 718139894 220053707 192140817 486445156 781376738 954956927 756673661 971815891 90768351 419678491 511787841 735240857 271989454 56991258 991199233 686766991 638714712 904218624 563779754 322358561 997036013 192100693 770780274 728172600 357293763 295742379 702963411 208698704 256877274 561768092 935644307 810038114 633265919 329580239 814531261 232472824 600027838 606600425 830131618 367854879 695917426 592079004 283826151 380397676 25845560 562680230 472772966 252875774 636408315 228073158 720675412 782663292 995263595 505747659 538124832 640612628 936000766 746587008 245558918 903759997 283836662 161923781 24026766 117851123 372715868 549660026 810867074 56223293 214994432 210954891 312437750 144965291 397125241 310683623 815557321 493361168 645536551 344738186 90463258 896991183 478049331 39613046 622032473 484295369 713705102 61054905 756264250 901936752 184043758 348831070 184460473 935017912 590201560 609265028 874101273 785113123 745817486 978536270 477811943 366734514 752852772 977511397 244727286 361293558 755772277 168622457 711426150 313865222 247689499 680737350 614887576 204854143 54431361 591246737 167362875 700451463 72064726 598804127 416171072 787297484 549437717 418115013 893848036 872613255 257054460 422167391 299311022 792205426 586623508 496654026 474195815 629785303 745604273 663063415 501167652 298119810 151526114 512835540 896121154 788307146 406906256 595268701 676347237 558477711 98736481 152211088 689723768 955196980 420460994 767072255 163174835 909617832 30355950 475222325 820523151 460536933 388735462 816638671 773705681 877997924 116112752 978737776 643332482 908153646 568877855 622676930 758692605 832983504 847315785 64575351 69488090 956497123 965001484 922209353 899501821 682012800 724086614 892542971 340237205 322984019 530793427 711540820 381794323 686376071 520008700 248027692 878838580 147365587 285450261 886697049 879658751 354806645 804834848 626724030 272516028 579618868 636658 36629831 971079939 895924063 503535392 78629602 853456046 633643209 10184717 976238223 593952226 428085970 548016865 161165900 130059789 22517602 825568649 388294695 386011102 438852324 454907841 383884076 33647702 840280915 693318663 451236986 302455736 361417510 46647973 816075316 535399058 994711658 809123496 125300867 249194676 182143916 171603182 916509337 840785470 800113408 398862611 340605359 209489557 172147461 798873214 441276935 916000096 884979681 912774498 194182639 808375191 916152898 249236409 463621301 247779446 847996000 570817087 444402615 676026497 237852410 212395900 426587477 251932804 409849426 133823685 290518009 400456853 28590395 419188015 681127188 59906829 372911623 663405723 960763428 74879889 91102102 769898161 676635051 970932752 940095569 852982752 581227566 878882237 544199970 185359973 171312967 334347794 153293953 967038265 990524553 727276501 296024940 450175274 607363227 839339539 821942891 780836807 494366244 964853023 98267274 413259367 981905114 123971990 634603617 83834152 883048052 26069852 126503691 65446392 478232502 879037597 812942640 354685828 195581288 853243085 122712578 16014916 970512225 642129835 445445171 647428475 105142644 562010679 566295296 972221484 972939402 41926591 580956980 53068843 978420106 161456854 364383258 485505297 880989288 896650333 974666889 985448762 996370717 783107699 342751710 717307604 420457131 638021510 949040387 160665804 992378394 312849227 3668322 285973465 842865026 358879166 644030450 223331711 680451835 609194531 238513716 893452546 101912995 954361351 835540268 371316341 13452969 493286970 745574507 475704752 945793598 969017822 468159746 891857234 731735196 497895766 580523667 658993092 706030855 774277965 354059843 963158582 704303302 272467895 894963650 743199651 934219820 908380878 270895685 637021639 737095574 738171933 446851976 968471597 35567204 969631083 585777366 916438819 658720769 56578508 600421883 446888642 548040414 758281375 518542410 381526508 815093623 82909830 706517929 391941963 815885132 612927599 277180789 212338761 498177000 280137356 332336546 201359904 613815265 822611292 164119975 570531028 928131020 850100387 912691583 82422829 539388748 721864810 909785265 875641526 130844689 654235144 101463885 657810636 23870660 82309402 226350823 579458957 374802982 635434627 305162653 439606755 410320889 334850927 820021016 960068476 80773124 715894353 831602053 101609427 90263837 58339815 197658264 163005222 400957977 767985205 468245652 805112191 266943710 755895177 184284474 405222317 94902617 664909170 622147292 409775688 663122549 809126867 430032721 187588786 835186480 351079883 857830642 785588752 460364686 166275785 280456106 887415382 916100504 340898689 71364582 422417211 560230496 428209900 810302364 187210045 971671808 926643540 250217803 621541031 443510681 199832896 521190646 242617992 41111641 66962568 697762095 108601786 571193452 582076230 515700236 572418010 625087764 124872417 376421417 546756691 829241487 295992064 133337519 569630037 974493476 455455388 734604105 345906390 975046700 460848368 970582831 537927065 616978174 343191680 613288481 378460197 691306493 731989526 700749923 252173256 347848593 687486412 64704195 209977247 877351727 609130488 768615319 857790344 530586703 125234754 391543745 629527850 972577141 85140116 302897058 594042102 15284522 538517543 90290733 662984999 218627842 49204848 67593683 149026489 829653143 987321913 2312087 604394613 351255689 7305354 876603391 657247727 636356994 85556666 951022613 243145851 645687608 206059622 452302453 281887289 243885411 955773040 86541367 594906389 633462981 852758023 292320775 693370302 58383912 826936987 127544591 672007851 424857952 640273388 717113352 949167388 698267204 440253181 537965614 995361307 98220987 843305241 977114699 394952567 454715565 531893463 573949353 85876424 273570059 827990288 789132576 749156465 534029519 38223339 835558927 96618644 497469181 208199637 827942234 54650920 277087903 874514045 595517555 614033378 126268359 246182885 368893516 822285124 343985806 147516238 968511590 713805717 283861017 763130948 524026312 479037669 883829647 622756766 963141629 127965964 4582693 163342967 51486239 829694635 38040851 536243506 975704007 921233451 259498140 714052221 548624929 4205752 817346317 589515340 517492438 610649425 549446837 100336345 857595682 32371122 420634607 555134379 123779264 996949348 591024669 106181773 491166965 154558134 489872552 418386581 556740498 285886915 315817479 452827419 742407659 27640171 973371568 44758214 998312416 679356498 691875879 590343300 398671063 13184493 94610932 105260166 372357308 239935347 684150444 202083658 606039817 802246370 199561448 774599317 778323897 384310791 816800331 988124787 974252115 548197228 321028733 538379317 543132391 17434481 939404850 374271866 762083080 13764910 774155814 627342630 940283608 87997329 468071448 278042214 319329277 464760390 259389908 308156847 15757474 923517128 119560237 421202873 726911614 759429464 261621241 348150412 646253523 825609727 657690400 482950770 659726947 517421448 367641993 767432963 870085756 314398352 611671078 852136983 854842360 992395383 26947573 364862165 862781746 855808611 390456562 840768167 349129746 209556037 345240365 277135426 204470537 684523989 724416948 630382242 298313735 776119700 712818084 234325006 232337805 519310794 431170334 962923793 432189344 288753032 862344781 223026045 385555154 328232870 903636066 382536559 653007671 614317507 976192155 261188684 895770476 190511432 105571124 959445442 806797723 21302374 625868925 731230915 147544174 80276245 600767428 683171978 794198045 223145490 573791335 142083998 27792230 409504747 572540101 918773451 366890129 64678381 68931403 332064290 424702056 794769711 811389801 992494597 521910086 543767956 600669337 102489618 644411400 893242562 711822176 5286459 453078802 284819244 350046279 301197231 686883157 235627273 313983710 345508846 237287237 120596822 496788674 827011514 981447650 925923553 934367381 662395425 444722608 74998581 82043646 414650230 133580736 586698159 214801332 783999062 546498727 239671402 857755249 983892133 245649282 402574675 814286834 603293326 620312826 379371798 632290055 725805960 943015996 122452016 499708799 493588302 863603199 722273246 944269623 695687906 596118397 759219498 765707020 235647380 985801601 264190947 835964397 945153014 403847001 228656033 78918090 143656164 545063384 696475845 910495904 898524804 582690911 334193014 682294638 255124289 686683092 908383911 405037888 51157711 253435300 692405004 892918315 664562474 382955207 46255658 516901442 961184152 849001144 271368008 700007597 912979365 144532611 699485300 753672852 893731363 917158832 111947144 763819050 718785073 477072217 641480482 802135464 303345713 602799901 471575983 983656021 112590543 935542813 840547931 229764469 581721600 959069708 859047967 480499037 223398917 64696865 838406332 273755239 19363930 157262871 762352571 764456949 159318736 640551732 509509994 279295347 376380539 792449353 748422627 623141713 94377142 735292330 526955527 782605835 678058022 492611641 874518141 263706400 350125497 998650967 751588531 500439070 76634017 340498934 98800100 215761302 977730649 398003850 964010003 115766821 71682985 410256915 158965506 268472679 825414553 137190423 14857540 962214155 119084929 526660771 83727156 906882496 429653243 3744076 99258862 13180997 282857708 61318198 103019612 639483478 50986112 286119683 516143152 924143043 149967405 807578591 573770974 729938778 170870955 394889348 741288108 469571067 112514050 933872945 490600861 263164288 333793406 632877993 763484805 351381978 225356722 12031549 414304760 878443000 746933115 782143169 967952731 143363798 705298684 122965906 655421395 447477365 636074402 629720221 256064848 833868511 409789476 284884553 171127694 763164966 467564923 595157137 151045386 810780776 922847722 603206126 51385356 689258690 393510400 735939692 752544168 372004451 642513809 309898903 857651379 106407544 256656056 669870722 7988938 465656897 818110683 714834130 718964573 377112058 951983522 963227560 564997782 988823028 915671560 458577331 418594418 40779132 147961668 606525739 523009965 515639791 916912093 237173452 403528403 355081646 707987615 888180448 554161969 475926306 558316954 176580144 350661086 533387715 265423664 644268822 815233729 471361283 868684549 689728113 141507965 711442795 609441024 844871333 846544515 668195200 320760408 806007966 902871563 931486424 832156301 240361686 374578453 166156046 816186460 760271948 499401835 368906432 568022745 729173892 326387100 909859996 726542418 355694476 929733634 609018962 103005543 973709050 212319675 76762527 733363707 807828208 741008559 209353027 691415608 327825425 927818640 32155142 266021783 769392523 412318934 413154751 465941456 801406485 375553984 191759430 174559211 907844332 835520345 131998332 940454193 930868953 960057711 987514190 414389814 986552617 139536793 255138476 369032152 972230833 582428216 407000210 18092604 275643088 795758455 334201346 282592719 512785004 298196037 23700485 423783488 756179190 9461591 512829101 202355600 832758113 249268786 803533335 424130307 837066540 475205147 713723745 12080674 941818205 659483428 185753016 938049991 183914372 842445605 949692751 890126600 648387765 63604924 674566238 684496972 867985040 126681684 618386474 635748417 979151931 702666525 100558330 323132630 154829154 902538253 12206117 571203662 548077886 495962855 835942655 310878248 544777613 951279922 104916974 506397236 579537811 597906238 685197405 100631426 887457056 348019490 985376442 747564402 706032522 816264643 412403589 489182376 759496881 275147205 322260541 501154831 657298937 111224985 628437098 552239579 971545423 695751030 746943138 127396487 554596397 202640993 882022785 937449947 715575948 969047324 9967266 847575521 786786297 389728829 110545846 605098477 853723775 251680281 859938671 853578650 153999281 53587918 211699331 168735696 524884915 796148298 856820917 474948537 247704614 281209657 969654226 263180747 269056828 563312660 922268331 921195709 784876714 360285983 114019354 482363545 928766638 960409693 914291200 120474025 603863825 495578273 759639114 776620930 42186779 493661313 605349867 968743935 447593896 532309855 514791896 619588677 889105429 806129764 213665302 667186112 566547780 467258238 518774962 224519462 372193194 459645032 331836602 408650096 592496442 499871648 209469261 180420837 861058160 485234032 153930375 351222798 254503254 424286951 160899223 41789637 148041339 789745375 209121454 348809504 597832686 931691764 493669383 735331462 960806486 255966354 777548003 199955620 303492565 714286056 232318859 338179183 216291097 821870832 464231765 738958623 500041816 781505129 500565398 492026685 430244948 644767449 732626615 746518929 387529551 748979091 835976476 722381363 959917593 669125550 143542842 312853884 71573254 442838796 462937485 104208149 629688569 909943637 796386197 946847461 336269397 955532022 500479708 159329315 53212680 150026284 732985589 547415115 887736969 20304372 502222715 555157024 27142871 835827991 933152526 548195505 414035318 297001253 715595866 74382926 161147255 473989494 945782033 887992726 193326958 149796906 599536876 825342062 222062204 537396012 24222896 849071362 639090501 327512362 471087399 484673732 949494519 781855388 59422751 710076275 840854091 53938373 929775478 163645968 681247354 862608552 642980876 509625834 378138703 357928473 283030737 521947543 177994006 538972848 67697071 338369516 434366889 958407885 702511780 270383382 356475745 141465 180070068 325314939 627356966 426847490 228613865 262201042 734613095 300065985 465430864 798943511 286684699 821844313 316534283 78448526 672608191 729144334 696255030 480044994 144415833 262471923 729626879 786797194 311419767 450178529 57034389 52110081 922994225 288055669 814198580 655713160 909922340 18103833 672212000 60303568 957620343 806322943 728270498 798646477 284000472 479193370 736758540 327149496 905214589 679428144 155000246 428043542 846343459 864708553 639649798 902929591 948084243 440741937 615908197 160455595 282816280 434625411 405114948 587945294 326593419 997508767 642231583 774852169 963845960 74753071 966670198 652654981 578828729 282014 507709142 630078260 212125384 83608105 353548239 210165207 442951662 19014607 399942909 837701934 444434728 743323224 874271745 789296456 304037373 961991765 422103172 465831801 178989688 829262877 389382460 140937050 878643253 20314319 638111457 873163732 219577679 341508438 999970101 731276818 595553131 851980643 687396865 999606919 75055802 870731882 585675290 765727216 704054000 682576560 391468634 20034641 491656269 360439355 800572067 304686068 544977558 881203674 164948700 318290034 797821978 729854505 172374011 642440611 582233776 619365508 458374907 128090798 366457525 5294613 500291546 537831166 777500686 38536397 924563621 407397191 719751980 562002019 692640878 102742151 815955971 424791383 609382992 175395583 117001490 352004083 401325676 954231102 111277155 200061255 668931309 987817240 430223996 302098987 821124869 614807721 539576187 890628157 336624109 273461587 83305467 461417703 498764264 390820039 742428195 87634011 452740930 947672052 180230303 886138511 877318474 630695449 979136935 695784514 514918751 661995450 298112506 732350465 946352607 811139493 681171420 363278615 196028725 118360043 188071968 607370399 127741141 379802859 451106071 560328315 532645943 90889797 530060193 980658766 569277919 657027050 307761700 153758861 526228054 151298317 826786193 648637294 97756977 580223273 402247770 470836722 644635655 845533954 603935104 991289056 485118842 787003302 167158664 379240908 482854966 532752746 305567107 915964426 290154478 284207846 726847490 817403836 863222363 64206341 978348585 24779464 352715326 407522539 421338266 83104229 729878117 509572371 310359685 795238274 502407839 370928693 944312991 906598119 172863175 800327000 369414696 572562710 941322174 854256582 287271911 386861540 82966128 650442775 847998758 803086056 550700241 407794467 297052865 490631299 983430871 789519119 862045712 472536793 954656135 67643464 944179198 592957662 572420074 798286469 911828473 733590348 77122068 633284541 527087348 209072030 146305567 888691512 187754097 913698593 266842923 456302211 342445938 345956323 443169378 321657455 401193866 740493757 187521531 810904600 301451212 860876621 657132588 951106535 489184729 292801791 550950457 283881090 860517077 122362367 57454442 442733539 498423917 393706824 434090514 785557570 427795419 330767516 265517710 141498151 474086617 109470081 934344767 86695515 619082928 753843781 616730255 847114483 852582702 442884355 192311279 220447309 800471978 508609692 127763672 231033610 131680771 592830391 183437521 363865625 80769947 603563460 776331617 959265199 621739619 681297915 479041819 255781445 363650512 899286109 29131929 678775200 80363490 845069490 582631292 924329422 422491166 945854858 977817968 270455845 59560085 21120321 214401832 197025851 435254489 206608112 607856478 314284282 928273162 210929028 257065427 762427276 202339025 25233580 757545553 442038884 932414551 618679266 377926570 858610755 961450838 281125219 245973691 857939750 966593549 780284731 889186147 67942753 71510590 422956087 66380173 239177347 559135802 297601264 216531500 64068712 638428120 687018696 970405436 949007927 142068085 256131302 726361533 372725082 941681399 450065723 922363064 924122761 151612109 915596156 816175170 969092284 844223724 914305071 260628853 336788538 624698326 719780759 144114289 943234447 174198156 499947207 92592995 856871053 289635489 647954583 527388027 80094545 342323495 573225124 60644339 23066945 845334975 858757212 390707470 991219719 805616783 127882220 544353049 655134875 363960901 573537100 953331554 776889396 310817045 230579516 582163783 961406810 845267904 289849927 65442601 388516056 347955340 345648571 120385903 462814403 776693831 158513326 910453135 592014199 474175814 628390151 914969347 150953110 428333675 579309670 700870218 329517073 672256023 747323714 361227762 919727895 137889594 513797585 54099853 140366119 631651405 516507409 992200883 758631175 335460938 516633549 609282567 989523391 898366396 660337554 182914612 686057383 447902638 437880766 185392364 607185241 729726135 256169580 352001512 891927737 110266869 32504199 766841326 339523061 534610446 615235517 447450053 88044672 720038962 603909513 122403646 902301718 298045205 478050345 324269111 792057791 926839287 344091303 438330254 767054019 159386525 773175504 965642290 853222836 976697686 623777857 165232147 62431094 149765112 420529495 824858920 330025510 160671456 284115002 341224570 204198966 309591287 518492124 696976142 653236054 955526570 84747510 621923577 14222212 988354542 491508485 80473683 808591874 417439042 53441876 291837503 550055520 699737262 844188659 532835305 754270579 208916927 883958456 450706304 431359568 16363912 774671428 377982787 256930658 440497068 763327746 557715054 743169365 311371601 196844576 352074833 600716313 793008162 885281430 481945403 960568813 349106009 505881127 599823751 911574100 554546863 607288406 921416857 455042333 237078896 239205753 690069975 730610523 724833127 163621795 536139190 181050985 435443178 72255417 853122739 575124203 953109723 652673121 27191370 484817871 482501531 390639369 248961549 58478406 82312730 752321773 574763654 782726098 558870995 725843468 866821717 646634290 718877373 533351470 873203481 757853046 39338082 301572579 579060862 738227696 785913040 507696517 292255543 748503613 945568157 376778288 64308733 509998911 294992102 190244048 182966929 400620069 394827349 44305686 26930367 593159522 262385685 484819064 503383898 935231413 308581341 603598134 180234554 858586910 568699370 846478680 164225091 403193322 782528004 28701106 761769567 907350961 89656954 925744857 783740543 258531405 480456993 760232492 33962399 53057761 356490325 286812887 788185534 896786136 722853376 587283143 292647660 992023787 736808079 222390198 331098167 247425554 667902454 781286948 239193785 133123220 131066041 731420249 753027221 87275772 672790745 430706023 366890998 806535454 601878757 445773858 722810895 770456856 735529202 285300780 718639640 724799565 683023267 378819313 910171222 168654441 52741403 424944796 799158033 240227934 513538056 170136362 774465434 712497519 216179362 174107992 824017230 186401816 518243751 417524143 535730321 16872747 208701274 800788350 220389321 221364411 314558095 810433503 44528233 845378339 903230359 102030003 643156973 995941895 325572435 408238496 800499925 374328660 736499238 258688793 60294573 929240641 439724804 627734355 656263689 857075268 24526942 900676942 341463422 875587113 568825655 498760663 368313011 400783606 390675470 872027258 474352209 978340096 808760315 587180179 371533323 412923624 248688523 262207036 279533462 182861453 624007136 713845603 445458877 447338527 490984868 938725047 70530370 597746447 650417663 563624111 708605951 629686552 29909931 709044874 46398919 807472964 861521380 230533460 382356351 510499036 479374197 306796765 137316370 573842548 659662757 587851448 141017461 368643307 883315536 274299723 88169883 327084129 934057424 889341626 99317645 489310018 982734864 183069178 239963216 368136009 104991611 613973952 22879741 942419050 388134665 674738060 405058215 881716207 530114613 68737190 586098549 431990624 142733832 395290403 431987084 317707668 130254864 187050196 605164327 59937705 713139556 187192926 378271352 530029566 151204259 906939433 524138181 225900356 935562735 792192867 752303448 537807214 374506488 388395268 556389506 87825591 486065398 366453456 789153951 357727396 135660198 645994062 11473169 525277440 259559503 763971020 576848192 932947170 708919231 62293858 2423201 955752868 721000523 46600693 849470125 674607594 970347474 844709416 680939494 45755043 455952316 295715183 589349590 646809088 370052085 225773823 689862675 701812865 674555381 785457883 49132081 418105319 299447222 672575176 133169366 795388989 814383812 924352346 23026605 319387354 30315307 362655464 247301477 480195421 473803905 649190032 509487803 669584549 738420965 910749503 801688944 768866782 561884666 437300383 481923406 605737857 707104243 502997038 294787881 519196743 370154115 972362280 214307291 625392180 928021993 440194200 899065668 962954647 48748011 61901902 656243537 781600256 664244952 488076769 997083888 292364113 307074696 798035632 260059937 809316008 232579924 799629288 240135138 185088887 316311849 12381557 272995646 637738605 926163057 420911376 293046346 127483017 501489953 233956667 580737564 114606608 175763387 84792381 316221658 77413261 649521731 973799716 63805101 564471506 25372998 749415118 598047428 251632128 801197791 925963479 701006430 440228986 123838888 976882342 273551804 741153771 926604745 332857455 137093927 803529028 107506159 549271081 380462067 862240712 786946641 830437522 400196471 52124150 247789997 120458293 502400025 133235358 178582090 768350307 956473921 360416722 993386742 355977262 449541475 215997935 945771015 652617086 27692791 649279641 766422106 304810488 632996223 151488955 348695129 315213324 905151880 914162314 669711085 76987892 538231459 890495109 82517136 333910191 167230571 328653931 904268352 579583235 713137024 385771853 590745730 953371778 925090959 165523837 853729893 646187143 877900102 87820696 14747775 267095852 215039844 970486659 69341678 707802721 36580266 363633510 846565209 164250832 793398498 26812091 715935725 934963956 187627228 367310653 791147617 645228559 246641527 383882733 353698293 300634404 970261393 767406105 904807275 753893895 362890772 106456661 443544596 427058257 904562421 232231806 543121095 674885727 544083501 425327545 476780259 509816412 877622463 669497713 445759304 510297912 858987444 565755992 262707052 417243050 630012702 206760048 856878147 930381619 803817755 823249144 196525384 955605787 202556616 652631937 659981189 554260336 662314835 994098392 506370693 971652625 246514412 193258017 721472865 610250135 798034895 715539901 750178230 926739564 769969468 229700694 172298923 845017540 427274878 480397796 754020333 62484115 588267 891706528 887638196 888617627 931772887 701742098 348552381 947926884 572668329 55172613 838224717 890114366 706173129 375513482 98410037 29828162 95572395 911275520 729383626 544884051 476416199 726922764 458097898 313493778 403966881 847067289 357338620 579939060 738481090 124004315 122309102 575836720 651166140 592460879 469074486 521011913 758333997 350670265 503070928 621908100 57070770 731708964 999217993 54419955 76507896 973999335 949250982 417757549 301706675 769632669 265899909 597806097 372834712 581432617 538390272 899530443 103831151 649746616 785702846 196956489 925739006 13712574 392922607 381689604 322949913 116381689 344586057 225634362 645482651 741026410 116650502 227814135 43221605 220217443 704017907 51170824 772938848 470800752 452042072 795466760 697070467 62501236 318884879 455175766 297712835 378093456 846186103 134462488 123811876 553172275 740219506 531030851 549051314 448057103 143110768 833869195 406679677 979217951 91015786 996383603 437248416 819738283 910434013 493173056 920691519 863245114 550622157 215587333 194343297 17464230 182110154 678469787 402840474 490728457 844341482 721264286 897421509 450300870 769402317 102986107 662943554 946193547 631737492 481384289 275978078 356468043 117664757 27823175 938554987 531565890 969960478 488915692 328550334 834756343 535352275 838246876 187800512 576000306 714227545 982818404 605916891 586398731 517119868 964022689 583512186 600449498 119672471 535773037 716547617 653252169 516410755 490573170 473631818 311816511 930755752 60106275 265850757 649212916 797243127 493186999 530767710 811178467 761356003 351145773 770189686 410095055 324704106 946102604 201528428 549940420 626955540 376470954 979261163 812842265 328648432 843342235 810980004 77982057 887698 987181887 867284308 548947863 327504410 258715262 324747195 302312401 389500717 927378442 788082336 44031880 494605819 394944603 724150749 920706686 225810231 566687408 962890055 140280755 367310882 408349202 415818688 930484338 26704770 986419794 163857973 964596053 138052773 298621192 590761622 79984947 835672671 949100692 10357984 240492595 405840403 742283548 502644755 329832638 593616035 528684437 447600438 668251274 13318527 154579636 460443746 868845974 167146397 244508665 998511534 447247140 630998139 24961196 631045181 191875262 514246942 939705056 152285496 146742076 769767704 233392748 936960720 107124153 921553277 702725615 344993092 61440153 320825835 920732626 41049043 663492744 102899593 217844036 174058951 993872762 893729794 723538752 156543859 447633837 356366481 145253254 154020657 324526240 807679218 250832796 382059107 212908071 955792493 695460307 424649331 669392210 698205389 41848389 166964181 13656956 687437162 725876174 131571968 900612941 765216802 398855962 805095802 689487791 383819868 97749402 265276620 920280276 170204166 232734338 583824264 615329084 814114966 80144855 35717192 661448874 554328589 755923807 236744879 313142061 889456107 207729577 912186982 102662674 911048770 367413521 796091936 362578684 132464808 132569779 720763542 764917453 938303292 57929081 488895373 236247216 980379044 122310930 848891597 449894173 818944012 835741435 945397544 712359626 91367982 596976493 860266363 390488515 418518597 370482807 655622565 248175181 635248665 690269413 413114259 204231680 654166008 462070097 783298101 4940472 649937846 72194330 543488132 60749210 55974327 314862955 770102407 726983696 406578138 745273905 443432004 450303696 174797970 89827620 103122129 343758039 646525908 667337929 629939013 449598052 690415647 214926691 910464451 556506122 943789432 228595204 705972854 355140506 845674607 207029127 214938257 54169394 643026710 361889671 193385803 757905971 834206224 513024881 850099434 252676173 665855363 25176947 331366839 69598833 838237209 698846596 94169858 386001373 423463436 245188199 153321513 960567060 537424922 77104803 531706763 783766756 785723529 514657161 423743891 336720739 893158436 108415025 92203445 615129319 387862854 933034617 267038058 990679832 765031627 893956106 683881780 276276709 897404698 101211992 320246686 459338879 934270241 403749528 652380730 489507424 608561493 173116107 991597731 322138705 425920181 860978361 40284537 609663837 680746953 829788144 699890536 575363028 274663324 21464526 524368930 471005273 233155782 654660719 582003555 893045450 362919015 736908218 333459433 725894490 500611874 540429410 34414208 58216823 835650088 824894689 679641340 455488737 390751788 139815026 699179318 435681432 967565425 63300643 521572880 854065646 267103672 990262206 980094071 683222901 916609875 195300065 872953945 579155463 442197015 349672937 462369203 427823050 352138083 557744382 357410180 526045995 724133402 73032979 158512858 257788380 715250094 13021406 940196294 488051676 195778839 119038431 398198883 119767662 739059660 542870881 299982290 131500830 39438042 436921713 379973436 528258241 555755980 265601512 339085527 419345523 518119352 178071911 244221659 753674391 208725567 122833495 783454857 504944601 811420805 997711846 726184748 495104046 359649337 852255502 682657049 711755735 637276814 323174801 339714729 697709136 579462472 658564339 712970043 107642219 519389611 833047943 305788988 677293625 847749508 370794852 386943518 690557977 492117547 733627755 190296922 103354799 871507836 516283973 989416311 733831138 826908383 620461919 136395768 325490927 137599041 710499317 800730997 581606219 993278233 825972231 720450693 68347583 60476262 865629530 672931020 295398226 252880557 65384577 312605682 666127966 246722813 783747541 618560173 407054717 365311981 867293810 588399029 78738 144248728 4094789 783361229 952782795 273980328 416783869 70344636 739355802 465920074 613478928 988812633 62850748 334147381 315155905 941502075 636490809 11842725 265909013 282428166 990822232 312097376 479257313 565328610 241641393 785120438 988793273 361184005 847358237 196899199 753754367 132467303 267439299 453986583 89338842 826291978 382486542 798528867 662424124 127848697 642907058 379954388 242822111 812334405 71098028 139794270 882084158 805902089 603623744 63927683 934776487 457573481 697415162 330167618 370115876 215385483 354392239 93998896 264338322 488739751 748842874 147113315 293609873 494325233 414479808 274270325 969261188 383563440 548950316 920513166 984550050 576434220 15289527 286898270 551184355 680476089 980839319 218500122 308835587 677911728 595845715 41450113 367690890 943048050 485038008 775957975 889928653 873812588 387786201 221130989 228078560 449383694 687869714 664792598 11218596 822239444 485945098 195033141 758281156 923544127 765664170 495270826 382355375 583682010 479684647 455800681 61938331 519387958 155945471 344332263 545441160 318722542 767799796 56837663 901762371 982797479 940884242 806756507 218150232 77428230 70220209 543738982 569348898 89976256 843224169 140476443 897073343 153000336 546769184 384105170 606440473 812680758 508194818 484240695 969267677 960292480 918712452 482573429 591866503 474652732 607931490 685451074 906593109 578441542 78671520 693960414 920059728 757167747 171666571 323150351 267158603 699541209 656937140 344352291 425634264 910820923 226507771 714032623 584928349 614007461 304255618 757390547 63110655 413715734 194595001 487689653 143296945 191473822 697843791 59274752 803022377 272972106 956719938 830502064 160787174 809678134 305739993 730584895 321378098 5398919 221894302 23552692 575712033 59398499 972949860 463218335 975101060 620776700 236467786 898515477 923928577 578927761 170449330 381365938 791400956 939532640 843533899 485309344 667893160 306536628 840610821 100469389 373765116 706482912 239535905 58141868 475747002 580617281 862109471 453775295 8969578 128010803 157400527 737478410 711000155 12319268 370724929 927499869 142720420 601992329 268441045 15117066 937590823 725175764 684246830 291319028 387120268 60855185 141254968 810021758 384027716 646059843 540342313 910527130 120354439 102010241 841544314 334191547 526880084 58480352 379106801 241642208 716149364 812309257 84717210 730468240 833375864 296251296 895736267 250859993 751720888 75154267 69500700 300280656 922602834 348352755 576780662 265635861 29920307 942087211 472382466 396282831 500158982 626931402 525519160 238567593 230362695 587237801 513852881 969252442 354098482 180865434 384195022 337010979 986432212 367093383 411458949 86453446 151746044 145562197 53116544 861702038 721117505 756140534 86690465 858283878 820882434 947284072 480078091 543735959 383597932 298240940 195987243 24135436 164495723 701433803 883933621 361405751 722032568 41441752 173369251 476041480 159625429 161837805 962936635 671417093 11189001 101664556 758131464 784609071 752525667 865666753 155205346 696215572 726645951 497611483 372942050 60925902 827858104 241097399 902954605 939897081 336729275 179492502 74408238 648853437 544967413 912289477 305415196 513298117 307674976 427938449 153125488 819954249 294708925 342695769 227799218 899096838 546518416 36573050 598454698 770181959 988751152 996701540 537429873 93921235 538109617 496434312 316136030 977340679 581646320 434572894 72227355 521139132 702014621 220029802 962396302 65335900 961296163 720078901 156387057 929724370 744572860 226298963 92513469 802182808 318637929 396449627 360945335 158605226 361926383 730969074 500783595 531787662 389487585 789623491 792261292 411805011 360626582 108230526 112978329 504323983 986465327 702526431 955923093 171165534 508570517 511211686 403754444 596251501 925803127 31616158 394754226 800790755 368766796 427034012 23690500 802571897 163199833 480199031 549455814 358091116 178285984 821280019 636763717 372308614 175471605 257179992 371059989 709867795 312681969 43637308 930102031 558150630 237893616 106584503 885458524 298373218 610896417 941681355 802849636 707343725 793999726 964102273 981335521 518981747 512236179 969833711 305229257 3068522 253186829 298906667 441197668 487685840 487418407 30555994 785643324 136821422 751540718 163739558 174757672 53723026 285006913 598945602 66407235 92197009 855391672 760767591 788843503 4422 310779072 399250518 487670747 844431071 56678539 835224155 807689466 318014211 859828235 962423497 48060811 119415019 111044868 886874104 870939406 3307094 265881856 386572621 472027472 452481673 372906573 834015279 673334632 452318034 730167556 947877648 415774387 660547082 581918212 897120880 31894479 460394636 406450679 721148362 124474287 380099137 19743306 956546734 915626627 868277012 67396664 415277485 677335752 875883132 637048259 264462685 142374981 580126331 498078896 551751013 898774787 315745938 514067345 960900973 702597207 250022613 644073660 249595432 798110172 164480212 883756883 881554513 704777338 213653170 784367166 457488809 579884893 701098003 76986158 413616634 993881845 654475556 226297244 62459416 361379842 664664481 33635780 147266778 457765510 396956609 619797939 421199910 284821711 124035918 128028214 979141093 489026161 153841303 439920617 730482953 750785863 687211886 289436713 917610634 289376884 262625846 627147293 618787439 604901225 202348756 999165880 429975231 891087573 523756982 681596594 656144524 741373881 904000210 645393805 761615601 68295765 646586022 159699596 860575761 40325945 453105464 524695234 119313431 766241335 605301016 623299339 541757489 33527146 970134107 211020544 415129503 806021691 832981407 768242190 922684062 77823056 506895625 817807974 217790331 501423266 650276680 467329023 365344649 519090283 464362646 904480662 617011233 83655217 704448429 64479161 126380964 383775934 726841045 18185651 751372926 913441833 127350491 217796256 792162851 416839884 456664087 192647262 613563400 3623498 481011044 188197526 248885941 837112980 79973164 693054392 560015024 334828251 657307740 846307327 285563278 180547739 628569962 619839078 779010278 174052504 165626708 619638201 814706527 325214689 845772961 468346248 22543776 829624009 67149406 515418410 76855643 447222248 979367202 111759553 229040716 605818155 996570636 348234802 425848628 287074484 127496640 757412400 991518942 995598336 768589168 562497842 691677466 399978695 777402831 491466875 312936902 837176334 264807964 514324750 798275011 824194849 747534621 556274880 616953851 871064212 34233378 204832552 806572124 666744133 362726910 937127590 739029737 918082901 573257748 868508001 408208541 596477234 79349063 936289867 512914565 72285843 770767109 42181148 900418739 795384688 108359749 222772819 287404351 231877391 275150468 482819641 777168206 744651004 803052234 585273823 183531532 46998540 220299943 373074716 29088169 597292379 831869740 361230481 248435805 176656716 539284476 551035559 411151724 587771021 421594171 507320971 979909155 493666576 716401048 966901560 73138384 463283989 784678728 31834737 85473232 715376668 723030796 529044921 845855876 804341 508671529 27506017 108577878 437698992 258602091 640701829 277792698 519958702 654499114 127126273 854718250 906147729 888630853 566551166 629579303 504557379 476237089 444558704 617948218 491829756 113588652 403212555 607620088 970488374 651080030 845095760 360858616 996634550 222315061 417419787 934582242 103207561 704603575 994448841 691491675 908672514 114355184 46896864 53610262 700644286 109428856 501165172 55720398 965067424 323454319 539813228 719276870 359957975 493759606 196833657 261824328 677972434 853142979 336462355 343110822 943077717 653035269 718244217 687738426 362022493 567363711 158578610 784334822 45214523 822609397 703097235 177663895 89432960 194527669 521495985 3186746 637639947 987811735 990611308 891502797 897412860 330875897 495096302 99989331 945445572 615762622 840026919 779055059 463756567 704616024 581506252 68737887 37088495 93355708 60035938 127096084 80863888 85822056 69073199 109832982 445872264 465422181 129299267 24581003 816565418 926711354 570910839 90162598 69084946 744554759 845594729 473028261 206271783 209439330 270225540 605296325 979142288 144358007 908768505 880112723 776127049 673742319 954628541 409739937 165624710 842353412 664197009 436337416 310531281 552993907 558702334 663987693 700963571 427248259 889162582 724724153 964529665 319028738 402467761 433821148 899085401 645834567 456158698 616288211 615026588 895500076 276173742 413010974 633169850 345142813 316388719 852451658 172270053 911540487 504829281 757112553 831410073 61734492 800691333 896842898 1543581 885056799 888602532 131529965 961980153 82157013 855000655 700770973 148159493 11446153 957130718 570740057 944850779 162759383 165748337 230282458 311720670 796877529 276859374 689917411 282158270 679201847 616882952 570808125 952446063 78669340 56647737 243330234 443389865 357520708 149981885 732692534 722210164 911843051 928451486 651737749 428757789 322354132 568546988 909461690 122312501 712164177 696077697 973752478 105946264 269514806 237104251 528142394 289828204 152826341 639262147 168456334 693720609 233405759 365054537 220064423 263785060 574216628 300743879 891025044 509465143 543106620 693340856 626681458 294367963 150508118 755777901 424628580 270322651 517192453 272991982 476478608 634999825 40710104 612335385 642323502 647136915 73247208 866708616 658244722 102989256 514862800 65906602 881840803 312669279 871960505 759306157 975936522 565945414 142301773 486464902 438965497 752137150 890709958 307573499 202309576 279375434 120931811 972973455 41766877 513486265 674728934 749200277 501269664 17180952 916126626 577164069 522095236 139569098 557538922 548693788 834881540 585718897 938030108 54085672 692540065 154129912 790222371 270255541 278608868 261578903 841429606 833001213 862524003 782722244 505451617 824921600 57429175 610837065 466187281 755831943 721555071 976629553 816826105 386024223 970325865 836710607 96678187 782845988 946407460 705338046 228241981 271282869 827781484 808212452 261654602 985070008 766185734 316715887 833178876 425119459 962651320 114675153 287454849 311443880 937558871 915384775 708473482 177670730 857257402 742834517 477937500 191649488 454146505 7667397 812871356 738123278 181178216 945513390 898539252 777533593 113082253 365722094 628882399 141907920 694764847 66414759 150867929 37698782 319976021 126039362 189969094 944923572 500527877 560452216 935359770 376515078 570736722 622318917 108519622 358637657 346935643 372142058 878254154 135844082 952313403 157510390 893809070 755058402 239584544 965711935 608971135 689892098 159293757 647613915 264891858 598713586 370680778 918165810 296910150 975977497 936913675 738264050 152556035 319778472 923405641 922743564 172475573 778751642 854820312 479449025 715693971 504287405 55564817 76976271 485719387 861592423 278727765 708921413 465658962 848592922 490438928 298524921 160708427 772541921 995965876 740722436 260604567 960360086 728787389 110892556 257694484 400431592 233757099 382145022 849410862 196486724 674799111 104715279 569246670 454129123 648500837 867758008 34129774 737728962 799283296 857216958 216277768 48116910 595871896 388254001 695850790 944043063 325607866 385336928 308027092 776444338 573674358 483943402 54530730 377204544 481225608 850076083 421001668 290445005 726028977 794762728 7197898 361758979 169515452 314847228 653652202 349183070 911858299 211561388 744593627 649847327 442541766 494758906 958446040 616216909 523959172 505331767 313804970 255005112 303303069 411085043 819650209 866132729 387432192 645190925 601986191 797194606 989114796 817321639 262022613 510798147 355262115 871502893 220166486 971927398 788004074 170728278 780256391 280507025 896329369 779251741 107804246 462873664 284576713 985278917 124935753 958802366 340073881 575695834 868542305 295542047 539826999 613530419 214624557 562057268 860083410 974045419 714527428 270762914 524890281 25747814 926613444 756272081 264517114 993336654 774213460 845923822 267483153 662146205 816026403 576104692 348500288 172857225 525294180 951708837 149410272 554799514 848437465 36747398 296928087 729844379 439773639 666961128 655989001 205677985 657865465 147221989 490362735 492748294 591306187 646473304 10983678 20938352 592504852 910217969 465446202 655712207 597475139 974278426 573659569 155466830 508939073 239161358 481928942 945904242 637217155 757236686 572253586 864272381 923107851 810381344 852127546 355681014 454430813 127240086 788024213 498266296 481787527 939141769 694556498 160760030 308247585 864752148 970623787 355504714 409282886 294672679 653862116 185699369 651461536 371906413 543139913 78325999 142785373 207682143 730821159 635596120 127581745 567969852 818091355 174997867 739144284 41881361 445195720 787039601 778582946 38267307 467732312 248203007 254806100 625064097 555660030 913583090 789596231 323922261 661519282 59397999 147921369 81380593 376358263 433258721 433306353 87550304 264631896 751052026 988892154 617679457 420241255 819979963 955500785 882592366 719509950 454679655 825369679 729776084 609347967 138052230 683710491 876346785 768963796 894646512 222514915 406509231 552334066 587642306 36772031 502659227 631657232 744457313 226353739 922735823 276143984 665242740 346700207 597412219 750594144 363931379 947101595 194478744 112735534 788261659 120373824 152441574 776622392 10149229 294175841 940577005 737352414 29063353 968747584 69302783 711415946 904428816 986323120 973515568 651850159 570130640 540107782 518832227 284139462 255828895 434320670 420930881 949902676 696856421 214416479 692853816 971636963 248822616 719094968 33537924 625343488 121629943 890123936 873663011 292257357 75788545 842375442 702436571 881767524 692132487 246043289 825784638 796096247 849356250 163665984 868212903 556679092 233371034 597195934 29471024 274200150 866892713 270478544 50585288 923379617 539511857 228903297 424799261 653814362 383979178 531599833 534373285 987244122 660932303 671821457 870397603 294140280 406203298 188345575 79026204 882666644 989522034 512633251 113964004 585974940 293365203 977150992 289474449 547039106 143583392 437190407 101143429 214747455 638107902 47186404 556478948 929468629 138173787 424758160 232794533 325075277 207396200 365178744 929207163 579396797 927830819 134479504 784951526 727321916 691688911 831520346 939677490 488450028 63945467 449138651 230517356 996189181 577249143 464651936 916531825 779936664 507296867 6458305 739020762 540686079 484522530 27544280 607707925 11216752 39415136 889642259 307275600 465381433 321703442 220056601 298234242 807764391 181969010 741914914 774061422 319119897 375962121 879398894 866328732 52415726 70506654 507782597 826637659 793355155 366276936 219085424 785042373 488440440 378878819 371279691 137194678 175295001 362549650 840829486 293059290 811074038 242354371 105974917 259473312 757128602 526545192 476576825 417956417 614742938 573654849 357024452 526621373 760384142 256634063 587117604 791998684 163053080 358755806 2181087 121178414 583273442 696129476 388509699 88728588 174042782 235952670 848174628 578644117 517179658 758705615 838568034 257534898 855892707 292726787 62431847 103742228 939678198 475271469 388212315 756248116 325341463 751798282 11754487 459504462 590639388 775384737 846695290 569082992 360814569 939168573 806382249 794997860 972478314 739551087 173654483 436272073 194023567 29920535 974561998 734641147 582992468 888436566 761255416 826824736 973593784 725881757 326279481 667143215 489157578 174622877 541437693 590051290 694319259 962367312 873240891 88115623 708962883 299636224 562686576 526487513 490011365 119569207 543186085 12183424 176003755 632365765 52190822 42817402 702527177 408555210 687288266 396011874 407463031 739527340 741602159 53452451 7545336 490466325 834298748 753766765 171380121 483528185 812145311 302052279 73827495 769917333 744418575 810022465 59056769 519406444 963683206 548293525 694870406 420838988 466065489 137539329 147919395 451011145 752603705 776870816 240938953 247116220 844944278 119342929 72526832 245939791 614528838 812009914 937642782 541165545 893704113 90910542 734583260 802046915 463653826 187727430 361130428 476621652 847279603 176092064 201615961 261677412 528738110 761671205 459006034 731858686 712876076 866264935 390053973 957214327 328718795 952901819 948322322 71899243 597426354 732833346 41078085 559292605 839071229 763962343 960450734 462456219 625379413 215004758 988131098 680395382 441774308 739969546 656765530 790461200 105336934 823864900 946948168 636851816 417245716 833690635 365255623 6183886 951555769 159588143 891498942 766558162 486400926 795219785 499483172 170123604 425885087 489320633 874561776 620714616 848426517 805708711 689849127 511463849 994922984 599784193 788713425 998407832 585523337 150622084 30270208 57473352 589119722 249135276 109336272 421080314 576473228 372686789 722960482 787888952 83063927 248801501 308233440 671928539 835824691 344167372 147588223 15607037 893113053 432314675 735432565 477513726 471414796 400037754 301327111 851851922 441777903 907977168 628529791 611951785 509998383 260355377 720074799 107685502 203915264 588694874 409018481 155403671 569455911 341674964 997301927 606630849 584582117 277434607 573015613 234196497 67542537 788329668 51206561 136406494 635291880 671653426 687768914 280158675 183109223 385164770 779943633 857001176 945541093 703386951 720017318 66858786 478440786 351887251 638906983 558779182 268706342 243057356 675780010 967384257 935587423 609458871 969277205 464329191 607455618 385743334 661929551 263559153 917319580 989900976 227437068 280170622 870133320 174665271 615822600 679401074 976414112 857845600 273729283 853380347 113360715 801109470 485505990 951878795 443892088 233301290 322400295 281197020 182824924 937599874 532787453 659085049 406604984 947068142 881499691 549917223 634943441 84409409 839400346 201113855 99955058 548421136 369468480 344158042 759527799 856817599 398990615 296587361 351485496 840820850 773687836 51936634 602971043 847947293 450026847 821718879 292158494 354854516 846689262 622241033 734642084 826768380 518840039 369920187 527502002 858151674 781056616 646456069 763041614 787371649 960448670 810194360 484112393 825698662 788543676 349557493 776980214 760969034 606193660 818282008 908911284 86364056 385857695 935627990 665344361 196284542 554110702 294813215 614107077 156868596 415154238 412025134 379244541 474766010 400415208 292845194 561863884 632654682 343847503 36030718 839713918 727258405 377055708 398276769 199097312 858916657 542169090 580614088 41019716 896733532 793477690 206257182 839575438 234244435 921822474 717483406 25105696 131675013 864601848 822368076 236953323 176261673 187412889 834747603 595326307 418025535 528903300 520089318 483682184 459860625 427437150 845374102 701413342 605710508 612206547 667983922 525264759 546111471 525822096 589075547 462715111 921063538 389424723 693587187 155087179 823495714 361804764 339158052 940816712 256198575 695537147 746080613 67085330 561371025 603968122 847721587 55298652 489685766 157791032 277865038 663657317 592296730 506416918 662440009 775717873 100873627 912541952 157137139 133351759 159489057 290511078 234789672 999518806 57179917 367555778 673176337 148406374 132466311 92350872 479764245 850056290 58950015 543130741 198851307 2177978 462908078 697567589 31559311 140075365 29238162 452208260 100825412 38756577 196679033 384038646 860938905 827333425 258286188 105283559 433548638 986047462 339871305 136608132 669062324 491245593 436505002 167893003 724866813 736977250 30032638 552306367 892189410 647850220 698297715 24658663 662946399 94591587 145628158 757389014 338814888 79943934 886428772 16106729 27609671 818717820 8336427 768281217 828820997 719510563 105051042 181011716 823396345 745144766 211997412 859993835 395455866 44696744 186298575 716163245 234606388 142386878 334168589 140001226 383575565 250411365 809481226 621523920 559173693 220352140 38860804 779330387 93911612 789037993 882189306 719812326 27472340 897854136 684373939 713237041 390453516 60631364 744249789 718549725 474348860 122339673 315705461 824801690 592684543 319755405 870119670 495103270 519197752 949963005 325396013 867025216 263454484 784078417 980471241 321667508 963825929 144908469 691173184 870760276 813200079 976969699 64710868 621318908 893330030 849880598 845299343 986070667 535547442 46966551 898586429 379138029 624785838 169778482 604629369 131678738 665931454 3501630 288026787 575713784 57376392 712230042 364789218 557099423 340177529 760078890 129300778 641031440 712475969 963154271 988719150 739971938 773731806 953176111 175512946 279221162 458395286 180050709 210040638 386662924 982040053 687146522 401929377 351519413 619608525 148489165 117058162 328666323 410075709 338554435 646792276 865421218 584433830 398371353 105813932 171126628 740839608 343921015 907622577 14685287 372104549 803321610 69851475 513124343 513630185 528556297 328520278 806563185 920377034 889716786 797240899 124845369 45726930 605754574 925836904 885277108 655802903 858092454 681171936 761455197 440154356 834295573 229322377 313175716 463113489 524355063 483233293 704451349 430478933 407527090 320286938 249442867 757086196 896988725 334362923 392402324 670224241 637823220 777743357 783981776 166568330 518471155 858431003 452468363 71477068 118054835 440973076 705793902 579217167 918311234 229175363 32981804 314538347 935029562 14100930 255254401 827322951 237520055 416352640 70831404 176606157 810675807 647418409 875824888 462012786 592735584 507841590 211748024 611199733 423135347 81735912 72195656 441834839 669542611 971757896 148202118 33504741 354159943 872217895 978743904 882296627 325865246 362715673 43034054 746361373 334079791 364810368 439252149 323931336 932082391 955819145 541430828 702640547 593840890 623802141 921250103 784732252 378837260 390589689 406557670 533942517 338816510 814923163 345209432 628513454 869943122 605143115 119478699 277233944 22222349 341050140 234533131 487923458 177059258 593826277 218889386 237064589 150542709 652788037 773037763 866617112 395211478 718393765 69870229 401154645 427452169 833403444 387640173 893408563 594420665 242553324 779408287 162967027 259088412 221690510 614479744 46955541 678886387 537848738 259081848 168659304 263241857 560335223 772095470 529005822 774561175 564431396 295485525 205597751 802305161 602859147 405984294 357464500 555091255 533307220 197637350 825960547 696280327 596180465 719099420 876089974 200873444 210779542 909058652 13178476 687344458 755642441 31479362 566719494 955874613 34658765 905496429 676542292 255476006 56507060 434477448 531219881 730816820 625052505 585222472 173621918 573550321 757012182 379396453 111199005 882180728 316336154 672598431 799469647 227983221 23953619 28235204 799315110 427610643 616704631 956227237 545568482 962411017 436330311 119289629 584857862 938990996 409037645 140577034 641832798 827000958 164566361 341359197 733444479 652712210 673486337 906989060 625350467 208489766 841320102 248586490 744602578 420811035 586266229 172414273 699570837 697177812 706260823 893449957 616975939 479331521 772588296 613438709 170154965 857685720 666909192 679718543 738207633 293953430 834560672 808818643 860308994 541602564 700379105 215409899 360881409 657179057 54973087 98211593 530514596 448743340 387509372 869756265 654088787 741216668 220589282 113196621 868601784 615196066 266670592 305976316 900198858 452033646 16630224 530862542 832831426 509000759 870150928 790797080 40458280 1374650 790580808 666169409 680723911 111267132 37015244 265439150 873187503 345067406 950757809 292455639 755862339 145590532 172183764 646384433 22609697 516765311 789971941 335534910 133435960 524161635 18511183 875109263 664867263 573852063 132276557 674099631 826387246 419926695 418805469 556003645 896940877 477231228 341851335 779240665 279364901 802646948 773147292 661608237 190280458 626513198 368636854 92824555 428455834 408373165 417164850 663796430 437936314 639907906 155171836 978542746 700721814 324508563 542271938 897870873 260283553 697182924 633733628 521062681 449659543 384497832 508722668 711895929 110028669 508325473 484776601 491237913 476346014 647706301 803363795 568324579 270083219 84675340 870169392 947202760 985306674 548040743 128412439 393818823 841438626 497796966 890997160 629289695 328394576 71930293 20757979 482902042 481114862 511171197 72569955 621607563 207530619 199055033 511329473 356247117 573351739 675253220 567739967 866359937 570863286 61069574 205601003 221438033 141522887 232256941 581424801 523498991 959676293 393371887 147509244 284603800 872755284 279268971 42891113 66067594 320331494 753240388 693861910 300440085 282211113 533390638 564589307 72811654 149505373 545807195 185401817 176625720 417902853 625628553 916639800 652717200 477174251 191372545 299405928 9337079 425922855 333509518 171478661 345211871 616746004 565019273 999175529 240225217 170512213 289626574 562054591 87247905 838568920 122485446 658010871 376598152 861311953 222915423 546549320 158171017 160086971 135827724 169359798 327387583 796630363 306019279 274531080 834297546 461324476 208110890 835866828 229570647 358838581 741207342 792632156 324566807 322939487 392828786 553776601 701908930 507884323 356149780 870111015 975262750 388476070 360201402 248635642 941871603 804131173 951799185 563356877 743312916 317555220 521200718 35145944 789035869 50745020 339725621 338557741 49139116 555525032 222725125 384601234 522770158 579922542 661412113 797698473 60318743 871830761 988927022 555150284 250258460 602795579 787039675 597615140 75065092 419295186 735682461 759164581 306757848 556928100 387506754 403838722 585580713 625421035 848152995 298152385 525385618 132449195 264740922 119141157 608601014 965266739 15640592 84382271 276445503 585913684 875173811 272282091 179856734 610332716 835428152 191848900 751875407 51636000 13151040 324687159 629011282 709899226 508484081 65739379 910332852 53072720 945873909 928875374 639368135 238650046 280223109 902252778 623890656 603424934 692497249 77122928 834195816 873562072 508123084 829169230 789546952 901328999 767868311 749939872 887403886 347627183 966862612 424896579 624709595 571502674 397193000 570805983 513214858 921130302 280042548 933130980 295287049 413687977 171413799 816419983 106269162 907681292 371454073 259855579 29805001 686661678 175811878 711911569 678845253 568774171 997913017 209766213 807928584 740560935 689921848 526314571 935220425 820890861 89691713 700623812 575852093 964042833 537698798 667998107 744591400 398535295 214865128 651505788 946506582 253640431 21570651 419758307 119464344 202525528 476624638 305782287 528616137 465014468 28095502 69526791 863642569 938209403 780824148 449455517 787438979 688050450 974098204 753347944 782826474 822371175 812050750 298625738 933162745 105523099 867343894 157683691 75619760 676502556 532854924 303177655 346562332 34494624 217787407 654120173 654052687 857367842 257884050 908222214 740528736 783288549 41555606 129788753 938412404 745689462 108867104 845212634 579127733 850902955 417965505 852830332 77686613 26975901 854529162 742097876 824141967 683488947 775808542 324328014 401970851 61964439 189655458 935969046 863380188 530171966 158857923 671170345 573301645 937426407 285128376 243185220 252641041 965316882 825811263 215833584 858664648 947400078 80320927 903409788 312396833 560149615 460851622 392467973 594512264 439923472 461908137 397078884 210197371 764718102 228296841 803170119 259627386 675128940 660661928 113498908 47089426 38312522 660084473 869136923 356097236 668935720 599874798 544106566 412471131 497898957 245923977 51690338 915374150 874834242 457151308 452305924 741557061 101247456 926633290 776943232 506838274 871506752 960741399 33416697 933848128 202267718 729618385 973168980 297902780 376970273 679492639 436231748 437239874 106256193 289633071 827624515 584272804 678307943 926660789 957780365 679166396 348088722 920680690 178709034 134190700 954681109 714750381 756661999 467629472 666625151 760500017 666602097 683938375 156672428 192181078 983819793 211258718 985281986 562767994 276409079 309255910 558676014 991874180 813367571 27469034 123231141 68527075 544926236 620970109 483466016 488202893 632614550 231135415 55073510 321974525 945972935 663485883 621521795 731938106 908628926 425607092 946365129 980851158 946912342 655115733 180555477 280441061 493940780 871362900 463157517 561087749 967772332 202753657 707274010 165528156 603951620 66694026 436199414 172766106 172766764 197384156 361216216 675063026 433859044 14758601 778989126 722317095 555825078 162399922 206424333 659594875 936337650 425943553 750249791 967717820 356258993 255193640 496960827 674871108 732571855 928850596 946635426 137738736 617225463 303245813 897718628 794172965 235564955 101662884 952321203 985258193 367206129 1633350 348062730 402540139 735387128 589128820 472364595 734410738 794845565 62358992 998495282 8677866 892288267 211548422 919018082 923254116 518667263 498427847 212305245 948546292 950696053 331886026 72672004 719212987 128852054 414318553 937289096 335762012 629857364 406357687 534085725 179652616 421397736 132949560 778855226 289817972 62621009 919577656 429380906 57703389 757916310 961147288 906291062 940082186 300590217 789280580 944286387 130032972 38902976 65216300 787868090 589943926 682715039 865594187 35516596 283399398 461285706 557660837 357232138 637947270 49308852 148062784 701191538 801510849 83797143 343747634 887813864 225077389 591739501 791262356 427189681 979684200 710865796 357754505 977636695 604829020 487598059 508031803 983471790 893905396 273985912 86520539 30412500 162509383 704542924 620493732 509616175 653277683 180324435 356592345 517996392 635612191 441422137 34913731 737354356 639575161 906053238 233493172 46452624 986610230 196643791 900053000 314335808 570780439 512922311 914780450 560593491 840979551 649212337 779197288 777073879 98769884 72451748 807432018 35141420 315366120 384577153 695026005 842416630 645119841 936229872 105042167 580674083 495508649 597020769 931194815 431351269 550073520 597811981 118983233 504422326 67366641 267852276 788889367 362071391 796675939 260325598 923035106 596094187 954014609 210754139 184885328 573219757 391678343 603104965 314353936 369125697 913642714 544150841 533207774 717832330 212441004 636402336 470763899 282623160 736792995 45212334 46620851 923506238 27171051 583715545 728657748 417438680 496139067 107154270 337570365 675034506 812624081 70643787 65274188 895515038 306182003 293168234 929027696 107323311 997927793 824033369 99151512 830491024 9131679 205631348 159855297 557268077 163934554 815113446 235589353 57764781 252146063 849822881 864031 476860423 175336356 523012182 213585520 909587062 52861332 357527693 729236986 839924033 676863966 802587530 329141217 454399217 725087366 785461855 753669705 234943837 535264794 922383843 862536297 902093469 608752816 704157111 966579066 84559897 36288234 15289153 97172416 782966652 670555882 285327031 51999618 104624573 393384798 591170058 332294165 909330962 887947905 768694272 429792976 117145348 923331340 901817119 952897563 981313374 482018632 328539830 52317787 631272758 577692676 882792929 233097474 323924710 307449236 825600634 115713934 545002514 535495896 95864881 258612350 808849576 316947508 843277680 932961888 790578652 214290074 241733747 980275395 411886890 348615804 495369782 195326272 110573396 185583837 731779463 986425983 789455210 372699199 638927858 105916707 915398078 822501808 998577875 567673572 314466029 477879241 948431428 618887547 503498968 876091304 265880629 842995110 164437939 645493746 587661647 8574517 984856811 448381911 159213070 635137273 728310846 398153736 354225075 421543881 665737392 81048524 570145604 77292426 927495056 475692003 62341268 765043493 577862001 752605594 248247608 239230094 232584495 628814286 971683730 669535167 700837101 583436247 352672204 281171894 170101015 681612959 412613843 381366659 887611748 315731347 888384864 317263158 362795982 752893351 502075637 848694505 584773019 62130780 576009431 933220798 520412756 59308726 217095450 836515041 356209875 382342217 956436885 191971968 870302253 297469987 776506598 461145818 412534989 454789609 423775608 225856815 751544664 881295548 676170874 410467019 503720906 329026127 859484388 304324093 476004954 221025236 312015992 804324131 179931793 593922829 909842110 446804890 220026421 805193532 918576132 785782995 602739295 502832693 832654436 124667195 804043369 480206665 775079613 890678607 726345975 648143960 775833016 150288016 100954361 454722763 899064006 96705161 104194717 663064714 475774239 70849485 870821477 408416531 792174275 517446898 111162899 711851613 390041465 947987872 226142130 753508851 110972882 683349887 689287832 964377570 201063465 176539454 527734881 70493119 180243353 227065756 788399600 397148075 116305678 332853339 983187058 256606536 657907768 101061952 633708637 201550537 800085647 194659108 674715754 539794912 961402960 359175388 919421600 400344783 530658696 289610318 826573643 703375707 43033862 826710883 935677949 205350862 469496161 423015691 193918101 162190343 96147960 862830659 73794100 687752796 523141112 34522892 147404362 858523831 424698188 39392624 440484233 434143111 31364529 164766340 377948397 442076862 947458978 468428127 612079293 973621984 371791724 669623332 148931968 202361329 280252447 997419263 283864849 661126268 467688078 669185311 965882757 486277277 877374558 763557825 261835847 592306927 117004534 872451879 560074495 510671767 329221255 881703834 614180513 242042692 760946441 188394093 173035117 797592623 135510842 534292730 429440738 109685522 114159012 635296163 730771155 235242553 560047514 892883155 196255310 894956140 407698480 366776317 359876018 476138501 540158280 531934873 144768164 18505696 418961033 640687403 589421838 22282342 138369126 46806586 127078438 199968901 631097109 430919006 174945129 225943215 783950742 718207021 488280983 363666406 850076850 677358410 471448000 312022193 862076922 343379809 180112440 556781082 343887046 866768930 87755164 762416828 409832757 383005001 924239311 842529204 223664433 82673557 218227963 924335014 390337385 752504276 229211801 496425411 989302357 828025303 610822753 327230143 41234230 208251257 807797593 332595163 868420884 214006683 139890380 919583704 16383936 764053287 347224401 323076619 918201041 477077006 747771842 857474374 893029544 929811024 962137668 166585065 747931501 999394024 146053445 251442648 941900305 817671910 141209718 528252290 637186890 260258907 678322132 716597985 316433050 752352093 674749604 705342830 346439499 53379346 730497140 727199282 873126761 11839653 226632213 457647802 36172497 145428039 268322468 643332638 736145438 360492592 313281160 474022396 472917437 844133287 14976619 760916344 732593884 434559985 460590657 971521090 265771122 703831396 926361158 193106322 601586245 749169755 538629630 720852771 584187349 568595507 318594360 400048188 19178873 566329948 413789446 850004652 258492229 335050052 987709637 893989321 786378779 132664680 78237464 497010032 101657762 271697994 80661740 598046986 394368589 820243316 731975287 82626181 603292241 313908601 84217395 896901972 724761265 526117615 686564836 357899641 554746165 660673405 504938905 673057398 668573291 407783627 94966947 786152028 926236333 480368012 68653728 63195330 390014746 549417083 417494132 249020870 404256410 910034776 536626509 315099917 713273569 618910704 515617690 804443846 109896036 136997650 10241053 549506215 352717922 136788380 229754582 450420460 620138985 313508719 155457559 545246561 109742785 639070323 446015341 315690063 177638792 241742748 538890424 367467407 833774494 193370596 39846173 715653500 163377192 82408270 727043079 993976320 909497115 933253092 765698602 663383433 967564330 522960567 824337029 507320328 835547 747427554 185424215 989978115 342760560 305508488 511000368 184862589 805959421 452286930 545746914 546261249 47091803 138911220 863575950 954691752 814515750 145950758 21633938 824739091 408409036 336772268 911197086 405913187 120139128 627337169 80851111 445280075 454232358 88685796 32647143 234234365 749228436 699819843 806163427 809938746 959044941 416881484 218766182 591029575 590402972 320433004 735534214 548133107 254734752 338420502 136514975 324899476 706737972 109907395 863089749 618643721 604091395 718718453 584742548 967213239 838919802 978054199 652187536 777009292 622179543 698948120 672082631 274679553 761267221 494609721 232500986 457668881 911610622 558250039 454993720 239448387 9734435 343967167 263331797 428724903 896627162 487138174 964102509 981238224 207014215 806332214 845058018 544949728 1283919 433402276 606024548 185493372 589097123 625167765 40494951 587246545 753487291 41103063 97243555 406549909 319381465 311567689 698726175 761221128 593175554 450383306 322150697 557264880 788524555 754019145 331738193 566802586 472333704 198074800 805407606 68893406 818754780 748603139 129643711 105100824 57913391 593059900 855096979 996241201 1311853 386681451 699133607 999618452 486771797 875306908 429575419 404259386 75108192 157716977 547327184 707556513 378258652 132748423 982788018 455177677 579880153 587671179 233423480 699055950 724840236 14674476 775662142 756699706 706634358 481508262 514060133 779319856 659850531 873796157 731834012 520600150 98415197 607788856 678929879 745260633 925841185 169019629 227684177 169687920 132208943 316184498 756274318 901663577 19406860 760735469 539096922 892684635 313268234 51352068 387140815 912046914 190908740 646240110 7432769 666954344 852630678 222635427 802412120 4866216 118853802 81106982 246101507 679436652 153393395 365218431 439397744 514236063 934247074 257733955 299243809 329194423 488637888 251193610 571744473 884972211 404398606 937352057 573815968 763016473 674894883 96702521 56176079 809239800 919251024 722228731 723469825 585753574 768859066 961678201 699361817 286848003 27682632 766616183 411314500 502783218 414386859 845422270 307485177 918863587 872152922 179548451 864842479 420915085 490560407 230759037 84493359 103066922 185679718 788846255 880045057 473446278 522694045 652301732 32420861 745196271 8833232 559484494 457174013 683697975 504755299 293745063 451271974 511229628 85084539 174424497 798013669 474545513 960489480 151793270 225530861 884300201 235560900 54929675 903472443 913004914 981747504 971357318 985209616 5954886 728599187 316602124 65417214 396056870 548700925 152218312 913743318 658742692 910071623 104202987 966664374 25271509 200241934 85737133 1081344 933014358 981034433 366440532 819856224 650025809 88117643 80868904 420893132 392836463 919850085 262504316 728566913 721435627 519598351 557095339 948967425 3728769 876412435 992169237 637751065 454075511 295138496 45247525 371970526 999879067 532870704 949561423 305501867 810635077 192327233 391885068 658686757 980657746 223847067 779752670 491162425 850886952 828159408 479431761 805331482 922680503 78036408 848060148 519384389 907662706 873109938 188934756 291164541 638250075 53398120 530386756 801142225 902253559 635683689 695251003 565826704 542745426 416151567 998397692 845211228 444814084 86790774 620570436 234730264 453358125 253487242 552917458 6367471 905305457 849975548 641661298 692837202 144939007 497902656 911220727 227545092 977390219 80118682 981230904 862343687 228162647 197680146 463324698 212003490 256989222 470092150 578857353 170919537 292329802 257118561 880630130 296915531 708076695 687038513 427887061 954115159 314306921 879705103 531673519 98665726 19792040 300010474 525529100 588879353 441967046 678404222 573367552 681512257 326953396 495153481 390382756 263051803 240646130 802854289 644935196 523871762 433432969 456748905 276180110 413626364 975972866 240455849 405941297 585002231 896536694 95914479 264401724 766649699 291132036 724071334 584066802 915936236 109722963 385218814 810413214 569585293 201196174 665066222 813544085 141190010 871695727 956018489 83674410 289432124 897265582 663141218 152831428 745433246 55549595 909137855 260578255 379478455 22378490 297346660 701912504 275810524 72984872 872626738 171074046 621539514 836966915 748490708 539887136 452576825 873799660 872138934 802844075 381635978 976758486 489140244 80539438 251774257 444149817 141408239 295622470 888648427 714430989 484746763 823952279 652775622 305787869 865267961 416043972 587892762 511385524 516010260 604330121 573927040 966132523 685329787 535125143 869296863 471458911 649035540 663687094 735191646 591885046 530501525 345263023 238424439 762226464 802044017 613285714 278663395 682736786 478055400 580213117 283015333 829961611 379730439 938195473 279968013 352634319 15156121 19770100 649131436 233431468 688156985 927874848 490550881 582419196 198690374 173393289 694126670 420376604 372408810 703559732 192047843 409458419 270439447 929988907 932001486 952166891 874326655 235823486 612079889 676093693 749630374 472760907 716314604 504381608 208005591 99995570 89066479 31576817 141154845 367104478 901411051 950860905 671323474 175227905 357421311 444793633 336605464 261159253 587251084 28920763 10221271 564227610 39720515 607894621 648473788 799896223 110714898 395847605 260234435 228469810 791985723 896074745 701390251 783878706 9079105 154910695 552688635 165091069 702053356 12336069 544991492 516121343 627670615 924694114 555388384 958390696 528765142 943311893 38100589 976197751 649402646 900887994 506486868 878590442 185244414 895831480 274083847 461283980 867497924 406993153 5783994 60406257 641802467 890280452 490297456 444218289 711961888 108044231 939469556 212480624 571286406 349049032 348277969 842047704 288640620 546837021 515426146 516758683 463183469 627257944 901761734 664711539 23210349 129987225 300615400 47464993 798653334 672536452 704670325 865006962 320007265 778327627 155434470 143355190 33004423 774867361 909729405 34661705 83136013 507014341 722470208 698373773 128416062 119943295 68405762 581764587 894492081 468834841 95714393 89352021 935080510 802775661 900695204 504696519 106201871 921371353 125286160 841258816 917770892 487092802 412821129 299283920 288402538 521970198 118054344 142051973 790767783 588427087 989340238 661187961 861724293 448209252 306627427 80459216 789584786 153489763 419499289 587416245 757312160 512479956 714899780 453977687 18021583 964807379 647907465 427503858 83492990 542781176 908875597 73059275 360287327 581051504 351662273 549740582 324713568 683020515 443840988 749896794 87662276 501260170 640999011 718273218 154820874 892534310 979324379 1981629 271275778 962425337 199847571 781420470 628657084 786515154 39496356 435027491 275073691 157617160 610821359 855633017 759075899 372980090 595306525 446453818 127592845 570901132 651876253 643362038 633753796 931098416 133047974 866872122 98015839 964397785 316778301 872211362 80140829 931724167 75534116 563184082 354152974 987537598 951265008 461735794 136591238 480637070 597505272 358287157 872943649 174407823 125371483 816213460 501586627 897199835 195331587 181304597 507886745 937380124 765824415 669885628 927756308 53354879 998939303 967254434 983666164 695591865 444897115 470801052 954653245 517709321 559053764 259238288 303463737 280402996 57405620 813224039 451684476 602260109 786149568 375852560 471594470 408362725 101926218 409437578 543785624 153590172 534967165 370162902 579426814 951080603 996746563 582105599 898945233 643653196 477847641 677321234 136134663 387258023 39507773 23210031 155376615 811156011 106307641 709954166 158661372 450697948 261531229 736574738 232645406 868161355 500556927 200224055 298332262 270408589 409397313 780449818 17816121 67314753 618313483 223217152 974988354 628178315 441925901 260399927 426997624 240628763 644440641 291918602 344372501 806944807 525615972 685864667 518894494 648735852 698744577 116229383 775643104 916896052 16110185 468121592 294444013 490333514 453031088 781161250 399286308 85446404 501596091 310268928 214633511 249826626 875544877 257775893 442353123 317386346 150987132 932208359 989237388 432960873 188710621 244601613 605780897 681245878 278339664 651048733 922865634 894678352 746692255 291370428 716583007 142789564 142178137 968575380 312585577 582249224 813785046 277773400 250978205 4532685 729040439 584664512 821108449 150969639 777901669 600455312 731397984 488753595 730411278 45526928 676177550 837764280 922646700 450357911 725110825 826395350 919384705 806636920 245348146 214439250 232525201 327537437 40885496 949676788 525737391 973106794 502396432 61318408 347330673 318396246 262199124 733291621 378389051 66559960 457854185 767875688 21528368 776872692 654140218 266391546 780231750 520567218 595688957 227836553 847602739 419022376 353554222 814921481 194953844 21026924 174380560 198182137 121067606 878349732 386937905 321729887 737953767 958850808 661948004 274185672 295458561 89286813 807694791 446221647 271684160 786511048 166726842 279434126 114114064 506127040 729579505 58491820 750720930 30303695 936744278 967429464 58984427 467220546 958545198 244285385 210732207 975829626 759365882 95282877 797109616 121804247 640434309 560288631 623989383 898515904 232169189 583751113 903492101 265775275 487796087 10413320 57070285 772862226 638890715 213456147 261369734 957797494 76811778 701075791 588194210 854117984 702311710 322378155 396639320 400629607 224714924 863576475 633734059 489077790 200451696 704602400 523124577 405632047 429206135 906346433 750242824 284240705 359084050 309904266 768509 992505858 892743906 653709330 778798172 901006131 191949768 50130808 890403854 857073298 328344048 528203617 989711559 588612589 144887762 594260986 287166461 437598738 260801574 222977791 114957293 917649885 378825971 983348902 377228965 59586353 419757186 536063164 63709934 381646841 225058925 986932621 999335785 120987427 3025034 807595757 104678769 787832236 507494400 171930942 507848236 702588313 382502972 443421285 51894161 700530929 939582450 929197773 775133011 50191047 431758877 349457521 220982773 911632436 837129475 164534220 142053308 439701338 100417325 365245671 942096314 196456041 311110259 127398990 573849803 404080267 872356591 114899481 940389000 217983233 919769606 275149540 551071328 911602184 859369829 2020054 573827710 206557676 197536254 464060065 855902430 227341315 756698385 666481781 817464895 16813987 109681436 815065363 921240361 213910318 942310130 770362562 499464938 785782545 65914532 117686353 519565984 21869756 579679889 891852821 544221223 478495146 713030232 220389611 719634215 887204447 900503529 572861755 897798673 108747107 51196022 406404083 254679327 548219464 88685951 981242761 399633230 587828394 143083460 836596474 299450731 351190315 9549911 377961678 16288000 75007091 600157061 11114004 904679274 764102711 891056622 387075425 922355913 4974126 697644918 543516627 455602434 552472863 724291659 458914830 498746057 611805649 597203932 756790598 832527507 613207062 584986603 572190253 897011619 310195656 263694203 340738563 107716863 402042316 568551381 722420107 539442808 710802189 495359888 324953625 54845352 208373112 471097737 564213373 443167470 897343754 680408033 497180699 870961779 490867398 409723143 859009492 897300261 920383927 750146222 170572058 454018492 327256044 736230613 206385890 454036410 637122435 652460218 970485931 544284776 134810011 992574961 176066936 128494551 156404062 478029641 951037149 606104540 522619139 516508126 348870635 511782168 365951679 739919385 430988867 443063286 706684887 168203425 350237448 441154467 375018901 847679340 333411822 972021016 273625675 945112248 49290791 392669209 18081875 70144008 925169011 329832489 545912590 418350889 738600726 555108248 694381032 617462573 346887905 843116164 502603605 346567539 902653993 776443849 415135692 245892253 972845259 612426766 837755600 977584022 289898542 463362761 859561453 842928793 897499202 646120235 542874035 797802522 269929085 885448507 444068029 352355810 233679068 378195130 909241516 150180861 794255589 13623872 774077228 242139070 863306406 817472544 353322737 956222147 189791670 261339004 582791344 165546476 660407861 102146364 475706418 446037610 774243270 117051152 88636221 270591663 270146712 668252786 509747873 681811833 22090852 128097696 881383741 225159881 528136548 111251618 852670706 108341487 963596130 595409995 872788393 895282044 324478636 48684336 858154068 217588303 51108116 543723700 321439214 122080393 650873086 310836734 537438332 383710106 854525004 513514750 463411204 207013939 340897135 381943148 401851803 565996882 507762778 649825738 814769753 958887228 885962126 330607198 189307489 551985789 779343123 182320698 351799773 921639142 399863666 801275446 70774272 702404247 441030340 616501233 767031302 762554098 833025961 961650900 306991663 568066983 4336708 596092689 309968580 59436453 197818180 804038813 945757978 630473770 449736931 728181816 987591307 665222589 145277915 551793775 244399990 687214886 269695603 480857742 280172619 265147516 909803897 216034736 813032055 502707229 241240388 744774579 193208181 524674984 148047539 903166526 615103945 575867662 213920812 238214087 24284671 854797185 585249436 667977344 545810853 316872317 594345595 849986413 320119383 460498633 666525381 386321236 85490359 111581548 672433155 355818952 660796270 272974528 430621505 318638110 945637427 296419167 476593429 359437433 818382012 554564394 519570591 769566911 773508556 406919251 639500420 797585827 159970351 137431114 341699058 573732760 429793204 474993870 274448290 454910948 767209016 313553633 318254288 974406543 759831198 631269840 638298690 852409957 491283405 704065072 288692039 387121665 748542905 344880349 21203636 634441410 408849501 596172795 895201771 221718738 802694329 296737268 769004492 184999713 276777433 389539969 615344074 300442727 789454286 656199578 684095709 905003043 645407926 906526854 397521533 78701980 364870574 983996625 67730355 371111654 752913380 253897037 844966415 774609369 50927497 288187670 793274023 496991507 357009621 915958932 608618263 116834555 865760527 761970 857153159 566488773 914747261 119924386 82893988 319105895 144321650 589680483 987149477 891390627 284890186 785215030 106198600 497710590 684570726 429007597 960531157 932925900 169915955 703733908 49740313 555184165 650741791 984834702 89393513 208713188 534873766 314047357 588021410 830003640 328357707 687472205 553700656 104296717 882908567 102459187 596244733 922327324 51962908 505084584 14061951 482485737 312263033 480190068 792832182 847090487 571429704 739338917 265538599 778484118 449699130 922610314 148404705 984751973 705014271 327250882 681725307 353872316 42671185 678006065 140349200 564559752 830679025 930915331 70047818 928394363 945990315 734185645 518834007 767141897 985529681 528333802 902303722 999768179 572747966 124460481 706462274 924868547 201973458 189828218 478122539 987006151 421184891 137439661 565827563 620242969 530223014 138681138 411738972 280724248 530551379 494447666 567669982 560020207 368489343 374862870 684855381 675604365 589462327 746229652 74934320 67137190 299203724 555909032 321587813 786704065 106588829 706256535 489767282 592160803 387362180 340268266 211456860 524638170 34564978 888572539 38120116 749462210 21840791 531345246 386814864 289803899 787521324 893325567 124351629 977325162 574224500 866045703 451502033 354438339 570680765 910469227 204527626 363347835 716763730 978504805 83283824 104730453 427958674 767144827 323633856 288129239 352539617 385281656 473442880 653416275 971192227 185425269 693188801 157465056 724066896 182369481 834298516 455214175 434936670 548512281 571077788 324922488 828146517 586501970 43235132 932423325 220523704 401877419 301575524 156569858 281081119 927103132 327365516 182346411 112390690 454743275 798466735 290641505 453892194 335489445 226817876 19655598 981986444 252930333 829675659 269859314 441291856 321044463 318306025 724312393 374733674 402408449 332087179 162012573 150465692 829199229 61726488 759860123 964410543 502177241 841710273 698455998 167161204 446744784 230353720 310280521 345045194 379616615 21369279 72446781 947235215 388474091 899287320 782741361 758535342 638963185 645571734 289194872 245451802 256928592 993568013 776388022 350365647 297161010 941623259 296562260 120576204 547360258 202797542 878751806 46053405 343898482 458267805 484012081 95044050 840244609 964193014 681473960 699172874 448958321 304571503 891447790 159839202 278654159 349798927 453120791 959076489 520601201 709871458 694991604 89618477 815447919 662566787 563427883 459186955 69286450 387067915 390020896 711938660 842649443 151897122 16295686 968023426 546867961 540739960 943276245 771944122 264078636 52256067 345542733 885339235 702397830 693839166 425274614 255403488 778140111 161416372 341668640 253442204 688920860 200667503 443393765 624321288 716256459 777208521 129629985 990900128 128436607 189627549 271938688 89573349 663354403 512717905 213498994 244740962 387394796 510877654 982017070 795669673 513178198 988682913 899017654 66482772 628050473 277849777 272065745 915564036 829350509 406635914 938524686 115832679 157755511 536473405 95409097 80497453 988635106 150047070 763191581 89682959 6389142 454893069 155705590 663088591 802941116 571893998 258862340 352523322 806549451 391017011 805080255 615281696 783748477 85791119 589549668 728881758 926909399 284560707 997232640 586347731 923238180 38788881 839689314 370204522 118366458 873753418 747203105 558256920 430305078 994232773 872175263 324162772 172034810 733605599 895930112 167709857 438567348 137239167 646607672 623280266 890885655 179598609 837026048 694835617 718384926 371813007 27238103 949897985 286275346 412560756 332629252 599871689 413013626 130688456 298817690 754972966 296916270 468885016 359295599 626296652 43027782 870957693 148347427 668343410 901829676 154444177 90586398 356331741 408035720 673345918 671711635 445846227 149192271 80843505 833799032 117314474 53174718 758880286 207495567 214716603 599403098 297452486 972032093 700082792 481067757 493215791 893493047 216228637 100172173 966580774 384356145 83108425 121404052 14714884 764506157 402079080 234600362 341143716 419733458 699720446 478904 137698412 675569299 737559956 733780212 329501774 745238692 413620411 197633498 329738431 312754442 405691918 565087279 661209272 182500490 534471215 984503034 4345032 594652855 614032331 542712985 519604214 388974311 826640527 598095775 130113245 985774392 951296056 982701557 718239383 228255641 57477514 681654724 298266063 503778485 466171215 277042823 108991918 285903621 408754517 193343475 218295535 286102474 170745211 758453007 868935885 939394061 578712223 641089319 469976080 284006301 653768113 542375630 839195655 30030353 883978397 521602277 423675780 38202828 910208865 725985162 177787371 205006581 90806527 855392559 419873311 200145532 902387328 72691588 370124174 997652250 551251959 485809798 133445423 141583439 839520639 361321851 421126273 96654179 520813113 554220527 419377289 295903332 295077198 276841140 953811670 176021809 311132402 892887785 192433790 580245090 759799648 332439278 603255071 532621412 742444507 378893173 681209312 144782440 10999723 841788527 935134319 601433954 608731424 41879577 771424256 679425305 394655386 580690420 56944215 432330509 744676217 650154963 449273522 461421973 380712229 972261573 409294054 475494085 184441874 214573094 327280712 540347263 560422075 184478879 949319860 159607914 148984993 704114454 899474323 598369529 953827660 515079621 448074446 716969056 797260116 399996197 19946467 594496164 597043536 391146747 77775051 959567757 463848674 2901842 877696269 390802342 786036149 145366913 500052152 536493900 119536248 334475555 830151011 600473502 460285420 296431898 472298281 640396674 320879567 843187862 729243572 989108397 639625705 328639497 259813681 318206612 986384656 619799598 488053077 33638774 235504158 803605774 411342433 711809888 704641781 780055792 897039384 869472543 819805564 44404075 364677834 625780040 319978665 646225499 707238476 501000515 59333495 552880357 941612287 564438576 394298340 778276977 527818951 820622854 258040828 755947961 606499858 551533178 830621396 421871542 643082969 923159566 734413189 176572076 684862870 922119433 220847663 768640810 700352083 719254136 130535676 442014464 441298845 887440699 610846499 212091473 446123912 315135211 845426136 666478201 242007220 169071349 894153570 609875753 2434890 903797637 550234635 803604821 105583092 240319638 732240672 56882744 89236717 794636008 82797059 274880089 36990700 41590532 337040656 401397888 604268607 53682745 649903796 714309317 851516847 653127072 544614499 685198721 469689237 345869080 750137747 824232539 931818701 167519306 821153992 75120958 525726654 738009511 312714382 743336287 945440600 133396327 892303991 835202616 864216081 295287432 130427930 321521808 14116069 316683223 482467357 851475314 131886682 920180446 718147367 5536050 55830914 510927611 805636845 871658607 122726641 158149195 144747303 896605960 386923460 681447095 277579417 904311086 734734499 902634223 725194765 248928853 738126011 730174315 506657109 767088180 369212612 891152749 298771530 315822037 601342971 556351995 585118672 489869955 478597927 765371623 517098705 695243471 737131925 184447944 465773375 701876120 555231773 215510273 913668882 95848197 108609050 29795510 686002513 112922493 253424761 766115290 327759106 305092278 472772767 140143396 224020027 371579052 962908040 330146837 975611154 106354342 987119795 312252404 4522157 968954413 846250788 816045780 106979379 704540694 16821867 92203661 497325528 504356224 901819803 573595578 34351063 900675274 467735125 410938058 941733234 175246503 414323644 351688427 848277489 397733125 116171653 65886992 722806696 364888098 484410079 32814338 186831602 817570181 886791053 374734917 356080433 621791479 395248851 976514342 26366414 693014925 299144319 326116292 911170877 34250914 581996520 427298043 768199156 307548383 52654316 241400178 542049658 327568684 549884658 701775007 996686168 162495423 665590248 274490290 599481376 513598226 226304837 355315893 952766572 883550958 604588804 282663783 225717727 543535963 871287472 248737375 691737633 353827244 645197394 462190576 649638375 399477634 258766726 202296127 449582570 664974782 383247463 158590256 390954477 371791759 394435225 335766391 305343417 641311590 811727951 738448779 35756576 499909632 266560315 163063723 25372670 75734885 590393247 57406942 812223797 370688474 776485183 187714297 608460716 92111099 947763817 98818961 611938394 880158366 512468724 704179975 969330744 425230317 647821632 587589763 96224583 537536078 105296689 816262133 114341264 146076283 929157941 837716245 136178728 44196716 121891651 551087716 238551593 354674534 618328536 447545386 131531698 424874745 777087231 634921849 636896499 829549557 446029119 596043558 600377624 911977592 178434740 428133074 493212510 206731239 138747386 147037160 445442568 477682154 814474039 23972502 117513057 572436858 101145882 393046741 394368696 72754130 270696923 918114658 985001834 517824374 945508402 839719628 91102681 541188402 263574125 981785180 595027054 11498781 772994902 394827568 393103517 856532364 68139845 388371236 463064030 726863917 240641300 453914084 82098357 469121250 30602543 854736860 250991018 233341161 969386625 565543752 33620051 589069238 305978754 666733350 623780423 814189587 161019695 142362689 332340265 609097995 507968012 392747047 774956197 303998703 684979501 357414958 20818795 126282847 859407653 310332539 137524276 946584382 301056784 28098290 961419721 129012664 579614616 584804425 719807213 433150273 867276776 510062832 940444532 221507479 507369147 749029423 240690490 828335037 162673482 919830283 246848289 515268860 816001118 220256595 795934739 819929582 880073029 223056545 431585792 53431149 367442644 807804245 573849317 299721629 82071661 980545431 218393540 784240361 898232561 718483031 602027943 31826183 312038352 4513359 26258590 944841714 525858819 115465981 643652294 6430448 837282566 392738216 226785089 731784589 381923294 906376804 9043768 273402523 182892573 812802313 635873503 874166584 243116247 614276661 745644654 138301385 513487273 685520463 892069160 678188790 562444731 791836810 980795993 339619003 67463352 466012126 480616017 786718540 713575388 250242572 203543914 592711730 897594595 73423515 361434379 818777400 743169297 128413146 181513879 730460533 926745655 343634916 111039621 559267902 77067688 951102358 476477775 473105473 878955845 59952029 192481908 112128610 122731124 832245091 176676229 97345240 34052387 346976293 342889740 322004002 299918535 211348451 579324840 470962688 293209439 237837411 159115003 214494339 572788851 611030069 42113711 691166457 780772366 700426677 506186101 877914370 915108298 941731839 699203081 899588996 761099203 994304508 997772843 649867177 772357535 329918817 56554406 876656613 825491341 112113056 136331089 896881908 981660481 974001916 179824639 94951130 25536765 319647103 462784917 536082919 34697860 831688180 313157118 999084970 923888168 974244089 468757037 217124867 23672253 704487403 667085082 146520085 511172000 242067954 218753736 229008204 411559353 229267203 610658116 186847837 444544118 475731663 647972253 323269699 958375884 322735066 577329900 897869635 239026234 899760751 511488343 31007209 288672713 581476248 258017030 525355528 269053698 952450610 517212972 67684801 974954497 530577373 132670212 512265843 89626462 102801918 327040209 907335117 377325892 650016969 18321624 425008832 982158944 698420274 884147313 184257164 141715689 855295743 450853618 202570679 928558491 784992690 97319107 696726278 211365052 741076384 642604616 647020693 898427164 986623456 418399479 131020985 782375700 185977936 212109384 364343068 676480893 769005213 739817663 491702696 496421057 797238578 185842916 995770259 193945035 942736971 170969167 697228372 622877973 290822887 730362003 172740278 318111128 295836620 545527380 692059072 314374113 873496717 12635712 182383562 77638904 393165443 90347528 166992238 546415993 838162891 721923426 265054867 165083773 140827217 866493718 656209249 144779948 984964289 604027882 207228751 76649271 820283799 437688242 730090009 270858960 408358418 716900426 881914050 108995257 32706872 501468817 58847896 845200820 858443999 214918514 908500014 951266069 521291928 179712226 200180322 449374636 120876744 501592790 261046101 768582364 521512857 786925142 292690294 541888904 714033140 522409064 333452921 406356258 390672024 698883362 464323161 528648860 753037570 939384474 234524764 608124280 876275835 281612790 301142028 231989947 813781268 824363101 415195710 946971632 602871973 474054660 637040656 670563890 358225356 693970725 559710692 355793180 433351925 303208191 113384041 30102487 66610508 289157857 130469264 454782990 613967308 607180568 861328278 434486010 562550326 134020610 654979073 177207896 484355090 339917058 367183516 179346288 862455214 456161152 345047677 859956236 602269477 509406702 294449404 871587209 479705938 986532553 447845569 378245052 463754468 391609233 926997174 628458517 233262409 376447438 347997459 608819324 1967031 425075225 234211408 584984168 108455473 651867909 618840626 490913754 699285629 289223736 10445001 450839639 272099628 503444829 986191717 328512491 215040153 703267618 234205603 782808110 605274079 760121414 7221865 542925118 847991274 342958731 409189090 60710595 108432491 347688886 95693186 332969192 261677783 549299358 565273350 827661671 277966703 417170463 902602611 455140987 997504572 107311639 58163986 141677548 893237776 977023601 772626299 948602888 195002753 592154654 332423816 437343909 530994673 281995804 86578527 273791520 239954053 484829292 997811048 450735714 598483246 443589911 93673823 532819415 893253032 171107120 107921976 594970231 815850608 724783568 323978813 15065276 106043344 78726429 75766777 736595635 28638424 374710589 805604669 396588263 199293023 292437347 493975593 307417965 941432836 304691915 253414943 261002467 950220594 872700342 974927053 292439920 94543384 101048943 890792743 96252356 66679473 110404169 14810729 474194454 278888888 799603867 542446868 504566049 251136955 489576906 434445307 711255338 390037508 541260352 845344554 477528324 660180401 640246640 243857670 407573251 728373407 527544019 497511725 542489604 849369719 239319785 350889871 810415729 801637289 88209984 74226523 74920244 609579117 226523240 398018067 535455431 196435908 153804030 428637816 484397602 497211510 541013666 304306073 666336723 679171092 766653438 134031815 226821861 430939126 322696900 228181921 783850477 960965180 156382897 434007814 637096456 387013325 629516421 478169643 693626336 642686042 371931914 237352061 329124516 50827101 553965075 826405819 248410886 703419157 135099771 724174057 259435079 871976585 543581730 582128981 212472108 644800395 7010549 803620751 366447365 179547569 535427043 767266934 194885797 855865182 755807977 404048943 340841324 722294969 858155784 292155684 185815619 686165682 334183756 509908235 766529685 132011010 640871364 609082337 910562134 731910185 73989262 824136935 249540619 298359918 989480138 16183722 954595765 641769189 902423970 540944131 647962597 213190496 895676747 898360840 811084206 557237892 888451579 50540835 813628592 55345848 893668087 578184443 245208085 960617262 410555782 75756420 717682565 739231451 374116353 741990145 155126841 315400067 295425211 664088305 314889711 648184488 878582043 93937438 783930351 939313314 327484040 186545827 261430789 532420997 488804728 625346776 496814983 384410161 65779810 157588065 754563671 325742414 857736906 300944940 661145045 313458767 295491643 153158765 905366005 723436136 481698627 198281631 888827435 458021278 581490816 532664198 448299124 574687160 889223060 404867121 805984345 550365508 540778025 268123377 433604583 814443677 512004849 514010980 267338418 956545760 879649957 196121198 347959002 265564407 97290505 681361722 989613577 563258002 209897958 431198273 269347431 144644396 74296846 47863353 590655916 691882240 664552542 620833577 119866907 186256413 965430967 318171996 399329650 39421261 552534785 980187242 188790790 890279720 401277489 90604077 703556012 626194708 922097983 253713862 59596993 368099892 445400111 947228839 289943338 439884924 57287435 412808065 955933529 491183523 638180066 777897807 767294272 722118185 342248148 52637784 497744737 798497877 627532032 338673446 965855167 202100535 286174097 976938385 489654504 663898027 583599544 706469297 308633848 615130957 845480624 430466797 952750215 918927753 304434364 398042350 173040063 476462219 722401831 649346733 823031627 824497231 528561729 819400546 503163747 257836434 747355746 173239699 855155399 457341664 248731378 81888268 28708282 621729158 556974170 442305763 654295821 363083936 564731912 709420147 621141266 700073482 875210108 678446687 993925807 345449326 263683380 707292306 733901891 449073981 206266813 902520389 459830462 917041583 780515493 870754545 988147863 877087683 404654987 952339291 401300685 542252098 856237839 899288720 270871527 61464764 170356186 973202146 208730862 256725642 112543138 475300080 132370049 465128396 617724449 646799517 937732020 840918123 314180629 956281877 644154678 271728916 253539912 441335499 311034929 607088706 802399378 634302588 303863133 744219447 10277578 412040753 566636533 950684919 36942803 556902191 677405891 239023957 263302804 738165263 453711634 544706537 502710533 200308139 290131900 238794515 23338780 662781991 575383068 198464762 307546077 437750257 653414683 981701777 910568526 352876733 846289957 598859916 968625800 588203655 903180337 288065646 748890787 898600593 853981885 227966848 460147134 216409707 229352145 728289747 791619848 92140774 168351223 948662076 622477998 473404192 515493707 308128861 324995825 186123135 728019557 198905247 859271436 478809259 158166640 465790512 250379343 579824794 457231640 35475211 582445832 343085962 436546455 489033708 342408083 19776255 214172071 432065632 222544213 955851971 408725132 685836981 661359538 525128171 44388893 128541956 679762211 57471445 886887846 543328301 271364637 959649059 875152655 585471190 17558565 343982272 328325047 637577333 141618885 90528999 213833102 618773564 216547471 974599180 11585549 587420206 927868445 439344120 378648367 487640594 240166672 642273974 42158202 271059068 896395031 255875485 462117889 894314945 971272927 472884804 66469206 873104640 394316067 183472019 57606294 47577892 957496743 968649909 84052332 862074332 583678517 65380895 781656580 323855010 458581406 340016267 699733522 417812404 66095806 462509567 463182296 876968731 503878518 458456264 674230042 213025190 449269170 750258810 424206887 693059056 904043107 707258097 474744020 529326937 673175169 857534798 947040128 189529351 19027984 292355333 150017556 973316330 574163741 130151618 439408890 677681853 340362934 731360132 263143978 940547327 428546041 791261075 389956130 963869175 601214725 608628087 122786024 252582582 919539718 786532612 550660877 560344086 346571311 470287449 906277541 671252405 671416503 13926617 658513482 432945917 801801188 23263280 555871787 909001756 986639358 360371027 726833393 313952524 353645145 590907773 525755601 675529358 117503052 549084467 724496013 877436200 123391037 275465024 892316265 995762219 633988242 903181242 973478708 827242160 886573250 683578110 264131394 531639959 681509959 258610351 98406263 24633225 932890014 659041464 379857458 177314803 886440791 893717071 210093670 591240209 79390977 594583280 996531336 752208608 391202359 665415519 473441177 643156780 815354779 912724134 998637081 547800708 455343576 254173982 181870874 612555838 272502432 724324705 127369523 960527997 140901294 136293200 840247683 319836454 121595843 623108380 186018986 562981615 88732072 776501305 851267551 389226057 823607090 858867808 542137298 225019512 416068154 733422742 195087811 267601030 371771810 915693098 231638648 226728000 2308695 975476142 315819331 457526081 462193734 244750335 533697269 660838887 88394606 581775680 220465388 349917787 617403598 153847262 1020949 564853645 102528370 743877006 933398999 535805494 276741997 790983757 680569642 411682263 841206486 791587677 16191374 420310453 180024530 191336011 831110666 507151331 737569421 301513706 431636522 70232120 715808821 187715928 346009861 462796630 798278663 632510202 493499450 586204066 943322946 862969724 21606125 277933136 632401716 18122960 108530383 592158296 469207086 759209780 422539540 520178038 488264844 152248877 279992701 958679862 915241389 430727558 719363917 73380328 609937149 422202962 7295058 101004709 660430060 576033265 798810086 828891465 976387063 430720770 409032166 206940032 306529697 885052022 868924342 824931258 450200945 579370113 787046728 972568878 111087611 51518874 285814798 956924381 579124696 434466701 947210248 727337359 871104174 427914335 86677694 553215699 530447395 518962024 195049021 363168773 957877483 115883588 742127128 858937408 807302593 828394966 217358964 779795569 729721958 372633934 608414450 517578822 166117540 790928666 740378560 437809976 936640846 45449725 576796312 693428102 924430143 380516854 481174967 905282363 847451223 921195349 843841761 232424227 704740483 600652203 38440551 182440921 655851187 988255957 226210845 64396989 257983971 77867000 875716707 52476150 602466837 548113536 272605980 745564280 753604945 562448162 731705531 764846327 765609131 828094682 384658741 783568628 310948668 499778029 399452933 535905467 220762411 606471908 577617972 376336727 659043483 200939416 475411281 426639779 305864900 131791393 279032942 514144062 985152220 484124133 912949296 982918034 72878891 338664081 270865592 841370831 856152052 54810392 122559156 261306602 826629774 415060151 421848159 820629160 1636437 256126960 179181171 171487374 691057060 232825237 83735353 176644591 584601325 834296243 214884219 151557089 478307228 202927275 350275986 118270018 668156208 270120991 117316703 978240704 886402601 107554301 573548613 897799112 443869970 772761464 329682480 193827731 488935804 39954959 730786971 226509089 990444291 469579392 8760450 405344057 211673673 149448670 782393453 310106474 540515319 442078842 747674983 435735826 264214463 860866800 656793606 93533772 798867293 456269606 901604206 878514949 481904529 430657862 211236416 21781479 832829736 410510022 751319981 423381871 146461683 693925218 881984617 56443101 874171850 335866398 442793906 854975797 937125268 20398661 99739729 538544205 400159289 749112942 856422802 185122233 14502824 476438898 547033677 968770010 13306849 865571704 278367199 643170013 338162657 165536493 277780780 283572139 748701878 23925121 476249000 62578945 167689840 667314482 981466692 728405085 957530411 567753031 934746754 646010630 933846025 221783881 845096293 706853650 844022835 680531982 435469438 674382932 221680602 216997553 199324385 918671727 679696188 204953496 946642478 485392073 187450265 958589294 541358475 719276946 26406973 326251047 429102756 993501894 150657911 564654079 429581490 890204705 583264165 932246652 991441267 323938094 816509988 955418472 733142570 819343421 764394596 798816219 809757866 705270116 837851862 287089452 682911303 629380486 532582897 58347524 629056734 169554249 945934650 385551181 616221656 360496670 924152379 429151546 149929761 573210945 364211078 259401288 557527601 805103275 590038965 695301695 293525762 17478185 968259178 486342950 458643232 22682698 851152720 247300693 334790808 946981224 766564121 319752036 337443580 2283169 479923839 439583037 814749808 644284127 127331141 926834439 723495574 507104209 273199411 671119672 338419102 969584366 401024287 939055758 286744383 751605369 349102558 187379468 953636276 481982584 189072729 619228415 889905865 430955455 223631732 720796666 36991172 773949665 569789221 739810777 725557125 511008066 428243812 313912257 568926050 320580104 309896758 529255711 344409669 486640421 863315363 645957796 313772701 20816465 999681214 398547794 624734302 959845387 64279712 826924393 925188615 481836700 715037550 661399413 693392286 695530263 917884241 618207565 123282357 816199758 612970360 346209546 649609818 653937126 207210275 223203347 555062836 443669319 732078736 260803091 200128357 477862047 229789709 282471934 99776155 689637353 837514470 165807889 354579468 377142754 409730173 929057745 649517178 904388887 845629228 412082951 847750695 3071186 967777124 761865931 149005795 748935728 939821718 552678262 775539714 170496785 876272698 365500592 454597478 433501466 849886421 92283490 935108212 857946814 720086252 963329987 615310875 251535925 92362264 345925708 961917644 349204094 126417391 356377797 826530700 731049059 735799061 304062516 428095198 376934770 733472306 571237623 700457937 19753223 275782909 1076640 790305531 145982271 891483947 900530203 360037243 835378177 22030718 271917201 425653749 208035840 111265991 242005108 885954457 299750324 957897939 85369733 474201886 203683934 432682874 658153156 699987392 212708100 959990181 514669441 89024583 380832632 781565497 272777293 302485504 949764945 325821739 881627654 705170372 285087984 838155378 949694673 313025263 527892092 917552917 727933209 466287207 321788648 955924504 425926290 877767064 5793515 911038356 27169081 854981502 850046466 230850462 331258448 950780308 50831739 984537436 376797033 921204448 271372643 252730871 112796499 619541745 352358288 227117985 788507946 983016156 438847654 959541907 510826837 647474243 608166157 240128016 532654718 306375238 286240757 271917410 889381532 618513563 420030036 640351455 205399531 237276785 255559661 806123741 800586731 159069064 501464645 964892351 778215021 871121195 925892529 933779438 905969283 83996451 42261061 115338975 937301897 461688007 437973219 269436427 710356004 840056310 468125235 797043444 804650816 974635032 553623460 124519207 9494290 790090523 335073906 63067442 138501654 265407602 383807128 933774257 668822032 358915102 268001252 666364999 583746829 960415140 590073570 124860061 71343712 187570451 645331437 59691366 560550309 230024193 607744546 281812316 415563201 680380045 377236589 41507906 203835361 440072282 434412153 498143202 38935159 971490716 477911492 862734607 966900800 477223940 100948619 838361246 896921925 401884626 4092120 148644473 235541451 915629774 196525947 50167941 689441640 268426565 335694601 396875191 718151677 194474764 903847143 102329606 337004203 192008322 501541944 143755385 102091485 993726862 543947506 849261590 279007046 288469662 618558667 246795506 782546665 520292262 282937923 391298085 323250179 619250472 595391905 219235794 84872484 305317163 335686132 275916326 885958177 394663991 349059098 966859855 340972307 242567271 876491183 906693003 182497630 45769304 226075677 743349270 809010354 108886578 367786384 26327106 15621634 10223265 475635207 523406687 289303179 130085850 74609213 988731588 804895438 427841697 836309692 360227031 870667675 20931380 401445591 81881087 952126210 610563690 997364129 638757809 780037986 258754707 195226364 94535524 568515681 16481934 683378322 957908894 3725288 635163845 940644562 414753001 780988205 186116643 135671287 570691796 642856874 495914271 735685373 530962682 288461862 580054710 477660846 25957888 762984876 204825971 951025306 508470929 48103057 97593437 111567899 503186009 381951857 231528975 573897039 396875032 973214767 178121127 404639774 137538958 220085497 348060107 8594746 135232647 499585346 692478375 246117658 871828433 467832519 762770930 137860353 689302858 478057611 490417646 874178547 333565397 231406044 640769119 903944130 698145883 430901580 654749328 648354824 270722763 617744827 265368924 847115045 641020709 658989386 82145310 911477566 912719974 566813287 371113407 738135367 398714781 181003461 213117355 405413365 775193305 620611679 975146712 732549833 53313587 507183228 617268935 915561230 201871568 698648745 70918266 70599377 862034397 760649141 437444996 591191021 494395271 678494402 409455864 721370879 495278600 76506672 649275511 954002035 329564327 874027696 197905700 401158519 495615146 354239538 130348718 666645250 909388390 145845493 687331406 889192662 493178932 817602682 607327166 729449084 287188342 867227281 727040585 150277698 503860119 195963979 586708921 868568132 855431944 223348485 410186598 263697247 434815558 944266597 959733041 532860987 337010897 83789399 802673787 90931274 290609715 840105485 269289268 358769349 362932988 999222022 609866453 741259176 441625036 482656516 467374425 703737023 937198148 95553557 37352007 630637210 144312330 831881610 681525166 284297616 387875284 15195397 389258533 154111171 830152795 305835879 916947656 850756376 731048800 426750425 453208640 188030531 361589424 958339285 758757304 126865339 529556253 43142933 968561898 194053055 987819903 742344859 541007378 12694614 54456249 863528887 358695158 654050900 54454199 885609465 74569700 724077649 126197864 260747585 745925812 913067947 407448265 957096114 514138051 50065802 593710301 151349176 151078646 738561505 474252456 707953417 353452223 746445413 549098821 790579103 601065745 552573848 391614408 587850174 147625581 815248323 328669272 147406835 421281493 510035957 231377691 242019859 194808027 789313798 705603909 72367675 155658898 731787414 109806609 523678669 278986908 645839889 976972222 960782452 814543135 856827810 220615323 53911849 7418566 442993989 739727351 600817444 796474312 158417337 764364077 459651820 350074598 562955652 33920158 477444940 193423973 310564857 32195769 172099674 526505745 571644976 951518442 231155311 912592194 352907272 158659247 721281330 732141017 344764204 901557384 933232780 819078967 124638216 966048003 599771575 594240588 514356953 502241198 181957160 619972497 697063578 24248870 908251305 535507457 237451288 738176783 51557956 443770916 460519139 898412813 267420493 318878985 395217999 671808470 839805536 206581570 570309759 801482534 148680036 520349683 867133787 130326972 348704899 628636094 664364437 435332709 972001072 861332948 593041825 390423280 677315368 884998888 214716610 477678907 414916467 660257853 439388163 591035430 593786710 207136404 934985519 739519642 797611884 15221568 483646945 13063308 630441103 477702421 467388025 427404790 79853283 375408495 744726814 736815577 468547795 970400569 98056386 858881854 233186837 940139997 487640094 165089851 908488356 967517267 318025905 864105190 30431174 91023897 536392641 164009575 616807174 178915382 729508705 180133856 697283897 264166969 192806249 495062411 603295099 312480564 159119480 952173470 638707758 456405706 325660918 770169693 751268353 910141473 651513367 211996179 987066601 90431205 244169937 286557198 192397086 75542605 367782625 437868973 5694505 73025047 800207315 197427791 421104594 306556296 466112502 769750880 390805299 636251248 615412581 46481235 731670945 557030951 580215546 143757472 339030983 329754249 569254244 102080715 644103820 311397114 432199185 358957404 121348135 480747884 958259767 555613416 631662869 186042198 750056406 462241801 944202518 716678322 154856635 461810784 567477820 606979338 265668465 251859865 229342678 288374378 894271060 839288930 870872452 137086056 976797826 19364728 220053035 341564196 182549223 642494113 579802355 289873989 702019372 712627616 593055314 141806582 796439760 377914188 114534662 814018032 570335248 790831231 97897232 348263537 525559542 953111323 726470337 137988412 402118737 135558409 599174568 308574372 889234616 183748922 723486119 126832765 493590415 448555178 725049306 216848163 855365115 627621215 784145846 661469824 568314350 769293660 840847339 537837825 488638238 495332793 703793524 569468571 613125647 134437261 831185048 166987215 735750919 775179517 709795810 383648416 725615381 140637744 594951975 940297118 386783506 433344603 837802114 129636574 96749728 171206326 438887256 702141184 684257575 532262277 925042518 718134315 884847829 456729872 730033007 959293707 439851426 579968175 616478942 735438807 987890770 169127860 918911020 284111181 645111658 305763975 940717088 427541939 987130941 671555985 979156691 727100377 880576481 391035970 774054045 740993554 130930741 642872857 747596066 254197056 751359205 301466004 922175059 293290950 332664414 329505086 275539296 885078679 29832922 353584811 393760199 494482467 8197466 123669876 948887117 231160685 258359973 356487739 36242427 349309686 370051657 453555626 705618729 587180500 468606370 772219253 612321393 474000022 801925326 48852309 701555641 814275679 246727608 702156811 791912747 302363605 811596556 409338468 608013884 884738593 958859591 374427696 29518506 980042238 705986982 890617162 7956344 737843370 62464305 881469591 495650290 574763756 706334139 53951229 318278828 319940110 784381656 102389359 317952133 944793837 713527533 471006441 457807773 295881951 35135520 621959018 408757856 123634897 790482272 976366339 224350855 659229740 194595176 605004223 582184460 800272876 363034039 730345916 686506034 961859467 345429909 816725531 123904647 883450897 517580049 890923015 436429276 788081419 444852741 177974192 510674770 58346385 361335057 673755989 665127755 647376192 651889309 474163765 232766067 720907583 601030616 162464153 624180927 536942394 38570943 929539031 930644072 999043179 884512267 642465093 136320759 435526796 512423499 417001288 998577718 719601895 21197515 82642248 722322747 703459145 199739301 187280829 920399198 743787270 17302456 909038362 333238599 102604289 268521388 166053604 676877792 234358173 954083573 833778856 323288416 160756678 274006729 992003316 697612866 599960057 259037988 322023526 951578697 476698157 236741076 707083933 606716803 160530925 141349736 606695237 54876482 341868869 392394297 49587472 374474534 189285325 355210083 252185783 828018191 42550691 395147730 991024639 956080940 981455979 955970870 438347953 247854832 944902229 981007111 511724956 856686105 289859862 183520131 98879390 487914153 534288623 474321077 668003995 98315500 45590435 965233004 289913977 500293752 468717955 625876033 164300843 504774443 786481253 816698004 737382573 632259620 534291618 1928589 930774017 826531026 561548841 945346330 863643697 155815917 603233123 244190968 433841741 462905963 840202820 894105511 385313139 114315411 569066832 865109353 838090177 743754994 25023627 474740052 886459748 944035163 890782336 176497726 223378320 414380522 548250443 142106057 663417213 261312516 264063366 687843675 125306218 911056727 862807384 77501733 495074729 425220309 826007920 449368352 744467844 511983547 40961540 19099661 903720028 101033610 770971090 778585714 460894865 79708693 239690018 981649825 540983946 90678890 664526016 708101296 469079485 825746408 381860610 900426627 458892194 71157811 327499976 721699775 274536639 431367480 958590072 233505748 728854938 284554283 836516094 980006908 659423687 129133188 742963412 780813624 24881888 122765070 508746998 863984718 552666503 593767122 588951019 967744721 881774695 108829732 508039871 176125463 725421363 896236962 255450123 801111617 830082467 706744111 330520300 864105268 410796667 992713461 774850057 12457895 562312835 667377770 678880910 594361868 940733329 371054924 410952500 878610857 828728187 126359199 435353402 554089345 523605287 891430831 122072419 154236774 896995709 457135373 297684223 973033201 497149041 387380633 912264421 9779331 272432122 469870964 739374193 874895425 407116574 764435214 674963593 301090078 839174884 647857177 634867870 972199379 165807459 702204563 606123431 310814684 876774065 701446076 801238302 259613319 694564846 710347557 893919245 390086625 407772237 702152096 600882687 299684801 800233463 468358218 808176141 701380808 700780842 603606408 643766741 47671136 762668330 267636228 969243258 466977979 518413120 123332019 881701806 780389836 422992828 647033042 808543401 217704022 446725372 831539942 127703843 30888416 846005344 449168827 197577318 948613311 933266770 563394145 622881345 493647108 982444103 26847803 643927047 259302293 861444533 285368809 845694872 825678103 859764001 673224278 487715933 87810811 847225875 407741371 128795712 701999227 330358049 928493712 382054074 351482258 795435235 373120669 140242886 109859856 788922106 709344234 251342065 999722625 465376531 360297935 949537856 139356988 482431452 713872870 503605585 835444069 379419670 599807764 481866303 176677345 119312765 720364164 400285359 283533408 532243934 446885550 894741200 840532572 582387212 526447179 94194781 673126420 331131617 647069023 241833869 207047060 680589882 143665206 917607978 434074024 91562506 538752105 924347010 786295017 389977405 81690575 997024365 47991992 164438737 50405260 673231940 889137212 777225923 694831888 870850547 357012328 274374946 211782414 975331299 17498098 89620736 820068480 571622926 220371037 8041334 307612590 577057522 948985069 615692454 821202721 443197077 756537522 601728186 567291055 29366149 148639883 506689254 700055155 617230807 964499473 735685219 552557523 868119594 558126768 640971634 197724280 695473829 635659415 714951264 12457819 829892087 410746814 292140156 753818548 500350034 232114407 476642084 212158985 14873210 135871640 143024313 544043302 507860657 70028837 569315746 484713249 35057095 134978721 364517207 443849300 355327506 649915886 256947532 206385765 539968113 338887606 766563849 153051964 428054856 721346153 554483732 801810962 719693193 618827839 671885058 700566115 41998247 470769719 731345516 104347378 72030369 291788058 296811765 250503370 712435965 48532088 329973572 723972160 239619019 727387050 768816400 460491762 945278366 906534608 455168529 840588739 961614744 415095251 453113096 736117214 16373340 174133600 957963971 800054200 72303900 508435955 205955856 378049296 722499722 694359243 589474253 79841510 207381481 279071983 41999320 155008649 280547322 832331312 741190686 460611725 299143183 68378665 523403410 836620748 319060731 433931575 352213293 132054124 154313760 841921922 289829617 153035995 170896995 289743868 163249385 667798218 632941361 383320924 97076519 81124409 288544640 128608546 745997764 811114087 74018513 690644634 947957733 139258085 484385319 928730575 781024944 958539909 326240530 845567133 976630877 673955427 564035752 819310496 272909601 521499877 899132553 602107206 923390529 566103220 688400344 973435069 336482054 321524169 208766021 967302395 248872900 868474972 497751812 960128960 287773397 223235061 484860888 853360792 281831833 281967709 605842949 298317776 568947069 87170216 911228759 744379268 725355759 698739766 94564646 736605329 119435886 874818472 757385553 843135902 213396859 585879020 551412541 659952673 799647134 914749236 227282648 773249356 186480493 175687167 654542234 86909730 524998526 757819919 652741507 710854507 481291127 902346609 15494162 517781689 763611391 416798074 491007325 562469216 139925706 26954695 500925173 617138309 999422357 506284856 443894010 290034444 746681628 107063039 812531988 105176744 837789999 495605132 151910766 80069842 359753372 680497052 199352259 784457161 484363328 520373558 107792971 267080595 240965116 496893602 891483345 372995330 903387066 215448440 417558946 965818032 780711535 922617746 143043730 398605820 137587987 630792726 264397829 623254031 407619495 737315950 552281563 746264791 865084470 496597840 752062596 298677772 254904277 16169399 224306168 522564146 664300443 12430824 87276724 996717455 992993707 684344433 397032641 523163954 184955438 405321507 201182376 249434614 741099099 832355355 295885443 526236026 95901545 476553406 868754671 622106916 221159833 645184186 775473683 695143720 3091766 53536001 387046043 697698173 999325077 808814287 133844673 473555682 74657805 10427560 902198593 803327969 3738369 812856155 333054048 594352070 193705692 289392888 226168046 796094384 964605712 746574817 114975042 371275130 144373014 587589044 391878201 802971857 970450805 599944290 546809403 905845790 995544240 894192924 76959795 524174753 950456927 438967650 249888408 750286933 933821465 846837237 408478314 896179972 235159168 944118240 912503857 342300480 471449666 427406204 133848823 15671391 267297551 272313187 221091155 451178113 391723678 837902711 84307557 670296975 402623415 106963431 239182034 659406395 518131489 165829158 626040779 264095481 482605233 487735282 42200065 390731533 748439613 909102669 471206583 378392959 480689833 601242245 354867888 887545885 328157918 793626924 218588477 805115008 215601876 203517216 456679218 510332170 526191742 251603591 191935985 248125922 475514082 500883400 699402331 392549880 891439372 667642525 562779104 75524102 614973707 840386815 744711034 889440651 159401209 781841970 268883107 886649804 187450872 22233028 820184163 488373470 218642231 700149385 421855302 186170521 168925410 555615643 21316452 709234075 45618487 337651552 540153181 769517642 242874233 856810119 613993812 129247708 52973295 326352126 95446779 429952329 358287853 61971719 53188483 100790859 581368524 644589604 994782382 465891950 529747185 296855585 281926082 654194180 745323972 317401616 338346126 325164324 376499641 704645459 114532966 463854253 129921353 931070600 630832426 196909384 283087349 146762400 567351358 722482279 198681928 756486094 330610579 923596095 704692697 351170189 523416220 49728465 190348346 43988131 42812764 881193447 215330834 273305625 812963668 537670672 133445389 927064646 18140311 874250916 980835289 92211911 885382329 756556484 48036658 898594941 846533591 44091226 881739483 350931608 717298585 665744402 784219292 48389512 28590636 300461672 921036618 945147918 49828680 906432666 173360065 552738860 390082346 992012466 616138205 392577582 628040089 673293182 315178380 771302312 174668513 236457368 84441537 795768439 653146843 595522656 213274485 866290622 209727460 584145150 471499432 440286442 441055717 212167525 468967273 870245041 653267270 311843654 311585481 343654412 71772162 656354601 3442654 860593474 778858136 203883347 923128014 795205345 329681675 104045266 623868868 506638006 205012459 859615874 903910897 367843 776454990 134640130 259761807 56869068 334826963 213152442 485964254 12377114 494052255 18206426 114285103 551667142 825928033 160619611 120554700 84779272 493217614 634689021 222017812 352851558 862910502 112915526 62236011 126391471 699389998 131142794 428028981 23058417 749812279 881347552 934279914 622281868 936364178 572230695 565989633 619293732 696892963 646969608 787489023 953365671 683359050 11486964 159572843 678015815 105714428 399911971 703650776 726803841 388578219 936091028 711771621 34420759 27608661 706201104 823874093 142304280 75219330 983319847 247697246 347119576 173608001 222037554 705099051 170616818 702979366 223623504 573502796 214809165 346556752 6537836 301999238 370303760 878532454 525890610 691048864 595219380 684828310 509050143 202532462 27110388 832043926 790366833 490180813 644021972 957493668 487794476 21131672 245846944 592198024 613882152 566174657 362521837 222388364 601607673 95423797 17219988 908914059 518412801 699424240 315534271 116348385 112300388 66881271 315540439 972482165 480053527 45884239 761841550 586843826 900686289 754628877 162029797 565122452 651616016 354183245 350178589 445210773 290142752 938961965 431604674 290545853 861398798 137417178 161557932 216496536 269740468 247778184 781952501 518407744 291176626 694308717 540094207 656193617 600525424 315024078 500854137 714571505 638093343 791489269 855889236 321862607 295799991 189576244 234475731 113409569 963786740 140121829 228172658 688834980 986987367 753592938 294056707 445586339 525153625 15917615 616832152 286950374 164244452 424878754 642646926 996886983 82120682 326596163 784394890 599691043 119194640 654377105 378586231 950770526 73418698 700549397 824380809 327072364 894732881 516546659 137066554 226059198 929243551 629624599 431489620 541882199 957106561 199859407 439828449 715127993 237513863 116269880 813161523 537334770 481609993 322500358 228087015 722703005 945429029 609685232 937194210 819529427 472677575 960072377 456870737 25602622 836508828 760437805 61569190 731243274 588274463 881894427 48596385 792483567 285485709 590515552 400301635 10704936 426315505 670926813 406412505 190978686 110002459 254214012 837440761 933321280 395183008 297101618 599240314 27080515 880688103 584915446 708377734 545563108 217409808 635322827 521473161 965058060 498288914 375434941 1130290 62872105 48243617 717834715 275181444 30538797 763065665 643530818 343561662 183928986 80951860 707879445 726732911 225752439 592728979 303047546 582332266 281678670 965258286 178247078 582429389 253029435 971737003 370896852 946514936 436460247 467917166 182969926 100763292 165976396 70968747 790106437 719514541 797420102 213072473 397591077 478258274 234519037 781854262 550263356 878640454 838303021 652122574 636039154 24722720 224061471 652269678 434740654 54650377 919722396 116688177 365452515 19924569 438567939 916620277 405646605 87195575 881547306 931798114 846321320 556773900 779917436 17835754 380126279 470008464 565013477 435627461 866442100 767014591 242627293 620636146 840995792 741491546 642633312 295980602 596286458 681873265 628103926 142354478 928659612 830476117 346637229 671605542 942218600 474016674 713397018 938367298 834568730 398283329 350855260 995033192 800759156 270888282 81969180 526919501 663464000 428566115 625378693 196864101 224566351 84281111 445291852 341445874 765769597 395274875 198686898 369004029 271757483 773143514 52643966 609070933 503060163 163471308 131072509 932917393 581843895 525811497 603071490 612305940 464267650 12161559 505044465 127868932 944320808 455613699 585258668 578911573 294734258 394802080 788994468 537183930 148981041 48565227 701866446 989289398 407598528 993580840 487372966 479547794 828786819 620804835 397129017 203284062 830349985 78129648 393608972 590498288 510828108 21922668 976445244 170957034 180654021 48357307 949491047 180122549 511423045 458647944 490213039 300395904 13119261 968089290 110172868 178029381 608054428 273665468 830427358 518605504 755280157 368105953 220295357 2800508 143160834 613745927 180740000 226405325 811342519 250019905 821920604 34436548 26595244 692066027 686717766 287046215 61539164 505081771 691899707 627397626 459402570 954592106 188934816 574388817 238703360 630265955 316805478 623628418 851403535 976609032 513310464 810992781 718080530 99443494 754126193 930491452 182139308 849921223 837390395 850005534 600000902 257817918 796515695 397682316 259939413 163430951 352835233 340121766 705249999 214035559 575815664 804898645 545645240 190890282 761777410 722294343 391296986 771102949 327475206 354004724 224709898 268027475 567875253 991535521 426616608 868397434 804022087 348458064 38789118 64109733 107128710 674521559 676734350 245404007 384810432 204043977 952182981 862697886 218682826 901318283 603545752 181178481 169391108 395006019 103991054 809528134 65629780 402767327 203235375 109660884 507358504 643186459 179818255 583237658 189804662 88917622 729021638 333966169 686722749 333667384 385421177 1890590 463692288 828808561 115388751 511657791 935062227 628094714 506832764 17471957 263210822 845980786 550686011 700315716 58191869 700254533 418336972 910090814 99711769 655532444 321738365 381107377 966304075 916135286 571032988 577615069 716162251 307446673 189328772 685613892 64980563 23843445 589264539 758705333 766232109 525834098 663455561 83064640 602251045 713789857 699573501 128034116 302760850 62599393 774100790 945152103 284734547 101669595 133278324 352942226 259902925 880700414 370424640 968069370 6654703 905605254 552512305 311528220 879855150 741394800 297087965 422725564 938487434 315305862 402124775 971838951 383480456 335187031 421253113 845243376 382204216 543995195 838377927 91404402 388627759 193644626 65060617 334162773 560840075 872591238 966361731 134706882 100427505 520723334 180770047 617576496 957920914 586955978 475662414 646155609 698333475 786840724 144287820 774323521 741130210 988062188 139322843 969337143 738796437 87346848 542196195 283371467 977015181 598922313 92673624 388669916 408942234 572573000 801780021 548663184 677044770 3661255 397124475 88576848 774964998 950219955 395354676 750951634 437821110 748089540 807619956 503735312 201383464 590550396 333360981 809022035 970941146 168312358 168396022 492907810 994142163 517094093 729982852 745380180 737902753 828015437 264475955 714629636 489245272 18001987 265094715 591281049 85855387 889230362 391397853 879854267 536238218 570121731 396822373 502216032 995922906 13754610 657744675 657497030 829308349 719128746 725521268 446803825 145760755 543031988 467976122 117085738 813274049 537793886 940989281 460777737 252231925 424477380 627036375 461596007 592245478 520318403 724829846 612994026 368399730 994451714 299454501 497150336 632378369 173840886 853888266 887274587 3781759 652592084 716302811 732476664 539773539 774831772 549726511 248400155 555817899 219604502 566607017 481615566 596489694 3185366 920620532 534484329 796741899 590757680 6624704 337876614 477314756 672215110 495154892 360578828 401591085 395844865 739979991 618829349 463612391 524671758 100414891 272587330 548979492 604451818 470310427 461866022 48093850 191247826 659609856 733466064 857528965 202501326 780161087 260499857 854842029 753594288 996083646 396808950 483488094 900887824 250275956 545177059 474089587 289909327 239097690 596596089 812728391 662635155 329514096 502222626 806465727 810562508 677519811 335246743 655762507 8153013 402539107 280774608 401383648 994952909 82634091 974140949 975821054 153497947 812893949 964115693 954367661 57148016 991790404 485747761 451860598 35843302 968922482 445284349 747478130 850591836 147416256 442285491 355768641 188209721 315137906 551030014 24676614 320045230 706626514 759720150 148954224 535199669 578260786 750398070 239045049 488487436 547270381 72892002 829598617 26247740 614921572 168585062 58260059 754516885 643078401 247731608 267585228 388125488 583912247 956502865 254143299 64556269 469409152 970507321 208033434 77482100 292751966 455818294 410890557 200393780 300791901 319669381 714925080 800049257 653221133 274409626 20117408 802016270 521783817 324033854 143688405 138921969 440654834 89820543 814745660 132170142 191039350 389658027 973149410 75521647 30089796 881687650 986421603 444315779 893632022 399781771 744496343 71295426 114261426 647830861 417775590 180868321 395136991 93212447 524145598 613375056 890650734 571330235 580239128 785413463 293070140 141688617 983273777 87181562 598710059 870135216 706309836 377766666 816441125 369269994 884818234 174785313 712823578 495712691 128876370 353962397 799422726 383844392 845652595 284043942 800786414 433460927 901187967 351961390 91897049 36149028 543440870 302843887 619355096 309579606 421374625 530683493 532998408 274645149 485386540 855093721 19825034 311069312 869240461 279566940 615382666 669163479 877156434 286166984 1978937 889454524 503174036 999512253 156137169 928174741 822436847 364297630 342280594 486337802 278984840 227292579 889754571 226460950 597847823 45944257 450795979 634073329 906912442 146554292 157327341 509260830 745279817 3489035 164663189 94610029 661886975 395275282 671352361 464022769 398190252 898761957 997025824 490983172 303408807 628008031 864165360 239360332 592425418 277612845 451960609 620823734 395137922 225493692 615811383 467663733 243565497 138311750 707055303 327943687 282032101 536082890 195434090 187706925 657261062 805866259 825825733 433790455 213956513 430877359 152625280 956118197 982000324 643504372 571782479 79933446 251768585 889652999 306479339 209584336 855151240 984788942 832342292 696290877 910867693 200295673 809802651 392601792 99172451 951755777 147397963 788366104 530152095 694905637 355769601 101902662 940882914 738360942 323091615 111914907 477140980 258852013 603354641 133807015 745364254 167996536 800873031 246318409 802051898 613910322 918607420 758282657 880216231 222553605 412925427 558436896 474268486 311390938 962467703 848654200 859282317 378554223 997333462 140965542 800349547 48652354 625339951 206692846 370753377 286037919 334668450 86730716 721073526 157190801 840898905 145307717 442082361 469956082 182215047 904457029 469177791 603678053 478085223 387159614 209276069 465355343 184188986 955612385 304249619 257159392 910927179 39806493 535382967 362770 954463979 235843891 506942150 928053159 428996213 138980515 304057600 293041955 713380428 266669371 176015531 106007769 548524763 488354576 658008725 382180833 185219472 114538623 729316626 90813977 378843627 648374569 686399235 164315948 147840105 168599804 762426062 323274634 978525080 822365487 577945953 663289706 307036937 998207800 555950386 840075214 985781845 629293026 339747135 507680636 448699425 915835444 558939151 370347012 220935954 22108294 194101935 177130690 401862882 215723892 99002807 960576979 636236612 242177759 181140034 619532064 687404289 496674549 810179323 157162841 846548700 347474730 410726668 865838327 301656750 788034365 534170415 991231290 806872652 870284334 296178335 253149483 812545178 331718989 294098466 324349591 206205572 278552875 223179531 430944536 936106492 105976486 798156843 366820115 223806712 16017379 145567459 367883432 700468864 128743242 717353497 965464780 857989531 855498388 138908472 585266232 310039132 240330174 933510971 998908010 96226013 327203337 181838238 394730668 710293568 689488640 341610856 123552012 534700465 685288827 213814311 915457892 815290719 755990677 98558192 115212884 348560263 779526833 760341347 736534597 879782249 779147901 147527332 628032101 486110291 400764397 206919780 712842159 706204306 742288698 144246745 34735071 785115780 109408748 810231999 615515779 387272589 177971152 628023390 969244647 657627411 744375289 94001282 746642980 957438344 680055232 974816902 972035612 364729706 554916301 879831109 10822772 123895354 188790027 643426594 257253025 691545473 864094126 384976147 824740312 616253394 986113588 659154310 786310681 363935175 178852448 681117825 368541484 790933762 454967356 742339460 852185508 417550126 686276896 878580385 85594072 125269244 751784 313028460 353800425 274107176 932805557 38373893 727437243 479610740 319855990 466049553 170456067 557799849 48447070 636005311 322948919 672931995 475414826 31501509 350173590 398212385 110571487 547192675 960592684 384914721 855534279 908318043 967589064 877313666 739084150 290283263 394534144 461462585 285582284 845281314 417012537 526214975 730555627 637639975 121592468 181722518 347459644 478094320 779735304 739614536 30100603 3660525 577066056 454757227 118083228 173812245 702122714 845794066 824828648 675266533 534464257 773307494 774111212 720551522 114164689 678651278 922278265 127720989 158001182 2480061 245903789 894019370 289524108 547877933 899759595 590139944 961053058 215526176 774801889 405200191 534228019 828218083 915644546 928474909 78145937 3472579 471477004 747009524 823397984 848246303 603676161 757383 252180267 773268821 613366831 787152664 263986492 583673043 894722985 118752379 912558512 816700427 792589002 918459650 517021287 966397044 604915512 247155084 793236742 957656212 555593442 836866686 240206336 760528627 753856761 396197066 46912397 771769125 56898294 124430053 578940076 96239808 465483172 579897801 7008294 10049644 7544333 545398273 830751629 361029840 101255299 493329050 655557175 735501214 132976036 389734954 707456068 467846804 189044052 163986894 928982428 897376878 556902334 217447472 983153906 993372668 791366745 804716154 899141820 719511820 925354206 673400676 163258428 778844540 681055831 705066028 139373688 190562860 921051657 22795163 817534275 109256198 198561419 683220731 692851760 52089085 769289402 205644066 947407270 118777613 624150202 15837042 190096841 77349682 873496312 209820368 648814987 112757375 14517031 861113003 884002723 443455232 79599940 781630452 589713808 90507472 796226194 755894832 975917215 96427796 481942175 125166691 96207069 111920884 180679230 909923354 870706209 102838437 584426637 117452397 153051405 545974876 855005678 993042678 391791625 356656993 140059919 194975458 712716359 269298937 674386914 377169883 459060413 141802362 590670500 854363926 525363499 141183295 551125213 145896533 285087001 408308644 718641237 16892125 525956315 771992605 287242273 726490746 42683012 935995667 399300509 422152838 549788408 440155909 931698031 719081693 292074719 898883956 295653505 255745764 773266854 945388524 180592393 380667531 79246987 944877820 571581827 172954441 921836425 962868547 711739314 51829531 279601257 959281246 884832677 458082182 921166781 874930683 389304493 916092060 820955613 752312523 439452265 272662000 693600233 91567495 782792123 264981409 163678408 166669299 206579663 835176278 422619692 702157273 136678684 388124988 840338828 960139785 32652892 263806218 58399019 519148384 866553748 12635392 829793548 179232192 267600657 545794785 421221381 345306898 115730023 440896254 532828840 815997002 503416689 667441962 767794781 855406177 746781522 245067719 72175686 821977944 898147194 620838584 426058836 267216700 350524572 785456751 49780802 52082460 115529139 173038303 622946960 980203543 541645061 365344390 624856453 968286283 560517915 672158572 778960432 199246819 527341005 104408097 873522539 132455442 569153333 130710711 676667093 229148690 195506873 253489613 769370072 95453222 830736898 515623821 485294754 800143000 231598600 282707105 379645230 336477371 937341446 8383298 168149051 685929958 686675072 257090605 107788881 400640639 230708800 133033897 257151169 819570924 578057566 327395970 731911841 20593317 960286263 774366483 902051795 904894238 607340139 791262260 820781566 40402654 391000550 849894993 747463063 769334894 283731424 522778196 705928911 741242719 434865110 83071158 138212010 749670733 658315912 521208948 708055026 356632793 555062020 517290005 450529333 490370734 896612254 342035623 42493642 512159356 143567604 505755327 695513045 499006978 598543080 538872699 8517947 562612734 456249769 650528133 759452589 41528634 268275878 958280199 813170082 52342668 972457378 777415099 866757214 298846413 786697117 635910619 543322856 851773404 145187299 46993200 912021262 20725159 876788491 937711880 932588649 40650782 266906095 321916986 836368218 575219518 887110323 756653091 701007370 971695623 726874053 486413737 674405225 705316227 769181913 157760570 84002349 120943554 431475690 422373071 693963735 391110884 379918909 704046819 553594290 162345480 73119071 55287679 32025035 881261658 651054627 893158445 783415804 852707851 235228580 584517128 203817188 370375507 595262538 467008172 252857071 133533559 720996031 306344255 467253576 429133248 86796535 625314672 233010410 381756034 78537518 472670325 294057365 925369367 30177003 409658892 274358992 637692382 708697078 665233788 446486765 54168901 228116839 424898707 466785285 487911101 208457368 735321766 463550709 51629247 11444782 662868885 575543398 138229968 745913111 624052933 392505293 509835383 790888323 634372133 985120861 271073864 958324720 959207210 383626263 896584415 297701413 548512724 608860866 657111002 832332333 229412266 747475701 832882408 289696600 726952119 718596864 938004152 196778312 993245333 771547145 379810821 453515486 862595934 659900149 557107857 733084488 726115514 408888693 997477415 165218042 478461147 222535938 912047513 449419438 461224304 826713564 617443264 747521132 364588223 621452810 508417153 655269501 10887817 598686814 811915205 915892854 961895196 362595185 976947837 390799412 556093011 19602081 156770722 171450077 65374342 212198678 647255867 239698905 246853539 565721794 183193935 311333854 615644177 129541980 774969585 797813736 220947400 114174822 363028282 211287103 889581385 170045223 757916751 510237034 407680151 877169583 84558424 872478016 479106115 4442583 623529096 25291740 870705762 40455999 671486488 170478756 797522835 419770189 808596814 134805828 447651321 978328628 625449585 623268015 856904775 411745773 282095315 541965344 43450032 70755638 921209294 638142495 691584499 600044696 868648902 201321845 406543958 459218274 135070500 288058423 325232298 387141808 6235484 988633282 12446528 131721822 563497960 351786170 80826109 547921944 611577161 689486860 199799360 37551691 507139592 349599211 573848061 351392048 788502458 476573652 594180264 272071624 899551224 123336843 793359679 296349405 959334246 927828251 339247687 451591676 124981419 357460955 764046545 654842495 299194235 347899749 27647858 570774661 390756241 98540445 423729992 121650166 270185901 11702449 685039865 50418054 824871578 310395925 464084404 373400489 105571373 218340740 5362224 960794016 425449532 79670787 109482411 47675511 290950572 990878431 403518184 67781624 524959593 322279594 304546616 925522368 267359585 509079107 461066610 871093806 123044752 44804045 41845492 525568875 321068793 149401011 349171362 640684132 950923428 866331563 2063852 385106390 212484775 439994801 235900360 526894399 671183641 576759561 67254198 47781860 79908127 27920703 729968825 428079066 312512478 724145446 62917728 438189305 369383311 278757341 918251973 865111519 131056745 821231046 800942209 616776435 118522796 264156049 649908669 862831977 774323367 698892589 260812069 408575032 219899307 764776152 298728946 641976095 45458190 731510811 333056482 170305446 313350199 740418235 753301050 207771680 922653327 732961230 810833096 124324516 596263047 368121012 656264933 921391120 617438873 125589518 605271148 100613393 612139082 233831627 253621445 120246034 906082083 57891612 144618975 872140623 351692724 380399998 975667501 659065797 157760667 358924729 931932334 49551935 338157433 108156370 79162349 725533004 125914612 421259557 146384115 953380165 143059142 663750985 911062872 786116424 746573986 327753508 80235834 606934082 290139473 156719075 771143744 687149534 296615575 451297272 471984279 811567001 927949129 784686625 500912118 237463471 151495233 580717666 635290269 216400427 901306723 855721736 165997135 842017243 599075476 283469734 341423453 517160280 245417679 747575320 82053531 562273796 838515972 999379845 613027177 404514568 39247167 42806101 794844330 799737936 761551747 564022336 937171408 173637014 506374373 369398081 733270739 704257372 955776127 197724314 830088746 447566826 228506741 38598363 581769187 830102606 404272879 780523476 593835655 893837666 784122655 134524326 978139183 539978438 523760704 879876530 502599542 797898723 637906581 630337445 615122567 438437606 21269094 295441524 121737741 466542538 997836041 15237978 297921597 855143248 750228951 628133597 756796889 682475519 850310959 727792584 74789671 989950246 258117502 205922351 886043377 782218208 400904246 88069742 392135056 795717133 810651347 26140204 832486885 41876305 774934996 585678162 447623762 887231521 983569349 541724948 837802438 590143667 683374646 535870195 241016504 29390857 236985029 738157997 808845353 873853673 24541203 446186066 509865114 42017507 749595336 233356086 55283484 354594643 962285721 427613429 956949063 563520084 210023231 817688435 180587316 666913749 563830650 220458203 138571919 586445951 44425755 189941411 210104707 61230286 863325933 303044742 781574855 750994948 614964172 953226123 118274969 711796007 532274591 975790330 711941823 781280773 663410506 753531243 211921801 854415928 276489411 586273206 869743306 302395941 219587075 196775428 678760932 705168876 660840458 270207168 951793594 321174659 493285352 152563612 417286590 882945184 784841130 710817431 134792930 579470788 771415916 436339955 918452392 684354361 499169362 330694716 381165588 509412619 75257221 247058251 410826933 267146516 485868341 106734902 599258017 839432694 364220831 43538533 277635701 36122648 329151492 982400386 456045145 87003306 50038702 30184578 26123002 426257574 416651505 310157221 463120784 45353419 217038375 990159464 868509145 454801823 160438446 986436765 223961881 991503476 133429751 187113815 990119200 315950693 293293680 190444016 509669700 535761486 704453781 796940560 43314020 891879129 578046948 275032993 480742631 385112950 291410414 116784086 20240311 752866145 780628801 473236013 592892239 579671699 76562039 476719211 105407914 71078104 114216245 891226778 400790607 175674562 147181858 249296400 681848654 425125545 527543027 121155177 925528124 161184682 179257185 818753160 761716022 241073838 695289903 735175066 23490020 219671913 909530916 273327637 897237621 827172174 705461529 268601011 842772124 499423904 44956897 445014904 538255515 810358632 526723683 826985650 268249142 460448886 348135815 332574710 220104124 807050849 639047998 125660444 288309506 849257099 116653702 905157965 596262505 57952280 567386464 697092594 954524629 423952639 126276565 150291393 805859250 615011568 778276089 794964918 939569149 445645941 58329059 715526165 980822317 170354124 192828088 519985513 713235276 274546191 445946786 763117961 891882730 131273742 810915284 818427023 951106074 370816367 71813766 220463582 902213498 473069463 533431291 509275430 55912755 124141240 562864254 4021595 271327216 270639817 487290209 617074101 928910826 720825482 647255551 37041852 937261024 366191751 224463544 741565243 256913941 134258699 682285561 133249863 936090968 614471216 199489840 460340538 623502336 580469976 561835996 617674428 144673517 745007530 761723006 445626806 157148802 409242391 615027615 28600670 686226865 463534933 494008531 18158385 641827050 545863015 611580849 659132400 662323507 208122898 218757343 549551275 409968396 953885931 665788165 594769842 345698696 779913031 135754198 433468836 519090491 230971206 61737229 804529255 862673216 597856976 876426090 71020069 641655874 313408152 20112824 141193297 834881902 972435220 907543500 166439080 481908092 187490694 831131517 430053936 627392423 858726644 17865646 967744565 234834102 252853552 754763595 78733643 212513270 466083793 550898757 230445131 797334082 887898424 770246293 412785503 276525300 485507981 534256447 200689900 441679604 884745153 894491979 804431023 791292846 467396746 793032399 278087836 443546140 277610859 620825569 398459391 703327674 713630123 677029798 897729117 832617358 974742363 485090633 438144143 352476969 436402769 882134779 710198703 801461659 354166574 635032820 93729825 331472009 78874718 279214203 508035730 819286805 920609548 320859863 22640888 456449776 460556853 90119769 454122383 371536206 16030100 313316191 982717911 323111918 36082356 963202376 809522081 602830361 955616745 309651328 107923455 570875288 657206084 467251320 955670605 493417924 15860139 567730351 298252081 138109564 228575171 780619167 325232021 736948007 223195901 972569305 271796656 125771184 577822867 989706988 241380348 464698256 73707139 81406066 672929341 166027972 687931540 104957712 463237249 152425682 873833818 737904752 569065500 94827464 809825069 729713473 380688552 408221502 186291499 361598527 241575693 201930067 454280765 948165933 556543093 940147627 586116627 884697045 9479507 544936051 822059557 890711304 71400039 8808291 705108660 541779361 528081329 220888251 904904137 579441026 766666622 995722813 887077938 516399255 986632550 251572794 195892361 483728336 676286272 570396811 71007279 595009577 584802870 336188808 665149515 219048355 763356593 689830172 70191819 696665161 492124771 480335285 312082795 669248813 40427341 190869831 658369707 998644582 79021230 739572305 177325265 342872348 951311129 921709785 81726190 765333624 3520093 959087981 450377691 908460712 768722582 178971684 902738742 288788205 778697002 32151455 11926637 273225091 605055433 930250753 500397480 752919220 844791137 592022007 727841511 624230360 78049070 488256953 801381605 525583942 206439867 740447751 815402540 638583905 907192271 64871204 941176847 511007889 201596799 474901472 417655200 695205450 607019815 281662608 166730437 890151175 674699885 489453078 303991587 820987721 174448445 585480405 411155756 966497691 710588617 504606649 498640663 766745486 808540303 485998397 380527588 380378302 833848146 171903069 100193887 995202509 319718945 593064353 135639571 213136226 252195150 977089043 833525850 300001077 296952180 103146572 14088535 140042491 478849659 467826029 984975599 827707769 630561932 947176985 881933266 118892920 317435167 461174140 98580091 136559820 338671082 945346130 376523305 725880140 673893366 615838677 767550949 276046302 434765456 817511116 198684541 96340332 227508296 61803654 462494344 899769830 182932479 486037466 379542892 317395271 904530903 817015333 837244494 322493072 250534459 779170892 665413150 993867983 840048864 534884288 444772756 80335890 697825218 590933367 322960946 306048118 411854376 130625261 991268158 168712989 954178972 371192618 568317128 296635695 513971954 985620922 947610284 996869857 20277063 940759990 502361991 666275435 64015102 710220477 328417731 490380048 884664516 204792306 941752975 757770781 325999247 519997700 282274530 597369313 816839321 269721388 821817982 715816119 584512614 575542820 376507629 172099072 273300420 348967222 842298493 283303209 351732167 13325873 129739588 415286435 45929416 457427557 184820262 269242088 992112242 391269303 756042699 672909691 209262762 404404105 674827682 833028581 318021800 205853642 441597157 939271352 561068779 836686323 653687696 288010384 60120880 362473470 879683440 36899086 894103945 63849332 240448787 137042909 206294345 298394724 517466321 593647534 903691273 313469538 325163466 776102717 549761715 189026703 923726057 942687821 939453038 201117583 668986330 18139813 298588592 109115024 55819290 616167702 673075513 565050440 283012071 932064897 748568327 502829816 376758086 142489284 993217387 360971365 830728973 10122185 900050932 122327770 184248273 703157379 611279495 197045811 412297459 266110443 73326143 296469193 136064923 238641159 872029325 26798213 945495993 31556317 212806693 352743892 737646340 35544960 200696322 62095025 896009728 272222989 273268842 475852178 331842291 977478051 187000294 780915330 99110636 264711533 835074640 865509392 70500039 759504799 156832191 334361168 362139681 356658546 111250841 711903715 904016993 2955048 931325320 220345581 557051834 251735820 634590853 33370141 484984868 787734640 788305865 538686374 207520352 404912302 167593944 227335245 961451252 47510057 507504514 954127954 196746033 424438602 872474327 414359686 561061425 189138821 99314740 63196481 280780752 197145168 614203199 960802655 362834877 379594291 208171488 761377604 515879009 51028918 107567442 428991970 827876345 945222250 193488652 635597743 580273026 298156010 69531095 178630568 57985480 934588120 436912312 665723474 110935643 699926494 55631880 724254399 714090638 874899633 359958117 699013505 680775302 745486600 839550897 505214905 522181674 276369319 308263446 611925005 328957485 865343830 621896461 944228778 156187392 498761706 410483276 413750089 179418602 108756284 588504286 624275491 433272307 534489649 485481995 358352642 491069671 373276077 579049065 436671798 31339617 10617254 365285076 821050259 335569088 962052120 881038702 305932661 498170926 473966082 780983465 56000455 333176730 378290289 505946162 509941235 436277182 617520501 475177480 417642736 762185752 610944299 677776243 521962559 849613297 67886768 306439162 447402724 489983321 12067637 814083189 370697327 938331689 175981287 149197823 596692979 302982913 108152832 445849851 544326417 683029064 552444872 275849238 163035375 252536111 920456580 533100868 97330490 576076976 201798536 249902274 728858922 604342408 603941935 512432149 467165309 834227266 647375065 680975111 42899574 619137070 523343602 395285679 450819815 559774820 921779437 843692135 115773220 82138563 498897731 442409682 9780495 605346548 66547573 504030433 29807625 945490280 844585743 440759490 420057093 933536854 666830499 797273337 998483060 697791934 440027852 311011139 308025689 572021098 925842730 475244464 327972409 501368299 510090091 436282770 519010592 144274324 773351997 92481674 529045414 197638539 481995357 247965559 234606061 821342391 810846603 161588615 18819987 447530181 263502739 579763503 615271629 462672177 493379398 655503658 489443150 826777656 664420737 576241020 406528343 638692327 67539492 55629940 857752746 455824137 653057306 467258277 481552794 527322169 159618389 852361450 720246779 163685078 818821071 496460647 733508136 54400524 809157768 824716426 155108879 901410247 916696462 454483719 206943254 131632063 382440434 721726424 540081723 407865974 1612496 383087428 403131125 282477111 164124230 764259286 516610639 468858892 815956611 40698722 12666580 987163347 363191988 915286022 23346332 509338665 384820760 685651237 843263049 926666103 867124975 690983019 902105083 218902765 757616516 68862155 218044001 845462146 236100904 719227268 97016757 283502330 172995382 221473560 780438195 879742171 994851345 286068309 971934624 271260021 320601634 338376527 869157198 618294240 359028445 679606880 427299856 984883711 221853115 976143662 495767751 308577140 522469182 282653607 458139092 92365495 629222896 719557885 70612525 188998138 370370917 427567786 517362753 624371778 277310262 84259193 316293907 784691797 505883141 472005744 697645350 928318915 841222781 406193636 85446026 244568546 477104719 675163254 331575509 763056342 396486966 846713348 797394982 89624713 286923767 752881344 324081186 755024806 223071575 559247387 461716985 407755431 848869162 562895822 71465564 221624014 57503054 638685413 156937362 875338019 627715745 178539174 48036186 176491890 617230862 123915689 258092551 956614488 759586697 160675528 500511595 718599991 442208011 964757033 540832999 128982320 676049302 153622580 278384991 211576376 142954036 761559204 882692165 258389256 812258040 236139888 697809034 387995934 817767934 736469471 461128626 774109124 535458404 130023803 992963774 104736521 730968 906433305 1147714 210835141 703961355 849793495 410902095 888928152 879066039 461672471 46537607 706578924 233910430 435430022 965815821 761359601 116154634 704434971 792463249 503316382 276221777 443454989 211401544 432031157 743743431 522872037 913494770 543562939 694330322 226400619 69946325 700280579 647310557 736761015 89970622 959772837 69433686 460288035 544117252 211947136 335307197 252539986 541129863 581294908 29308302 95307316 631134891 106328652 146581082 274882044 669477980 649358057 517253806 896205863 711882006 288955148 729177385 189038710 186661587 545131654 574307174 747578615 10900250 868608480 462455575 735631103 895493629 900852600 769801963 299394090 824954634 648956012 157399451 51179867 172692072 445047714 872377065 482900929 888934840 476211918 553065122 741685196 974147883 692758886 491582870 508400189 992863860 205777323 685847203 179596052 157238741 607277989 522661284 752398497 553533203 502000165 376247947 283983476 591303801 466041280 742232135 971783279 933960674 900493789 740772816 470800817 336713131 190095772 71138603 312787369 446160822 655142645 166794850 30033160 780439160 887068569 872385158 49815247 835561955 248649230 287997109 334857535 706601590 684169880 696753931 298965222 338328121 428989517 516965302 194544535 345661367 279698942 68204011 695546735 144296713 251728721 580036319 418996690 181015756 771064234 386889431 548549227 704127271 907635519 297312794 675570736 920308422 358267905 525949953 740997727 472363490 760783029 805915615 280414070 506609976 11786210 400867866 586652745 98988304 230731480 545586972 121752807 677436983 229578416 171897943 560938412 107390721 925554507 561441605 418315326 524649038 885326926 882020968 714992268 639819911 614465580 269485645 307246023 791262871 925102877 672408704 918440809 748787443 360328224 378817186 336131131 70787229 68203007 126566224 37505862 640761880 31679560 329837370 855967457 130498165 894550615 661855757 654438310 506921545 248554056 939910020 89858938 480307379 582860293 33300068 743057545 395862103 878070335 272010613 93655623 504695909 490039661 759028363 627458673 266481043 566108881 937023358 327855117 270678817 188853616 629202737 273438819 420751313 457545503 59658895 311278089 889968884 945216368 500128651 150564317 45428066 417173707 114751516 6547969 692910199 797769552 222963528 90118883 284446489 471739894 540672025 923393077 321658548 42480498 1767069 717629943 147164228 466775365 376315635 807947112 896512837 897716406 989368890 352518171 983617722 933683672 131250590 730222300 813341749 352598656 762597712 953567438 948550346 489843025 414772108 414717524 93688347 97960627 149359508 477328409 697875785 550811091 920299186 153005584 711704069 950302637 869590327 959329398 642931078 537573887 100177279 693145299 41891208 492448849 479408875 863653103 945930581 563484918 849463013 922879967 819553974 666124804 428182497 929061631 741643524 123910237 663997526 646302453 7983646 615568550 227663818 219909291 920574827 393636947 856103364 296823895 878150359 969986714 484434139 274738805 201805784 6999420 154982309 846962376 957023855 824804544 553451460 533779806 240839711 78185720 116017381 910894987 110244598 585069692 921015735 226919147 254462607 399055981 937541880 884735584 749667077 698100656 114113129 421881112 668729852 414392312 446154193 805045130 847050665 830729404 776796167 234317934 749319099 694653503 359159266 158626762 523798130 385323653 965209414 472294892 449225625 584481888 139700253 105079396 506378105 736094312 107872599 533101331 624959979 234541569 87280114 302634776 707850058 107337807 53381614 27954660 434995585 730199361 182319444 723436586 603478779 164118675 514797371 401407204 631434669 49172164 90692280 274335835 355159576 986108445 128912880 398300437 107636292 792735660 665428236 730402027 671626939 744245323 359752001 311213559 648645525 500058520 127702469 199489951 152185201 143807745 501342940 878439309 238129778 468281519 363717842 261423286 108197196 247027358 710170358 996517465 677092401 374173583 207176870 296257782 664296417 934117385 4787266 564462939 9311390 66200924 782971445 185587103 359504188 589265057 501104113 85349400 87895569 384775094 860115695 739560561 390105591 981253703 448346035 891917968 425080150 380403394 107906247 12487600 547534110 993665886 977820605 511292744 51643844 178609951 300625967 723780126 121773638 651563211 350645439 184328510 200582442 790822897 297610774 465977597 993471873 218323947 301678059 531015158 14400477 700105433 670688242 590006286 201224030 682653859 757553907 578421618 621576365 590216185 60806069 860019604 776067315 815967570 270539786 855168052 998821097 459067379 730230222 591815762 225161166 603947744 159023587 779184956 782340712 771263979 508735280 82055048 17740292 581756073 552278956 668483088 978655610 484977535 23871310 67611896 614632999 597067410 6738715 22034094 965370608 578599125 862257690 491177702 218813254 286029053 609468513 316132765 535391263 292364429 354394118 484354066 826555638 87391435 136844334 150122456 277338836 211726279 738393090 504278465 526465352 26758493 200777143 864224998 957406566 210073642 299607939 367203249 894074574 562435734 152332973 276574920 86955687 329907157 725166713 290688551 103915674 118237914 320140606 309373441 301579237 439313769 916322134 430520288 472082495 25888009 793977379 257590672 991467250 662748171 532891918 632374821 132179916 381328517 46151307 242411259 890141732 352972121 588365585 108161716 593638359 894488367 496866852 815509056 321717324 969624440 238821200 852582353 343746416 420409709 219438375 949060067 455792315 384775435 814331456 818710586 139413033 632104476 570964032 854809318 19192129 552797489 110009553 918716214 588078610 507631264 444231332 698394826 223384626 204372877 696163959 54246021 144916416 158390492 42370054 718521746 199246435 96506432 489770784 198817896 678990405 216761138 574126231 494490048 425626913 562366449 707358530 673478050 786374451 791557763 459385607 475779158 966695486 662625210 590720461 425419637 944772248 318772273 451858056 178542806 213977618 370936644 541592628 209102754 762070795 367644191 391531728 22012227 189073769 584152239 264046184 707995757 418153883 856940717 428511246 292775963 723027351 314060954 826117340 787813525 460255708 583596734 210928372 218435684 678915183 197704234 734729347 402978654 152371679 260749750 901753013 825387934 259479104 381440259 200002763 124784779 677049909 827151221 328285954 415150031 527744993 312048961 59584425 194165341 182747121 451285597 310805007 306329971 955614878 775362443 27835279 422147476 355011750 598414160 332553355 572991886 448065615 464427775 274977135 293136244 628545637 377428913 209802666 416241060 917911361 91087171 680464058 170218432 277864896 850633568 689732894 89925046 294167624 425411191 848256867 965430969 627478984 648979137 591797528 273697350 89301174 445926717 889265626 655663904 471340049 524306100 910834762 355722325 973886558 40189624 873094932 798035000 310721197 384554142 156467176 658085734 166742417 196397193 50409600 647802307 671643691 504280159 907560354 688488314 958288160 658285267 95206932 933772291 283081120 583676505 31550890 668194582 491518047 773122614 997644862 174793144 312021148 836472686 195826355 815703865 712869151 420343764 110121971 236803113 461250357 475288321 286124526 877475172 756496819 611165522 910981280 280907539 403453430 174424306 397596942 31459741 25285352 923001043 675759166 764028601 887525369 151218599 938003012 138028131 85377049 931762931 507997498 936062430 365138633 524982781 582406210 520398009 605295888 499821270 485374088 588478405 832315004 552118617 96419388 645039136 117798947 28666914 455397274 752592428 789509027 898999708 104246242 546749594 144055843 912561396 481678944 210015579 821795153 984496424 162890599 424881324 39186019 751453170 131594575 582799888 967238421 632944351 78425980 312648532 238572210 967918141 258305879 233671565 372564741 463549476 89919314 384040470 394409316 249412980 659874282 102724500 145477040 799650520 647793310 308515572 182561101 170687422 197376253 308698730 216044585 292748127 920815506 286401137 573808060 392655801 192814844 378232526 927254019 383371414 983556829 483699596 109974149 709459080 223208159 45691906 476374862 916321252 113206707 546539978 900151286 115145165 234428437 965083594 731594397 649408810 959217093 362317613 135355622 443810731 89047183 603605607 877662979 256764616 535657799 481062450 160772263 994753730 169261250 984053912 299287569 738442659 317387495 212561378 443179271 22728758 373326239 522075045 196065751 741341976 276867546 131574714 123595866 722112939 833998486 87113547 617333994 865500432 839687634 107862974 998863730 960226620 178892698 538182095 620717660 926313447 519077123 471621747 309431712 774230417 718496033 501088753 516016575 426952322 488473 538070741 959608504 18510282 107598359 186358003 880138019 545583682 25223243 540748393 965068045 658452874 288531953 673704600 169143576 328306954 182300490 73390382 580378988 895678195 184003233 521311011 337736375 345097018 986426183 473246125 15471404 900804260 247395990 380415314 643842957 201957302 88815860 828382947 904952348 37199298 900799176 477360236 751255468 289550817 136772485 16843857 217674385 656771056 742693028 160004146 576461225 583279512 612914345 867261436 121169241 668459853 292562460 898552547 632536211 640096067 126891156 102740069 48509897 634772604 218172838 271223106 854062588 349708737 497395703 603289229 301993392 659752609 572655665 734868116 930444790 268788851 575777287 638344183 508723045 690816857 459045678 883924121 525348630 459830589 391310961 733311652 647208885 885594829 560111762 669974928 484065900 946457727 348270440 558341913 790471669 135981465 558947535 373014081 127243659 507107615 555302307 162489428 153989111 863592672 457546962 196482537 191935107 259311736 37450319 950852056 938645000 479209544 486205971 68059722 197836774 422990964 474148640 371661738 290672387 830745582 117794944 210110379 355577545 465825649 196344392 640739400 860951602 829240440 50223759 525706952 436960443 979604048 417805944 51183799 341655915 935027462 594054444 612401897 85886415 512048245 74926306 368663673 753053950 850584890 970619344 34816971 504480407 793399232 583940921 924334989 712081856 338088759 658113640 264183728 49501222 260447894 641246638 878639222 589823745 502502814 4822374 917676894 603914764 468274647 421281012 54109240 472838800 152712081 103769536 484516373 567586908 825966821 102716476 587155027 20831428 439241395 237790949 244683670 883633576 907926432 660987195 176895179 682122861 959651107 262345414 371594789 257695490 493501553 85437470 363888159 649518302 64620935 762808792 359628929 656526333 800799795 685498778 673181524 321228263 830848766 290465548 480233454 245823657 913423432 750863585 775247851 506256859 107526446 630732755 223921199 513803163 360753815 516260773 633554917 792115085 560786485 97181727 619900291 814336993 971916159 971536917 686010308 907569740 701653173 143356515 200858286 208711439 84556768 379931881 312563852 825773036 74951123 501273486 540792052 674317110 384682785 973837644 496390078 419395264 284756783 543879449 453979666 243704554 972077857 280326903 107790684 687252891 287441642 321711854 927590991 589071679 477076545 699919893 985474024 1654219 725884840 780893572 822156906 389319617 901002084 554117983 164249186 500158244 923572874 803738060 15802791 21320325 450141679 299249665 581334608 243925497 318189363 240447287 655028164 714236958 160855487 556674481 648595377 825277723 251124165 104635319 90647304 328600989 147978040 335078046 959644422 788097498 511327454 413047230 804245555 858048659 497041214 585071485 514871125 461456909 161311654 347437120 972519556 26303252 686704433 520656767 760796700 591194624 730601405 505523375 198139842 586787248 63252211 10452050 151294304 902525578 65014594 110017272 653125676 366951291 740514020 374359087 725905314 399280379 732604122 509364114 39853703 497772550 917920747 277894596 99478501 707940645 104699302 651173231 198712337 415254883 950888806 584412227 766303655 587854681 301901130 605017085 779573901 708619813 935513400 483522911 23475438 649988715 10415077 746822450 504484927 22081371 612616133 55426377 889101882 413748650 570696219 879829375 581577191 888723611 832834540 882035380 880789135 911509741 614388493 353570260 292905672 204168179 514328337 371961553 822146924 617212545 689458780 797156773 991741605 679830521 841258772 401206610 134455511 811021114 903361069 832414437 369345980 682727867 662967387 882751594 461902158 900680813 613178655 52302338 74532565 91198671 23654339 623052492 339699670 452369894 178403926 812688882 476219180 614785858 915388080 889191337 269889009 128982523 856518002 723482150 897184903 426676653 485507335 127806128 543587740 557460861 880243353 101524622 546410791 335792923 954278692 956162582 133197153 339600828 226898024 321227167 113696205 840455971 222586350 458550925 447346234 942989454 697145349 5478985 514787261 107837906 926848197 635647303 16013742 980846660 722652942 889327615 529014454 419955649 102041995 123839476 198443456 574014894 523854760 2306227 238553855 24091132 654127267 807985353 789560046 188503071 828022 915073236 687721811 677109271 110383340 118540919 95432251 591501160 425046167 765531480 459297019 919735333 727206861 206961199 568623914 776651743 903716271 52689328 117200306 380889782 805953829 911702435 992732094 50140241 878857695 294794191 468597697 832004316 278293845 609849605 652866169 731262482 558939080 784723491 54798823 914841133 704771904 573937929 466304088 797074676 726337678 924777377 247720804 645691063 216939080 130486495 455852771 49188681 571404243 887590331 97604093 215081740 373440082 732456504 724805146 770453988 749900215 945487971 721828336 715017279 800307131 653104968 711373951 873830421 230237406 322572809 557371397 99522019 807006569 775310018 245133074 253883310 36908651 811561889 806717819 594419208 960841403 421298134 481594712 498973445 624358395 332896413 737171984 960645954 641662869 81225270 236029266 495591654 345294773 996058863 1588751 574863523 25561174 800885782 527732609 395685033 164133433 179267846 537160753 827180473 481562596 491392036 508510440 132511259 419999402 390218202 52381628 595426971 364472737 515469718 642585865 695545744 315409065 64648921 795278963 743252440 480466795 375145503 750116839 866722779 564858457 408843765 142182038 597655172 20546982 142371307 281085953 144042061 551251545 441959838 581037800 952725040 692835127 428659633 348820058 348726454 756132303 500939 432720556 249159918 816569210 556713120 525727351 755554156 184681050 773465323 546936739 541376336 153073751 246516845 349261911 373331262 645717022 745407473 382984205 700817512 706890283 364397384 512702589 34020736 975907260 685140559 986816172 607097289 354565596 657652709 640203754 682510340 821575769 887024373 427074249 566475139 264387273 590865267 836188706 766544152 16449424 109314903 55160861 204606505 183246551 632868775 223979812 929005972 907525003 801153895 351735022 431027404 781101669 282199727 239495029 784587463 247052518 803332503 605084670 178810113 56031830 596094785 34722838 357480064 697307845 268308185 340765841 598725846 76833293 69786252 252110984 844982551 162109644 399110812 634370148 925434081 581303658 570553927 341162702 568973656 429283099 74780375 830570428 210190384 458357459 436083870 360999787 829230746 864344659 355385847 409554269 398265433 380834596 133604934 878066527 669399727 246382488 937630962 733103237 646968171 9671108 298905200 84377644 676649957 296075914 878921528 982048504 80704504 289166997 332129486 322130388 664025870 926225743 373650109 727262969 553953556 301871605 789987220 821098205 270050689 26835589 787920369 617288519 850212946 355577033 432822643 64120898 544514316 345149263 969324999 241270054 193657280 200319089 628694428 300023691 987743235 400101198 73800111 141700697 92383218 914970833 1804736 670494392 621064502 183504551 910570396 221193503 946781178 57054795 956360212 943581258 169260536 367513594 936628738 187635260 268950378 87451070 585927497 184773444 110821403 7793771 512436690 729928947 58514519 889923729 324331153 354963241 414880240 319105430 418972797 416368388 787526989 771056802 803854746 312445943 476968012 996340645 631654389 465231538 242462049 271778389 556965532 347723829 343607935 683594548 441638060 894255296 140273189 501239946 616721479 58769635 535690330 698897769 346390934 854790254 922283436 789945511 865625549 264713089 715879985 544538085 599617059 370749822 690203271 674860168 95045852 752317459 656376532 720312518 352263239 52281395 638601158 638240404 357381037 631537436 935161751 342338740 878798960 392900433 275072769 648179629 715920111 575118748 635410506 460104908 432404882 491500564 863423554 944937776 25790416 76143895 549389121 270650036 673381154 902609476 572493857 621141253 755426824 352548236 235945804 394390157 823658254 567419424 534506927 644242824 77028294 795938686 217783743 459684088 313977803 15044205 902691963 675282849 552996797 713356275 392236139 869854999 661071944 129618024 340133530 36755119 54764830 50908265 314760608 848243850 577980922 667900887 845830300 759728275 740562845 201810144 995593269 90265465 42787025 101754618 158882197 977435056 494436712 572163551 334846839 4451457 816059711 814571669 956200215 329132779 551525173 332722791 678413627 328830658 765639223 701290471 328142641 770102176 754971188 937121782 934692817 570698213 785527082 591480501 278929016 978257847 520528408 853240466 329926156 775064072 513867787 177241920 466875388 173578638 977986834 971578045 187047233 320765901 279713611 170377801 163623763 859816968 803008468 154149748 248681788 833797204 75616732 406384404 231318664 285195913 915923347 440226881 102160979 638086980 199986483 691132768 674437173 1660144 874387965 692123936 628212567 170157245 680805181 570304882 976879463 589728 468544836 375983765 900762520 339828572 857942128 373902858 431749551 323763580 568518174 672068000 246153453 721316427 151656892 339318380 690734371 504150500 609016763 676668360 674079141 571414822 209524371 848606296 933668432 152643261 129118666 285148426 299401360 625036820 730507497 345102865 218353743 339125350 492573825 546583019 805354754 842902963 967728428 663771736 640881837 83635138 795395728 893259626 754624206 659732262 141148755 354243185 966830971 661131316 522720552 385322252 169516103 239113742 647230413 414605853 293057358 992911263 51732479 778213072 970098746 997215377 211196813 168559516 607786808 76107361 405090629 572691773 222103038 333549388 359835138 810316725 127174858 557381470 469148073 818400079 504524131 935504741 930729506 224570274 584565781 112144888 928642656 838551181 390540984 661143164 840448350 88282415 299404204 61672980 879978270 934147317 778948308 191350963 898103721 372868756 88437923 922931214 989699089 482689803 309839112 58364587 633932657 50800795 995908744 885064910 887015405 173997520 815090980 244238217 481677739 435849345 138578799 544618419 824802274 996393673 762545532 382287085 702282184 884088843 827296234 599087774 4468645 362700276 5761249 724598008 493117884 2050424 523931917 551236594 644307300 983625686 865043108 473050703 771803128 275925390 496255591 556170899 953514455 720978286 450065048 665478672 813718892 974395277 197775370 204167648 101765162 766194755 35542800 100284898 913480588 580116276 734665354 894909885 549265427 246723153 155901148 13560290 838170699 321910986 289798902 12213899 182118339 239098396 968296272 70347958 470474263 902676239 243289829 539838253 552535019 237910699 451408444 866819967 660992999 593495874 918573156 806815491 67630013 176996217 552186868 77405149 260089640 544244522 116430856 128538608 453796074 612209802 748195145 628992498 514582478 18116873 245840611 759670359 133951913 390716513 43811725 585781346 73438287 312115611 992543877 379474714 1664167 688885248 642174096 495679055 924052374 838260263 22674688 616904088 642515223 778985194 731813033 747488090 167275805 853753454 4358888 20161465 492743339 816483102 591238310 142561700 908476623 136421555 697684303 499602905 450706327 947002659 33444315 248596435 436480799 802681269 762602437 625486045 616202379 227826677 181827095 685013765 216488194 374204087 978273372 586497060 683475128 89019160 495463854 850008797 246973929 371870588 319093673 153172372 129890770 483485328 840664947 153478012 189178821 309977672 391124666 585053070 577609229 591401183 149822647 803736969 889025801 76180443 998635301 567140594 312343574 686061317 619884365 396896286 997240996 392924533 767830778 693613861 21093155 968098949 62353284 485461733 41705484 455191768 420273867 280639494 305690852 977788766 272440368 124092921 174561074 799867467 761113512 614395384 693274508 754951705 689382564 305400832 258745481 852438668 186397478 917470174 321821645 736297393 481362099 312957469 677923072 186832093 570613590 564000024 181525718 968364973 344766634 228335601 712931850 912737026 968185546 779390859 2787423 906957834 325069151 555385755 40080794 622998843 287078036 256458647 366975124 462573390 823775781 878695359 802779171 634579018 566532680 454756381 294646826 109944954 77281481 32467841 432779924 179136882 619074548 36545152 315528787 560827153 732474273 605501056 191925345 932404342 163229228 337308837 363196097 414452499 840191870 775247585 931953018 40977814 432148482 49771752 735322533 995229441 355663795 841918275 373048404 334834069 335495435 935502384 393691568 450446817 213633041 822963913 628361697 206006708 211001683 267421150 319404055 170824496 89616617 896761620 160696206 908358073 379501934 418578898 703056011 694040822 714928911 931085898 878034261 940176351 599574131 336138865 830814525 877803952 807487442 669170441 327274912 659885804 550886893 438558362 548057311 302527586 690345734 474541172 133040997 926492708 698454001 573898161 912881317 247861390 448739584 994068015 404708374 249990982 101765394 897644439 291160127 952202807 203173004 679579736 812298148 719507093 709199969 670020781 820004830 579543004 137209603 792062356 4057731 963861200 653838705 797499863 696516151 935398529 500769840 983315716 245353379 467438398 897038417 29001335 942946427 338456488 697030248 292447309 928486519 368980896 691582869 126440556 582740057 132538194 265434239 840634250 83453679 288777268 295475280 413459997 467618313 933085188 429957059 224564068 84007806 56675267 795577363 152973928 642862647 970142909 549679112 957375226 675677464 539944327 685868272 455957168 108897817 947758334 350805409 278082543 992895278 526529351 822956408 579512025 87487325 687137996 734565214 433936483 909687216 669914947 335214785 613654338 240040507 233804969 53067411 250232568 915969298 795817023 784936535 646287054 287305055 343626133 693972753 614789844 821376070 206019451 968498257 70164705 47141374 983295761 972387114 460180373 228620990 841506490 468384061 577459034 674753482 851762978 142836145 595006814 87350891 863655487 692407857 539755165 415719669 190650952 123559924 511354067 505478080 556042441 308242109 283287946 452578352 76586376 610420682 464948498 152516526 154714012 80076016 808392069 307531437 613580896 282354052 140157889 163969446 568843386 944632675 96861294 601239582 18312917 856646642 92348159 776204191 540258724 419309856 249791658 57876152 484643687 528502374 915204465 442968069 239025631 767483329 315531544 255153448 797353240 524828852 174015029 843737548 208448616 659673427 457015580 366750373 364171628 769223982 400749808 838791272 694598919 168155238 909814424 795108060 758720612 266351780 591185349 329844682 346386936 668556307 986763756 321074691 877607552 491010665 890123090 683121762 103140864 968390119 24595965 72055498 479812294 792348752 636128956 821319460 661524579 68601333 651604008 814644836 177232052 950560936 615760293 670929794 217364703 293810892 815969879 125031555 66640975 858596422 473113132 36647791 455116728 526949253 535571170 636941656 833933335 887089277 636448505 530316121 675472304 919440301 294278836 661675924 535970063 264779034 980454185 406214198 31712264 489924438 135937834 557750381 103554745 261055605 311753308 122598772 422757508 95924500 691693096 913262992 913152791 998201178 907915963 363275531 756212580 804941815 59297807 812516660 78539435 156306209 858935013 940743017 920246125 729044882 774853569 390025736 686473335 771458966 790348281 677439359 632857564 318424569 552485537 285800255 295843834 786962705 666641306 223929536 733670519 269243834 821519502 344502409 347742522 48698462 353528814 485621024 932808574 421195242 528443374 549832731 496145083 717162197 909234579 976047375 180079029 776344090 444102563 672122018 31198585 397079106 542452140 568588161 706409563 261353564 989745930 335712599 320797945 561234173 198418908 900698597 604826421 701545282 977438731 700569065 683991869 714026963 399786053 341284911 400397442 614179295 973298436 89013382 592477383 147125785 189588358 724621007 194667272 886790593 611905240 48498151 369000599 420841887 703229639 560835771 769856006 196588799 142738665 897776953 867970098 208465593 837735843 98972512 923799360 361513000 600607515 458618928 209809819 973173304 436201024 420842164 248832244 213137488 275039692 731752700 181774670 277428076 531530048 168318759 123375595 233585419 332415459 255688786 391818834 956135980 290686917 58734508 83001182 353839204 292387517 338795877 738263593 592855238 125224815 871476149 46273302 292946675 421479486 734924769 753946837 395640333 875654240 610323251 127088469 262765510 789006538 882427388 818754770 634307410 704131389 331823257 833286359 763658355 88075072 733893737 880909099 509757546 821168935 291440855 454668516 381908744 743521541 879827031 268368732 768661925 272911293 941541730 885527355 892505115 699644920 772070778 76539755 309297618 723644196 713120811 924943390 872060602 774819965 730357762 295086037 323808841 329300479 119234977 319803473 516969082 641095540 316636326 401393569 498954969 517365612 761700539 398329108 961943404 475533377 207647890 119188556 691428819 783657233 220630759 567754795 624628772 385693380 376707450 755313117 187265033 11970828 179766297 310937559 851050416 458963299 454838674 672453330 451940558 162820 424273091 997714136 865705893 527326458 358487946 150804528 265017335 378625305 885865942 9332338 793354258 670758641 403782294 402914680 907231696 500520424 983305924 592963689 577681295 689778470 114172516 776194220 43834161 825366171 364727169 571947771 77274406 946381823 255088427 348762702 141140839 849558991 774945917 920835306 471723118 149096534 344273306 231518559 836465734 777938087 11727530 280202621 297442680 744186263 415259875 640159075 833636384 7165126 372702589 598749809 739567832 444437916 23756472 7323737 201291206 28638796 792778466 600377867 743535517 512021709 253668172 479297221 759402127 895609310 636558673 951333130 675482969 69011977 608854864 59996072 972767813 142384795 960002488 929668275 793468449 851636912 534413305 916268678 750558528 407861286 896075146 592612550 445422723 712322217 439409394 193710945 605385294 922402978 294057658 575838087 445983636 582957648 519518324 88110777 265462982 460468402 444473787 742260663 54590693 320943244 944212784 599164302 271317109 529919348 721591676 723983511 550850182 811019454 498736212 389227881 428908976 187049613 891104627 334901225 650215183 409337030 609490327 239324740 654528840 737014302 705840524 511257073 890134410 890113802 369392935 113144489 150496399 725885131 937244734 954191726 861825424 904780902 519299512 797782931 807107414 759047088 148811387 470763431 636508462 779215425 170750587 75958919 313373168 188523639 290805171 99575385 808477946 803917947 759720739 129446278 273019184 682413886 613480918 964687303 188060674 668537207 370695136 800269077 541942374 932924070 851613531 559220404 193810908 289341972 858021224 102112307 251762534 996770259 263673136 97172067 968304278 783471033 18691304 669986403 829594755 547297383 119957707 861331605 747123399 207337541 793387030 97042853 641710219 421863043 961808410 274767753 286013307 161944600 55989540 369349247 394706129 557586118 901931408 197412871 680330824 484122648 439405248 795863023 662953768 287168601 398344736 93873994 980387648 359117732 825612321 118629753 248155109 306923736 238928188 652323611 184195827 13825697 343130869 772304158 429127636 897616491 919584980 292730297 462570101 462019439 581162351 396235619 677218379 788927916 136506204 801381349 410752854 153227503 5193794 472700230 1444634 192684484 181968329 65665248 716687273 898969732 960963233 327963213 951705750 431815249 322469253 420564080 451944448 172730899 653146171 249600118 4508558 489220471 948282505 219847381 753244015 981945336 442946371 891019844 739490132 135836119 349064002 351638222 54497667 119163162 548101229 775095484 923520956 398018706 403610790 941328803 386917971 353422040 317766376 774384989 47663384 934043983 522198055 688256272 855907438 507038488 226929257 917329963 828585017 238088232 525834165 917322588 391392489 565063225 637524767 148218788 40018545 875020740 173886912 829894983 739261264 882933018 862541758 716200654 687900049 671990087 379908416 878865937 840896956 840170275 406449528 396358954 656430572 887787599 664431011 587052414 156625596 805592626 883319806 323922617 354199636 772589311 868611289 722650065 691092834 261790890 416332676 785865727 466527260 388429304 185738072 899101128 307051328 950974319 760957624 850740732 525157653 754967135 172968464 761900202 233005159 9558497 211569873 235222578 203516305 723947988 163946100 939388472 750982507 161815521 664573310 199605414 889532001 917702264 882358391 822769841 698046812 305725394 483824881 565568470 640756441 60469488 436078214 402375897 946262991 584211097 865906140 404968134 795921608 659377757 773006746 536062450 866517715 690450322 752951667 390193401 448321668 764003935 892205345 262729151 133717242 976438437 778810213 310354031 488438493 37081881 33913100 579021438 185160537 929726513 586345958 640708523 808049445 483755820 154088399 192790262 767402367 785453846 303617961 408391598 253619501 435398589 765478493 906352230 409723263 542125240 636898780 527509499 76984648 207343724 310150181 9683600 725938667 575506173 160400436 141011092 64075848 41614171 945415451 59080120 319399380 54583360 88949989 398474747 983361921 290054956 671863728 736852638 193802959 916785000 258975388 324174131 387679426 551030530 40385750 481603206 779418346 849892820 204254350 684805563 848657503 773571711 315335681 953077040 508707515 292673897 32473199 78848406 976742183 714645955 632678689 392036575 779997520 793561222 501893227 147366729 562450543 643468147 335431336 659867732 986578494 297981455 569654585 748820947 817945096 951249069 813121416 253698771 95817111 300505957 641421834 769977525 320906309 489770775 787803958 497481756 652367851 758486635 966857870 665531892 809737717 539432656 699608992 422962802 325896782 641511809 240335611 306916371 464869484 341623931 178659642 540454551 388305488 486137227 357306366 516794895 820758398 795692859 782118644 370248653 356937732 262268393 251054285 7945581 195171195 472626866 245298755 882294229 478854141 431905406 956962585 963565614 397397299 832448256 110158616 106268402 519841099 188528047 28203794 688138457 397471227 320023753 67485154 367301605 805075329 870186073 504206700 765080681 489278372 57772334 120456088 736434162 824665778 734291937 560062808 427468385 510358144 226060243 368937897 153728729 240765807 850422825 17673354 445505734 938713954 52313814 47995400 748075742 680892617 330142610 411746099 233135642 157071258 621567197 361771302 72475329 791395924 253022973 894573059 800691549 802183930 653110023 492802037 94083525 327351840 767309262 892804655 48471059 631573464 963308278 268563432 219038635 694697152 430949351 606807909 800596026 138963200 604382417 211225841 334186166 886924102 20146601 989551579 432003673 761394122 281724211 337933184 949011369 153472327 315246583 401583683 135994734 233222146 897943875 956641418 206539203 377402062 939600945 826779595 98611967 371412992 124477089 218409343 276777160 559737461 297813050 356682281 545583883 920173712 248196462 762442832 168695547 764103494 723034741 256604556 447513621 335647498 309223502 494957940 592163100 521917657 986398146 106718377 873850143 618066235 588478563 470625751 916644974 32796990 440045447 247298736 469970856 539392377 600095567 284315375 122303154 530992390 317741987 745961812 110641080 292504209 650788145 40426667 831946284 404145991 463297655 887643334 169266125 291669979 389230254 93633919 609566620 655103885 741772516 478697401 174089448 837053733 977808104 65160285 260197958 643780591 983350352 653437790 178749583 323558592 55860096 936765111 188177387 237640442 966140573 839027560 529745600 948109698 257541785 433990269 873369803 800085447 709020714 526987785 567331840 432650938 833908435 953089573 371456938 23923169 560579034 461154800 378332497 472049212 807952722 799983260 107845067 487195486 753284368 260907605 58181683 168645210 716884407 478029655 667673837 886440143 820339118 890662629 786924711 890271717 561958436 621237321 65024853 555305798 133740565 83948498 48017202 255795245 698676540 370849249 340893636 564367957 832888102 603375571 78451413 545534726 334095905 314692370 924821883 671065615 98875461 490889237 708751633 349603522 45270130 67396433 217413181 461145860 548499794 843171914 847061483 766054964 628830293 644364938 65201228 749578823 967348914 424125607 178406369 325515951 610140266 179694391 193991275 250241899 49319237 247385051 108832246 789382657 506364370 38495811 673171417 868347521 465592429 820732699 614107564 667763326 60951603 298943266 681084504 754992153 980750349 610493974 670750984 457160953 923813803 878674375 273055791 995783497 778150020 371356930 629936266 94618305 681390813 167275683 318851100 378434977 138254008 996448909 714255154 26333099 296563947 538893995 303010146 925039408 403079688 782273515 498333319 736040969 680616311 702222668 449178050 918684815 59813467 698837708 676260485 143224490 414488227 916341370 292146047 719021771 273881100 830170471 862887344 768898276 412240147 421297322 238290267 540536694 553539072 6716521 195355405 155230854 158357478 660902603 495078553 719574690 175764378 653750533 162575898 304198629 939133630 493879887 5850361 195524324 590678717 547146476 965268189 930943950 633137601 247991079 455453884 131997516 265764294 20941394 893989331 489302934 44710798 521058249 86797991 698115949 2450844 762119659 994275843 783787282 255471943 528046371 679564282 792019286 570520993 8893156 702499564 754047630 846994572 997884072 147064441 98495389 452441522 629215475 62334096 178587363 775683972 664100429 747186276 383352145 936832054 378173512 475330418 904842586 971865293 843472513 953698943 183572997 714505743 796282262 260562068 465101774 79769994 959092789 951609355 846739401 698310810 977685518 724852601 256001677 462884702 956067548 88150728 184554290 387139007 295486818 392810528 924165223 964539499 376764523 169018107 663823699 766815197 216809926 204863758 434316976 252076880 802812240 481851749 87843259 28719573 198058987 307716421 848942907 368807733 560311422 36793670 558455421 550562059 715000577 696588868 861127256 641782708 988408168 250793570 721349674 872051550 272294586 871682574 700455131 239085814 792887808 701056765 505212887 522070324 701929804 566385958 722622996 901254555 426088121 447921109 197984530 822085998 594654566 525893777 357574104 897750210 991577216 679972398 174325744 839973229 322714171 347328971 711036535 335604241 615245517 442007498 373793538 828972818 695579515 540259544 302712001 885690790 604937103 850079467 864566619 417576643 913961306 667367484 567730698 915707942 75160377 321912403 986865804 6457692 36214410 952934648 999271972 34178228 489783485 349549891 211546791 80550469 536484925 362269839 869615459 132192495 765765002 851118975 369451069 14143325 410063909 7046910 725435030 601144571 32325014 539082567 974802017 818540293 77813362 360271566 250461457 681864056 530713426 89690461 811076773 388178464 677332440 524823805 792867491 20522379 234361263 384070405 610207515 545015312 370357641 704192782 419324834 636415186 190078497 446888446 164023380 190925496 382018359 564143874 798410460 382484852 735306390 584103565 449978215 774179962 829933331 420576093 100487590 872602639 274175365 229492082 229341663 614193718 263626702 865756447 430633939 577958854 550117851 570849779 539343313 854323539 492006556 884257226 508061616 518636603 909581582 765384138 338264526 987929515 729963825 925476193 932446229 406009744 34386191 106540352 832534252 135421863 895780795 988666983 75620430 656902761 542453838 126504727 51572921 402584101 653578989 370778077 434355248 670324196 232704959 178974348 860439878 569309319 366007800 475928386 802185745 736146345 626908885 959416164 522899243 510992561 245004947 406458525 227857595 423571922 684397950 247969251 711498611 690670340 155927786 256454254 778813828 602203401 159738929 148795078 115552179 998157413 653685682 624061878 207191105 418660459 902974941 318899538 143482366 145967664 582655518 884440056 913320767 791626648 888855538 463780682 736618725 743037517 834610142 990952246 319617875 398457528 884803688 823823598 368255865 654404377 977619236 818887152 895859660 338417261 221337517 860043010 218492239 31193465 569536163 42244396 919497857 231780818 190856371 946209990 469109365 658766030 878604684 951987818 453365696 524314767 372815594 853661692 298060673 554954493 390632849 80661419 105017435 69499076 723272777 187954921 565143937 592952930 746403557 802536305 514002855 679324437 76106560 519360586 471602185 925721571 504368698 262576832 891193202 893771422 109911230 890718564 626656556 715875555 254804674 697065753 89506833 627905289 541996603 253803515 227069818 845137214 73423405 932104828 38043733 120536693 994949541 64055374 392178185 980256094 39799473 56553326 798520206 343825793 80815469 281088287 492858981 27625504 447631099 567227630 488740242 194113360 392728199 310343090 176632996 52589801 10079808 589160066 810112179 462800776 62638179 743432647 145514840 791723929 432022066 496390186 929342909 713517640 957568759 403306401 753149841 305634960 590080259 270089831 772965897 71311408 391547056 194170369 311455971 161776820 12840802 610083899 915452260 704535143 22486148 459883050 946125660 876822373 957591686 286847786 178926114 194074765 737624549 426780126 57600917 801101444 173651486 117395764 269838615 227691200 60345024 424909151 445558939 931164278 694162015 543196381 822793618 800293798 730110351 655010159 848897534 491666971 7626229 990797093 419126119 199139427 511995196 224462160 392887254 500802260 788032022 785073550 382818020 283147922 23119167 738587330 91905715 210262662 88977524 487261723 549212899 292264541 798504324 283588106 473756066 206354832 50745665 806740302 368922797 113388641 821728389 93534186 885825085 55452375 261965102 523317288 342669337 341764545 962817325 799701408 412277392 938743226 6799727 142085167 603468664 24653344 315003121 143726836 920715569 135007260 868916147 279181663 891061661 794957727 403009473 378594338 310869804 38090337 227444782 861496892 469002200 479212769 584454163 328406000 992341018 834694503 597128081 918392779 601980925 776498949 304256213 314652576 938459147 757572242 175451407 145229707 306478171 680499633 52431739 412582129 504186767 663705030 890076248 192384894 40875976 106579205 793620470 83586598 951626168 403324770 817614755 295849000 451812243 514483107 176993976 1805829 824447000 182838347 913352092 113594505 5938577 802992300 84005044 80817611 121354437 694799841 962470265 261172773 173748238 5573063 324847453 710532923 515706957 523502085 112019689 932615930 930669540 590024462 340922530 284592792 623505346 179341595 851128351 289544078 319345759 495274795 816334584 784013988 784120505 223564805 281413582 304390885 44928853 658889531 506178894 166880417 641292096 889187875 551648041 428224122 260922643 891282144 328362264 64367184 140283373 456078681 832578016 757560404 918244464 931530815 807336008 438616054 980266447 727866377 76847141 418689267 289944764 802001910 45486928 350810705 295552120 916518163 737728170 73214811 10764232 754950443 482284833 686890149 823585789 428091867 672652963 548289804 821315560 731591551 209879341 412602549 887994092 932057152 504659393 818300936 311767532 901847825 480045927 395132097 381950554 64863400 744298546 529149141 311080 709073543 433621569 806205323 587851737 818409461 636246190 944195694 423349614 337423104 127521450 653390932 922168696 238591365 132041319 590734426 912581388 156944929 493349400 608493282 510755276 77530429 392149256 564925083 556583642 828197384 561241213 351028598 510521318 243690879 300112586 812675505 199273511 748534109 172537417 169317584 387376472 418104107 335098461 159400607 673369282 52775739 404696175 747973171 545708084 254892965 181588209 799910118 209479938 890817352 695821407 122663774 749495052 229689039 127282234 348303498 642300344 154486694 82898444 803770009 637817587 484846344 593940073 9030154 660588085 443367156 664092651 757942947 352748920 636515639 956431920 553253483 788490824 768851034 120081129 74987194 621552818 809904312 729611972 723703599 142353992 831326069 42022013 837007528 237983022 510523763 635015634 873899605 729792775 312170599 105101461 715444905 971833857 299686855 647191952 314295905 165028306 147478482 631292837 585055616 737946298 64051861 614788271 60303444 524394113 82358493 573355677 288820337 441021295 241941315 320327776 358687666 740907873 749889316 920738034 434896700 40896176 854895533 301424213 524262524 435658564 932776653 121343637 897084452 765891983 521645627 32801472 691453234 794012034 909780086 642457079 883966444 764053917 498785226 86561366 840041178 161101286 769127236 838772747 350623186 662512879 146484158 834803269 738476787 529551046 673561304 441502272 746739102 708278802 913850362 108068929 673018752 512562420 47492438 587347084 493284236 593506333 297397473 436980858 628060931 341958081 446728029 4160353 22457954 216076960 153772882 727726501 492093564 666308351 989099537 572994991 173218659 659294637 72375472 109335792 330163057 32526591 701182739 67832551 230565965 791632852 121853151 9499666 78780385 311434901 578975877 705416959 833827682 67691052 558266941 913341243 178359886 239011601 533076232 863283812 288264551 112054850 285605294 523237149 833352122 239543367 559727040 223958540 860196252 630179373 494291094 887692518 311135146 640016007 826794577 944959335 55492038 550689913 270490327 678646862 887600156 601634980 552992983 205432424 510367781 265568314 254527694 175289221 989426583 514171379 36791800 162334593 396154745 71802119 482179424 555524924 143293719 915689534 200128214 432543650 149863685 318213867 780072946 247568037 277938208 202758624 997147923 333881919 143886477 809038972 255129184 144646514 245912759 635133862 158187215 15609162 88232530 708885195 883162899 616937943 185383258 858720483 658384045 140398389 569884949 904682347 611821798 263891588 697975055 771380584 193461712 229388017 2029080 852884074 269879105 965902506 159454546 518217097 42684376 319035376 975547680 169492577 840540162 406564350 844722732 14879254 108347627 36577828 811317868 527412317 393439629 898077363 911183386 817424485 335834023 437315073 719669438 317886446 928179906 532182388 79505442 235062851 823003438 276889206 26889563 345286444 416473349 583475579 869411266 544370178 876638501 571071736 27889153 351195301 156271671 562626676 92354303 950011512 902248362 82393976 35495155 930866540 375131834 594183829 758554713 683256054 655198564 487951975 707015925 36014356 902740849 858687118 978514131 825198413 501824880 45817015 907007302 742383532 453071805 638557075 738080238 377284044 866209653 786054107 891650988 153705419 860287360 273314130 448644014 113064778 497453457 550062530 774723175 171352191 184015132 51637761 580032146 548775192 354068582 41582821 699052086 18834777 608120692 653808720 251451297 380761351 630098713 326676015 239276129 904543342 894608875 425102195 442296406 743303016 890071881 647420693 220567204 345761360 798259806 451288344 586527416 786729231 917844250 805877127 140480838 773037072 859842356 416785268 961327944 889317197 693009197 541097978 923879686 559778623 119429452 660361530 96618760 658735603 216182948 598237534 295547687 815633393 945261579 284529050 362729850 758475091 81334562 254903078 765736811 307901622 824307025 403911239 97133216 580346947 477307591 833856325 610368530 69465251 811646846 752365424 860282620 386301966 169900600 308520489 437979106 943890246 661339000 9880525 199187344 925587596 13211797 457561800 14341146 861517492 347403424 462442635 589219293 560560654 444860799 507718802 328303740 541291900 171963094 972400991 501626853 95193444 929883418 569630584 648648012 950865076 305451647 566128246 6932525 490221026 748898310 736547312 316617035 866895341 185417338 824914056 826774451 322442586 998587241 359431400 251987896 863293238 193168938 692986053 998758906 655379994 938878176 101448661 611833435 562516773 73957235 856345821 45795591 874182395 511458448 140051111 83297649 399336648 280352949 427705605 511447384 462092616 896235803 763275729 884656062 874119092 308088528 733600237 636698609 588224726 1088419 224117314 915046532 541683195 120208171 95615686 42686037 502394873 292367303 302868336 784241030 639590445 362142626 741696836 392204932 593816959 399675821 347707212 646099202 468481373 926607517 476140955 346425600 888246973 650403829 143310409 167284673 998587164 259755770 202599545 810720973 726444931 732908480 128610645 371115772 972388223 15684637 815804689 453766506 880369701 508788402 417493990 182199420 186304789 250307047 723810582 495236830 316393333 966511341 281436653 130659971 498902257 530954939 297082553 762912167 411132099 106295056 123447256 297683405 657323684 902327161 362320556 660455109 735253472 223957058 736644768 739143074 660614211 279194500 666633764 882751935 50837282 321606177 332092339 611857857 611831902 111845569 78716111 571644053 371302747 797991632 88278787 82242668 897763335 223411085 972046048 963726279 863272408 944537842 403131139 500449894 754631886 786792652 688427786 493635674 584877166 934350248 904336037 653063411 95841481 818450913 537173118 465647055 17080689 958338709 994276696 133703120 833451143 932958892 273966832 886097446 175194032 197167579 784942355 395979077 801744667 414650258 893230225 19922916 770890879 567952921 650471492 239830030 685071385 90296690 128678929 821513226 250170798 519212660 334376926 11262321 155963790 33805235 201892002 241233946 25361808 96525965 933041495 352114991 154503185 299434031 939090426 493669399 296157430 552407686 691108507 626760585 990043824 393055567 252971080 651687041 535182133 729415939 981219358 600270657 126089475 727054833 763344446 340840024 105032220 21620514 31933653 59901851 853090068 770516854 62903569 176606501 512366590 596765323 640716844 612418135 208270715 982397381 659182189 953965795 22602670 972039001 510258715 616690617 765476681 349910332 980299913 208059926 685537404 739729458 237674257 685935232 154590221 162796736 261657111 863754178 85733949 957090872 135695873 181547507 587940314 415978928 648725061 6810473 300922174 830468874 721714268 468181453 576497478 852792816 453949129 642455819 807382102 441757902 212207125 75222614 7296862 28900833 980000211 836810539 473008340 333481510 636367260 552914508 215535030 846257253 93002261 551049931 926557324 495361584 546730982 879965428 22176867 70133983 114276034 128710507 904167886 410773649 415186531 479367696 702255600 137522480 969318284 946084624 328074606 729518442 452578566 697130974 382796151 758220218 877246117 101410875 512509116 537380191 495309889 596691748 730804867 694007134 355156157 69245421 192343949 386099597 867987716 118632741 487681322 853582211 769764617 922110888 871015472 171723674 773899458 640468894 890178556 115779075 480138040 434785137 167330168 882480554 909708145 883354324 830390286 103083846 379288959 454293447 656452791 548162651 953092477 35124106 686974191 800342061 50866317 324296620 304134590 921647822 763790298 285333760 837797554 328394264 744604567 51562661 143659744 690072234 575868925 466979066 597493225 491791085 190240333 676264110 927380720 842688015 711031762 26785209 451532199 97903369 307531489 164475984 6080320 368608155 436698065 565267964 854308732 814546768 960391687 31743113 71276960 919972981 398898408 58227464 282624378 725766437 702195948 278890203 588933219 81582142 395666061 324113570 654173238 453906024 342708555 787453257 469305947 854525719 98710702 425032966 92326591 255527806 201461069 976713300 226175707 156115361 649960895 798158586 455879849 399499591 787302822 626391297 217508274 348762369 648258225 764558782 763915780 217090341 774089612 5470414 556774197 74485973 342210294 543407895 455442274 306770683 34559151 570757056 504774196 437123395 80193154 894938435 716923865 332112680 459177792 101499479 826642436 849326826 471646661 443192581 384436982 809006738 806851056 914687895 583450740 261057262 506823600 285889953 280892110 480258203 737285621 33194238 174472665 476174066 13470136 352534742 560979440 809699617 974183677 163145364 829283073 555591445 990172110 125528298 457326963 665973384 841911613 195681494 685439295 15375355 282561122 293678237 762180836 496149939 19031906 824734921 871727209 83712194 986883176 722323246 13855833 33110019 886907556 527974381 842760907 796538130 683485523 229898852 217922142 949560666 574428340 544190021 421607227 92981003 571413267 604953726 159741965 732459035 525059520 219906640 121048843 137858380 115802136 764043839 718331635 670419750 181680767 46612758 40488971 777199354 831267674 43435241 288139043 488202209 713057310 390842388 739167374 754710456 175728199 84851262 399375663 188765225 344272466 634386769 307024743 949217189 830173903 549554303 832399912 282735714 752445774 610268489 778164198 914200932 432210280 241151600 48318371 27805553 813793219 974314753 87695326 684763672 757477634 501215057 930928047 644895411 264007904 390162426 275830690 770740066 251081489 384213221 938438879 927504396 329595995 703775801 608563204 73754981 72728965 511996781 240109122 116806113 395953252 706375228 885164627 982934209 881643729 462725037 711174513 236513550 460942252 324982024 825468004 98392729 823202788 986650341 513608824 667920635 273174891 723760668 913502856 64391825 92223540 810607831 195812333 163929989 373190475 620894079 227344273 917338311 942784434 183809479 816369374 225305361 220806531 241795501 322684113 209895392 997975760 709881973 340758753 886089856 166790851 871730092 863553560 830461183 240183424 838555172 88530951 177341749 662127165 651582716 906799037 886500290 439435314 937980055 992866526 834648337 848987554 727813536 905880207 650550351 69026267 488014348 545359997 892132983 218019624 563018779 611726814 656865607 399673833 326267210 89951347 804432454 759597439 553402221 73915774 450088393 137744723 778040208 932683987 294566885 278581206 625782039 909980098 546353531 45745031 944155299 692327982 453813042 619571173 783581982 938544509 857819260 800034936 395486400 432975257 243301521 773275609 569130501 380250621 479679855 976202906 608086701 392272034 208759011 993228900 24514248 414529812 183507833 558652638 714327979 612299103 317107593 46586042 415670511 852095257 594845239 354469044 942571387 8717920 455744102 72017551 947715192 923331803 657439692 43754001 976647265 701236406 882263519 274759694 771991530 372370858 363282654 188020581 704066845 119387637 257952976 223530483 906600515 773913946 600541323 851746723 783777009 567744557 581708450 697604967 796728066 941666881 190508663 522315323 673748897 999547378 804781872 22955040 872493617 74313512 50903235 972278560 96082284 118621780 759334627 261837904 44880972 936032105 440926225 102350022 627230998 380119271 257758358 828624041 621694551 724395730 226645379 868753439 263263715 458299834 979437998 789920347 525810133 614135734 593318075 787162264 642090896 357236581 814248974 217809179 247150277 481991912 617791453 489535017 928526436 43848434 573811737 559559961 172306858 79526328 40762759 894132545 461257503 16600056 971766446 408047878 437579657 326592506 646363358 566026962 519715584 937196170 209570096 657861145 599890912 234046974 731680133 912390737 463565263 757035831 458943363 873111551 680172213 575498905 282084251 547979691 478750153 325935889 705773573 258631915 740241542 510822681 583954371 630516052 716044210 526799276 564513690 379911567 603768409 74597203 117497118 411357761 732460748 146133785 973213094 793071388 431340971 934041494 703147858 302491105 792509144 262536682 155823627 257085256 614389891 943645881 189047420 106797093 709455386 488693041 49352486 522081347 974255454 774538760 190560067 723605889 923043667 419087488 437012956 910675646 159644482 697446234 226217157 706428135 135334852 598776297 419110803 354433515 896675250 826523392 675274917 709492168 441240369 62569982 160855079 262079869 377984684 218351049 210331396 845726231 551679960 411748817 10812411 253693350 41055923 860116746 828930182 984313413 279150721 883476213 184914419 695188246 206009546 526421141 857072719 862840644 726980200 507449209 675921776 366455043 602208884 710983864 33503738 9030793 954923346 104787955 674520150 802275099 50489265 72545866 869947824 76831745 472885123 442736496 275543301 43606416 226158341 769948317 619981840 303177763 773845435 577336712 907367006 201014039 825929582 805997950 569703997 173802973 432499513 37535819 78987204 812213985 792099956 689708867 372398039 374085792 32792002 493912135 868650266 592211103 622248981 286484157 681549568 455317605 945627035 579655315 683509442 57556098 34467539 115500351 619942495 637937046 301272960 497597117 955184028 774183233 405370801 261218969 821024014 493309226 305160886 59304154 750811917 451592 984906798 872090397 226553015 132387986 81927422 256982908 279372021 48835725 162921043 245204895 573963638 551760832 26807455 133825460 726883764 113251070 568906397 629087600 790762480 700375333 319194194 284093203 946243633 581021714 702901772 908198499 669768519 484167603 717290336 746978220 189695946 116784889 801177640 550142664 967199003 951317213 78672265 909426195 435036770 370759011 190043886 412781426 797317521 695479957 848320781 179835220 548125788 650069891 112477923 636481459 213124935 426261835 641378481 923946760 277432985 11260940 463790343 670583645 919112035 249867251 403195830 770756415 940593786 154858544 399050460 394219203 765433220 103252478 853048287 370046089 689358309 973882784 723944551 131395764 507353039 484391264 330984810 61489656 623510327 632480401 512919079 188743303 230702306 382912651 734690589 264911649 589278036 544552880 787066652 943913480 851343843 750424685 468065336 251721232 471181728 193946674 613379278 128085391 39594096 422398075 459652224 958245214 119589882 347371464 162776891 296545257 196097200 528073895 60265010 779380251 943199943 342879908 238980325 8163434 250088257 246042464 761880597 827318743 845846758 482304890 767971534 567918309 519339846 495740830 673137513 837253285 434777018 51706747 421460090 284444074 827320418 19363023 431059950 569339671 688386854 738791512 43080683 204318604 562724535 869022435 339742696 968389183 554955661 503160386 442730400 146764255 684096741 850600528 29301275 260182447 821354444 51303406 578471070 661126258 133550609 762264582 211390916 276001656 936269642 171029645 599789158 979424152 243201497 867085690 810959529 60756527 204361190 304430545 714749688 357382690 983391843 575968923 192481546 803778275 773448196 567992296 244794074 473972068 474183246 715824088 49898922 561085734 140903047 617916810 969886986 116819759 762300606 522571306 985802189 250163981 363887820 893741543 192801549 619904469 531149140 5931775 806457649 107661606 602323130 689882800 644210915 172440616 744851507 383281225 868863001 409846919 445570739 678571032 781593870 135050107 523375098 176527482 610991433 13767358 113887125 973713617 219969170 144181149 208407504 936524420 885478912 73973728 897376453 727393290 987634929 716279010 270763347 31090139 319881733 370123902 641738789 670886777 417230376 834420253 903263398 185756270 57948053 676530092 268204052 911598926 565015745 547364512 157202541 878029490 476282738 28067576 436970361 334532157 187184055 904954426 739607494 48532377 199485154 25536630 807067568 487294839 532751505 569579840 911184983 755937936 203958692 636179128 642226337 617306282 492208972 808112773 538009153 117322639 392300026 835875024 612450474 465353230 140673646 819653463 97474595 776662276 924309160 176044112 988327601 850269778 339127545 15426952 124842786 68714981 577537776 742819149 812315667 515102891 975452780 276161903 358288095 839254430 960548496 761810515 258216115 319862468 873375946 587807195 898827132 376333350 31135182 630577783 674467575 400073942 90849432 488858141 133205404 346375662 20187501 292240203 596898748 352668048 75286230 581993480 896494689 210865641 902099114 447918306 314290790 330336807 326648069 153616366 445267820 240365444 897294154 23120332 413629657 396875336 175621414 890129058 750004959 744459960 526121872 229997340 517847925 762541608 510762944 9919861 4899165 609372146 434233917 61458535 521194268 544527480 316146129 184618552 665069062 182725668 459068561 211382713 300046640 638970986 120625370 424880958 822331517 995212996 18274896 215091622 139804565 570225074 55443169 677285723 671508196 21233600 881761213 318239044 724896424 285526656 409526882 840298973 164967392 800978316 73801113 208520224 276675921 299150729 445127271 181760665 250649230 575604506 779749156 957449296 946215151 605011448 889815149 905362911 457412754 581121501 826943010 785613922 618627428 640939910 756372597 963940483 538740241 172924867 424198871 371145069 58183442 543380578 829691138 661299157 41953193 139957569 812406273 842904828 682521307 426554175 868453658 212353961 479062140 162734409 601543909 869956905 295003683 768709967 163211323 845830222 264652847 982077773 417734465 852904575 809576136 597338691 299449446 605123739 513021665 788173117 60788572 323149332 141948206 202255948 237034528 773235679 130560821 384927628 589760503 112801657 222586936 376951328 567223400 572147690 274167372 429595950 270618192 684131521 146212680 417556717 192419524 220632337 345679820 497939349 922279980 360622715 413286976 818689638 671034677 671066148 26044373 846039726 866255311 44338108 76337536 974740160 498516536 585232502 816575748 455817458 152059895 308390420 379608556 603811496 926638807 146841563 861963394 662277455 731834856 993971097 694068964 986862421 201362573 429886115 408094705 193553717 376844644 553557721 971039820 144189045 591169374 315562910 666684269 620866714 335346350 609289956 704843910 500061242 934306254 401142305 887235483 507916782 984196229 724113235 357140595 997095770 729155294 136113150 822825375 628430884 850963503 915819570 508734324 168654085 588671505 258971524 386689815 112006831 239954281 144793620 774098287 396307179 980672869 301437321 595721769 171932030 819251321 130862094 10398401 419576638 855542625 588769116 764977012 702188805 5746208 354902448 292901454 10094261 671287554 297402577 497456156 215514676 56927647 912496395 152050554 772298875 419637713 158601783 302126533 643289216 512006842 530187955 985170468 420528200 141692361 686023269 94891658 517668314 715875760 791921593 933579440 434722891 834509166 957848231 508326164 104237747 565559623 884982191 812006911 388248374 249191877 221597906 358811264 220203518 11701951 308902052 872499570 74759228 248664653 335099194 92148852 545624874 599699415 995587376 840322799 647859983 333254920 202023599 208787216 565509678 917424341 418809442 576786130 864872415 803090043 396573826 126098167 279890299 458323066 146987468 910703106 438467936 955785123 684386439 165878088 358419966 291723273 997768577 806983136 549549252 171028486 291674895 859238315 26701615 875831104 62086673 195569229 334644157 212139428 447336170 204419131 394564348 450791014 689928334 625319338 425997948 905966851 40470894 317964702 685568985 197546042 260508810 507474652 187332532 623706911 403420778 888146167 423871161 861968384 611477019 918029634 998844055 135848316 547803187 833495013 223267083 546742647 741446095 372946625 376350421 69778463 319251863 806066827 298165954 355408612 463060153 367785913 615572643 204072326 570272746 298135947 916185680 573857543 148450923 637426954 749824689 44554420 959403776 537924614 818374315 13436706 189531383 825559579 509619761 175590702 320319271 9269667 781915455 80451834 124484335 284988104 664878292 321331954 814416180 51965053 824299521 662289103 443108196 649874809 622014673 190024327 598938744 787212091 170830177 36446049 309813739 794286348 210020565 291643624 642745540 945069308 550725205 87625204 780642451 722116837 649027602 831744413 692022892 87843684 9958474 831846474 563305966 899971812 264215102 482266788 179491393 458627220 609044790 533082789 777887505 465382254 321497479 374087811 545173 394786608 665469834 271557062 333038476 675553123 95615137 377520696 745549883 961089111 745935414 195865329 601607537 378478117 629641918 243619657 15265411 595541933 818075824 344290276 761025361 319079831 147677071 19294132 696055103 59526483 437203174 120739558 516759103 776545816 456754502 805634045 146672579 130704363 666597194 305535160 768204749 152712847 272437911 989801255 147949024 119393942 24927443 683475611 935867916 184526425 672652977 742728880 418316265 44558585 886249196 493335118 154064273 459792731 713104713 956047519 588128431 189479730 124830093 314453014 646611821 988465142 432044686 911274354 256384899 559593960 721935141 20944054 463520046 885609231 166806324 615986734 119571511 124711481 854103719 587889006 714504426 107546115 365034604 243197525 339730207 381569480 908911490 707873795 791880499 343043764 530379754 103959526 307518221 40960696 701604269 193268914 169669915 417497483 933035998 695744869 90883921 760467883 577480086 510893122 775279664 884715363 860111610 189812693 396395454 970715072 204326963 852408305 477172361 352269726 573507699 225121972 844568742 279338140 293575923 244632453 399578292 258094114 665588212 288000522 171985117 100796003 400926663 160006459 580553673 237234001 393045943 19344468 605987248 341436848 977053475 846441945 404799826 437043211 324109928 167863446 961128182 367062956 750746104 606589601 807253862 869943729 549536062 924910163 649285887 504874998 591879608 918804818 56679576 568206375 920830440 436850059 740076700 46015664 214965846 646151217 374353399 995097037 701528728 871122113 814601505 651481725 498004548 8811004 237476118 743730055 811094528 223234804 602427486 63121533 621267573 308582394 807412230 896633014 164751700 630176173 536478374 360786517 919814745 878988269 990374237 615197503 195773509 400695526 479421644 209787938 442790881 344305171 632143910 409460607 589862659 644189480 168952864 712052876 842167681 576333103 591907321 27942489 640844865 634572657 743482998 299105459 737086507 14349954 435328230 113711411 105441586 737526082 691308063 253504567 469225297 477636050 293455230 706219498 628932488 518633633 180726765 497470778 645206243 782299489 659838679 17027810 241308533 438147084 794849074 819593824 350990677 198396906 47790716 125148415 653176233 206919304 21438400 603131084 181218713 42779319 713794183 977058208 657856345 769941908 256957417 404882972 676753696 25792391 719694213 68288683 468704309 618463542 269345407 653363830 374879199 599946394 314269319 916611709 766287983 88250348 904036050 618733179 18094147 353813685 862864674 48400890 222072507 714091708 35519673 511716683 89802560 403682584 392162663 405105796 694476358 873871653 27777667 791328392 867005003 564128646 980548072 974884350 585550537 664541480 344916737 496447063 169451345 197579840 91269049 521066698 612271731 13468491 16409476 954318168 181256390 190524427 135554151 327325640 867903986 338047117 657097187 654271660 427683745 690977828 605669896 238816349 45355134 64684145 407897197 483608057 930975051 726132306 118418735 200034408 492774342 884103416 754143731 55465308 902613949 325231316 462028008 818701388 487399935 728018597 452824520 113312635 726892388 706082413 458134732 996408045 564133845 270042235 319546814 799309173 891767607 403123807 551947498 301518250 308416127 26257913 793720359 515452652 588388004 101203050 685867989 534778470 35559853 639290659 474220500 97240583 396392865 503099604 250387099 593402245 603438995 709625468 99040282 407470433 613332635 419541596 939560146 82836453 568569054 811348741 505168585 502643745 117757577 266567237 416693389 607598314 139455686 385674813 51055154 976330215 326446809 487706193 430413915 432285817 387648253 601674283 760038185 89687253 622480764 538424001 220477773 89199343 518061486 848678223 717422334 205238156 21962475 138861145 571190521 983766321 718016403 944286379 995883908 737513265 751326225 673669209 227040111 170166432 280585688 792094142 19354383 48755043 42997347 253056131 959126337 213669151 96215602 943967888 220419180 903081030 565806546 45370138 225057665 790198542 656200917 430081950 131228402 305320571 713569488 893116128 56812993 206335315 22424685 703185900 791307888 862463780 906138194 368016150 686847506 263974730 212987443 972413180 258203451 789524965 973228487 160754049 896753416 392528091 348796371 835126480 775972384 888791260 252910880 33318494 639156661 493087332 524120450 579401707 584512630 177691310 498282705 11438709 679700904 262559432 308115953 894277964 689058828 838393471 504381388 142668547 180701431 580770155 584256597 489566839 249950007 887745003 386175875 788598220 860966449 652692011 568931931 201792878 183669447 492833561 258789862 867829008 82396776 697202540 421799992 495998642 718190605 957218984 747369 914523543 213087537 200240146 421175966 368127303 693349082 720981949 354850559 993664154 919855770 811900797 821105855 418248878 610484100 528292343 928399895 914642915 36577080 640068494 464061003 72766184 205582555 326802296 124247716 605870513 200326173 519142571 894113654 169421432 991433777 654551780 62899482 933246659 235567320 919089073 192147187 847975519 593169240 745179487 814052969 170205280 386422654 13663748 296387569 493076000 937267362 247481477 151783429 187580486 864233632 12688777 190014500 591732670 163586784 156224636 381259741 859143866 877257552 342270108 634249150 581529017 535104871 709552103 806501476 120371839 353993504 519640612 780124529 554113813 501659142 396407781 594044557 247708881 647133221 501448064 281333869 735220048 461191953 306010648 417905609 661556086 994577642 630571157 737556071 692233840 827925335 606616742 460843532 578540722 439718022 369460674 707701644 94157046 852437550 163904557 526435269 929351492 326959755 230399468 854706839 620035044 907622245 488136656 762185705 816130158 510092040 663424626 514844848 819605180 68453711 317443376 372499942 617180149 425282197 967630134 340010897 217076608 21000894 88573042 29958581 697546263 364593212 653431966 171269991 109507762 144914693 492061239 935232449 705458582 796291989 887533449 981031141 208212306 880146421 521407904 31345405 205324728 596291249 885702486 103276349 621086951 266073055 317768783 404849375 904423485 845072926 331665901 478092323 126883692 177215895 704779876 699307348 667188071 747150066 660655532 479045063 819680105 683335788 145638535 363653331 744526839 865784513 210596216 734559450 816909788 831795252 501202388 618951754 793432881 148677015 505836720 861657235 353578571 368574271 56120302 779343660 706390227 843068936 453130040 746685084 128097973 256525918 357099261 637745517 477603620 648204586 392064369 602736942 86092701 951700708 723012506 826585983 197160674 27624074 422038076 741437691 642995205 274886821 538210540 874958926 130256722 792127036 187214079 81809711 403665772 272474094 325545620 553141589 220863030 350445269 699089817 521021825 150893018 463948182 668645559 942320254 565665228 88814432 764082794 945370145 268579788 227385069 635458034 563162688 502276829 291896694 364147799 977051587 241576519 392765381 765502826 794097037 625583779 372643109 843322050 92599700 721904842 570658415 719255744 281712596 932670180 290852609 120261004 973209421 699666778 73623999 735918102 710947593 534048739 322131481 620880151 662568218 247294072 668671751 85711886 413308319 533560929 46734339 909455429 135110579 489912103 867495444 567624138 571536516 26277279 98155213 741887097 523713604 856507622 850528064 735098606 95279916 8682336 282402061 113314196 68017794 856734649 776538457 189808539 405538188 941366758 125455314 787563001 427393183 547388962 352306094 312883312 977917459 565704178 682240174 544979080 264853834 272035619 449008151 168539280 76861362 281456329 646186934 220035748 268710843 391953981 635418851 321812898 641470943 147176488 907258232 121106993 300120990 106153331 857408739 603945411 991839366 129691221 322482954 668463502 190047017 294644041 160957288 682834325 504884256 957454864 735058428 973660062 612577037 367350971 34079816 880928316 28906907 57862813 565869151 716130244 331822715 474969936 634545620 321264475 984903783 883341757 393423047 232612834 38461220 197595915 130213085 850049806 41351291 172580273 174778437 943605849 752566077 209367146 952441011 563076095 608200773 958186810 790697576 249380363 298002295 704103537 357220652 315080011 448644794 949716895 116245321 147166810 24213762 444172449 893530263 926096535 109646153 459731613 964781940 594830121 205363090 777368830 195532230 286359553 257133543 638098040 916072958 514682584 779807065 650623497 75392014 512565294 996093188 62225906 77329526 187365450 743614216 645990083 256435007 956912191 625800082 281519692 876505843 140681443 254872018 702848174 614079403 133129174 36947717 861522251 355068931 351361154 19799912 905486286 857559074 709831958 788729163 301858093 661366456 102992267 522997247 632113314 689117178 175914145 518845147 965161654 780303526 921317599 624640579 317932592 85712130 756804503 120732323 467651878 445362654 870415328 420471658 19873271 324713359 18127773 409039383 265736261 343807217 973868144 535802664 743926778 259697775 35086544 231301416 572280398 962316018 156251891 981350827 444285115 290431223 24844760 687825995 957337607 481951604 651581512 835870630 572113723 701501174 968828372 992262252 494601902 781036169 968533459 966510669 234673405 781784258 749898342 636991746 277458443 52128448 23795572 747589969 195449858 501643562 659685809 242169343 773368410 446977326 973204369 526203104 492469455 851515267 770918484 582608848 301391459 331497317 891628294 941192115 164007523 204814235 726642036 797427566 583063395 690634612 713228602 315450102 315896895 119116742 909357749 984070727 380297500 310007281 899029517 347010145 982604393 265500376 200317491 315773517 118962133 533973995 443499489 991211550 916866911 648364062 606546581 989172211 554330187 181475061 218346393 594776806 406878247 455258480 767003386 830472744 239009730 21285153 169010837 288033768 975996479 487816477 57412358 743722082 9570300 889703169 309958841 747330777 33486251 993556468 998780635 634307730 967163706 862243751 731222630 727643623 922087660 797546829 970545434 559189803 616345153 116139173 198838399 844774340 728637702 576030454 52979428 604085532 383096399 906379276 4297316 272786852 631373688 177559362 477031390 112931801 655075625 235745906 294607355 203431737 112404553 263117570 938620969 359429458 483053838 206165220 294060961 133882037 417340406 644462987 726769765 406499325 432826562 622259959 718596154 737379528 627955586 318205101 757781429 856065222 616868744 549651131 103257384 976947881 295358577 506797240 461840315 179178279 544413984 326588611 732971598 113992707 688007365 325258880 289767065 675698442 305308111 276205601 509592590 169867020 154052349 772545880 849214706 746985702 730754642 934650984 578685259 751306359 689383965 613931795 277838822 341208490 127993326 321679784 772379491 824925557 430787495 333024254 216975131 985712333 444149863 862860405 444380728 350794164 850496410 169008881 127150767 420049978 686143483 409876446 340739635 529875821 917716094 518048057 722391364 14456425 674286957 537464699 365653038 330440012 468939600 901559466 236835326 868103751 507236352 371010902 941012879 949702792 420866966 871567255 477288062 188009803 534163831 353190406 491839030 752824528 740448590 929321166 853881576 95107426 878649363 127122079 984032905 503765591 866467069 212453800 806227931 222126850 339939988 829406892 96914790 878119372 560793509 137099761 519871099 411591452 776324670 653494340 351096880 622306917 142466244 379696127 19224680 227505441 898165460 530531322 838307018 494745042 246997599 413776030 900039622 552882436 998336151 389234396 965331348 599869511 940188920 694251816 275095350 167099191 470705224 175803006 102712180 720942707 891680659 2747752 155756506 349628587 971715371 942308085 985773510 411032458 477032365 681953206 769548119 179965137 639404798 15867596 639880819 550870846 876846924 968819424 667078600 622122909 980199945 663722780 417185238 878682560 460300529 93080632 573367255 251002243 101861128 553611634 788103893 82849219 739387805 546556307 772402849 333502319 483106115 427029476 846926035 553671801 682925269 635230526 715231177 437813977 890591862 617047296 665851823 563192210 21297815 406254097 495091568 84586929 8230119 264569309 315260875 802941250 620201829 772654936 445197370 627230822 206635350 862925830 637553675 427976764 74477637 720569066 217906506 937772527 898414343 913804181 409130448 514752942 908458167 846018841 563838527 408765369 198080953 143120661 58303742 746434383 855388349 469689010 666228029 264114106 493562288 976019868 964811765 302836557 943468247 651505930 529243364 299983459 181311409 952813245 117626262 746280029 600752136 59658741 877008984 929387685 552282870 155057285 302565188 687382447 392163286 501248450 572078394 739881970 774036808 451000202 653643491 785317620 506392638 901735748 705822637 461166653 594364137 312386268 678182098 756873824 915001796 318864332 928402514 549899769 418588310 971981328 98553333 13879974 826729322 932224302 72260682 776034836 989345172 569068855 428312493 833878773 807126193 479653309 157983034 424144901 929707943 110056158 882903516 820070146 631498140 360574535 853117251 100821944 324768525 573878303 580965093 875091196 727548590 95078430 904838916 925531559 755297929 824883847 279699368 310863257 863859943 77436696 360279971 627819708 944771935 59316264 183000971 733388292 80424907 871962502 188614847 925098606 305617231 434580 380708458 503356408 736935257 124399672 341301372 779223724 473661596 835271137 669445804 521138592 735993365 835960451 240611194 818723309 406741001 733268637 10029873 891767218 713137409 485921844 432473310 934070557 35607253 216417754 451477339 533027678 607571358 559569314 741102665 442201008 769127621 716443179 708720908 185860182 614949360 351773597 701302746 21710234 342714393 990574243 785465510 624734925 112611449 374031223 260537399 365705035 351139730 71336146 332750604 932477812 327536694 128038656 980140670 224060852 282160759 212789965 382219680 619670911 552543920 27296399 761249364 738994763 881741447 374864675 483127363 482694301 452935141 184974576 259973596 607663358 676334081 883291366 795606870 444825858 728266326 513898874 924349877 130926659 954211755 966451115 836789182 520261473 131833099 471811068 248395011 136891142 51515591 348379520 341732570 156986088 331588991 340967115 146029927 355117758 415839508 688730360 357518991 400856909 52262839 759066292 302288643 239145821 429821655 131169064 66501949 152428737 322281011 760939278 109882489 959949138 157803216 86986656 883428805 780602356 755428857 514592169 879292140 309778320 815141955 496091250 847853962 217544731 534201480 681772758 389261308 565254539 174806255 275189809 361260142 263254244 565623778 85325160 993421775 706969394 840028440 714723820 991705300 330011783 712360588 559808691 393688835 624114939 110487937 760667960 462927774 809994672 498832260 920169607 694708411 977671122 643175787 483600935 494024237 212291988 384950862 371158324 206720665 962935599 286485142 940166987 91477090 326675431 925851885 442023822 749164734 547281665 11519302 644096946 998809762 9593556 431768544 351849193 166410702 491444666 335999550 261972723 554595277 860019476 281617453 328827668 62240493 744047694 675483839 472506141 476427588 720157145 966960467 126791779 280343990 195317805 597288075 135085763 472655084 468706511 433526099 946321829 796140115 449880904 998392290 346624247 535473956 869623340 822644914 511102511 761084257 970350101 766983560 583674187 53938896 428917923 63714416 695410130 205640194 587583872 141724865 267836369 302240593 288425314 492701202 947631841 193993691 282761475 962638154 321979164 689192072 660749345 966758806 725128746 83952909 313705097 130119528 22154300 37374171 201665292 251066753 45876997 769465911 814767239 620855775 191546564 369849129 739129048 446568147 209517888 411933311 594674157 794138094 796619975 780178643 122529975 625999631 219266863 697063810 18860593 39981398 290396884 531917755 987911258 617887287 168194979 926743913 693423425 64128092 853761539 584619590 759590901 571267786 762832365 650931921 694398864 984325059 645277662 654245717 157588023 484293072 23436254 670579422 166170130 59271881 231499900 750720071 136821843 464508614 799940046 600196401 541304374 853727537 542715504 102576387 913803261 692379568 598531209 612842475 438834673 80627518 821331657 875729381 225819492 21011730 987860325 448593840 769207730 8938931 665598232 138052565 772679997 493052906 783355438 492500898 88551535 296928206 954681205 432491056 43263673 372084156 404286271 820740963 93771156 534922071 120527467 411630300 546576265 648024715 973841249 946903826 148371227 225568906 892073742 740330041 109599711 834667732 880799724 427436885 4474735 355788334 545199348 92371242 844664429 353620897 394687151 458864458 111566212 605090690 273606698 514353423 423287398 341195374 650193407 745775766 484085452 916313160 840208199 781131212 84826493 161003327 698534056 231350620 408707901 515981509 674437462 368316867 344030176 809858709 127078405 990505533 898935107 52403126 682279408 741452754 702316100 1072501 456530912 78386777 630424018 108107875 236048675 62485347 375410140 411336028 823365775 869627219 787984989 283186824 909309827 61697105 745868888 117530193 166375651 95946060 99410134 292039786 647789086 234742014 633570283 609000146 880639533 288690408 844138414 565668044 585296012 886108240 513923909 585753060 244249153 67643208 832283097 381681902 812202202 821577129 627142554 127837959 723228017 274382865 906693830 256756882 791226783 927816937 448751260 378313278 99170957 550650720 722921064 383236092 947996135 478719088 841952892 978260491 978353382 114051034 412393266 827424236 385424713 538282788 25150959 814114672 874573395 777219745 187411479 789253543 773041620 91785828 834916897 367335407 627558691 81516373 899787911 667629803 824602138 82777108 104391368 269752712 682362918 615125529 507364981 30181372 627229489 416120470 249316889 466077889 309846704 112475022 662787664 986523 929914532 840052426 37459647 10267801 240864917 3829467 67228943 88985357 141773964 710243861 923178992 673948818 178445348 758556573 434314273 648302606 393504632 284606039 507699039 531281582 421346352 811780084 647930743 490082023 377170552 663297520 560180540 994946419 402816011 835781769 772921735 426291799 26961187 420687303 157134904 505019870 473807238 166067321 685585214 31356319 42069382 58793786 884759944 78723955 546988278 652052841 857334290 922718336 539922486 912864301 897960669 573356083 819687211 114962807 148465650 979628862 919593538 724205824 130447977 318723233 426206070 753424200 384091989 342114460 166386496 557895319 464741595 68328383 299669931 403962364 935834918 501852637 368547648 214202962 191383400 304148239 638942746 485276472 274141404 585102013 54374612 839708182 521349058 846024850 854609815 363556125 484974697 388927877 622006030 528090690 715060253 832410829 340118898 735746122 921487419 635395312 956431230 600275387 682012966 499296957 410622847 38268388 872961353 581967430 364761147 566033888 112556562 603790824 700501516 119256974 991705857 326251335 725653458 912326805 690864274 247549518 771820531 470488934 85350741 346131508 595657561 285972538 895959259 64728180 961369726 855688723 550396603 543256016 225261151 851050421 73629592 208371544 161650051 967377074 359619105 363166559 486488310 337760354 496978946 366608511 912914259 121898728 55159547 720966814 912916914 580871720 729670090 1568233 616109246 396027607 962747707 962382803 91259813 375133032 679108382 82965529 115521307 672865054 355698515 40464317 924177502 702197506 12122804 444585486 413306934 847323362 688963123 792755104 487423475 244688987 232138685 257310032 267630183 158115782 104318799 586897216 937023730 80169808 737573866 197383645 174141563 616723432 317940376 721715420 798839920 720144968 312320878 316055097 299286982 372142063 489101954 82294070 711491071 413626917 730797816 291721058 355163676 211187961 251779580 241696658 202017199 53352005 82960832 929115870 513743308 801195176 308184188 71012272 699939859 511132813 629879154 406804143 673766313 77615392 68143600 460093906 461606461 125700446 211892804 832896340 203466500 640662277 199780555 262237884 37727167 71343002 148959463 173065171 761640369 124558194 436825600 951577518 892375723 610330277 734425739 895649707 219916800 339022353 620365568 789415021 387610514 379195999 490787557 101802207 218213574 153470718 733795262 875374388 896517513 655515433 82042914 702021615 96951122 256542431 157581484 263975119 515253793 326572007 663111933 408266721 664820088 358270163 209356476 157983864 760853864 294079480 909502622 612825139 382290824 837616252 236351839 791184884 829044213 817320258 600200893 734760680 855416404 749843454 14689927 254173061 118515414 907918375 479681930 170505349 867291441 533854205 256476838 10490348 526256544 190004103 454552504 208610824 958859246 862762389 501983919 710422636 87846502 179320515 699203707 630909687 738578654 949480045 487959572 190483144 468544951 922586045 532825985 725864785 411111124 653292197 408288966 653101888 390333604 493283547 535837434 164334999 186556705 641962718 839243576 675849881 332044482 64382203 218193824 922339534 554281365 900766780 951984220 796796432 312340516 721187198 143922847 628209782 944820870 163030624 48431010 260288875 796211544 341946445 909591466 480083605 58602690 833396079 985924351 544296680 196988275 31221696 688241908 138595239 129786782 422296068 308108003 112718159 669861894 139841731 661189935 581584049 901047020 482498377 953506368 911012318 790654242 282367665 782522764 799356212 218206461 153569499 69129354 224172632 599455066 827854191 858616252 308284725 564055714 933677789 657395632 179534590 26225091 35953500 592902644 685405491 394191150 754998256 868832294 824970388 813105129 152001376 953360614 647241775 574888564 786669371 373791967 86938202 957442530 791025879 323164608 831749550 185989319 411764312 945332553 979130898 422736958 281394599 967583801 612921776 863172338 83101041 462680410 403580928 22436371 343766574 460449407 233473723 634064977 97300768 485147010 416297188 728830188 540194129 103187783 935847883 368339119 718308495 645434549 168510465 113674976 712385139 650662334 794289252 26091103 394549594 320373857 257373977 208950915 353101682 83360668 77621898 617132597 885662630 884733053 47545454 686654688 600373938 42132240 310120639 211795840 51132951 789769078 72298689 296750481 747290902 138879694 412654082 788463639 616323528 613379651 303125332 609616547 507466752 21856774 341890006 287666248 525397090 43355218 952032748 932117670 91088722 215281768 155372097 280678117 134248451 778444182 883821768 560596147 565741420 719135276 288147905 93475651 898480975 968306307 987113643 196496981 743695155 915521023 292344151 946043184 833296230 7123465 849882839 159475618 320250372 69070100 333963399 822596864 862848493 383283098 96064780 945305900 673531846 494437151 666046803 526385030 668558082 635237674 929952655 228265474 903944923 460223054 336325692 887343124 111758669 534708008 918703393 678273978 449796128 86141784 358782535 655291003 325553128 576035977 424636163 26509923 309883132 726119788 41946866 942045965 1369724 845189308 166872824 704592528 119178065 406569532 56523331 264545947 758461225 54650295 781734210 48201045 946264957 617593339 468759734 263052918 167564430 879532006 233767077 668265024 229837413 957069147 676752724 943984756 26865104 162657344 307791965 778753380 487583083 723178893 405921691 601898726 60458129 645476407 939568689 947390294 376554606 882141251 506803597 406092956 154729203 774832570 547954274 655523623 321375701 305751982 755701166 935891179 147430292 989043004 41797043 141273703 464113277 540336773 102738174 328264608 543072157 200772016 809046882 830847783 148264394 971057140 759773952 408685328 745164970 848613001 27813174 695693308 645499808 158330288 409162676 492615184 708612833 45599671 554398062 65082872 48939103 159089133 130666912 679879148 973694688 511998890 132427471 214079149 72963304 779050838 823704005 907562109 546871244 803768155 585696919 482418218 985838753 348634917 851591072 843298829 55917383 820503605 938037385 934848261 366956391 659989257 767731514 798819189 65848178 560403499 666676456 580558925 378901918 348003121 92655376 999564800 116930799 909015475 138728566 548202898 657815083 529271378 382497318 318823817 17186528 965350843 38387316 389376749 517928042 504122270 948762110 818575960 738018024 18383286 41436326 47066346 524301379 660683974 914754202 14998857 154566953 876698009 144862030 832218783 127336469 478069246 243019388 173252519 342188100 480188882 804167466 386024858 506659521 685962230 393485479 759137604 918380379 687952724 736101248 411265520 139675563 783198176 35230872 241665143 791396878 220016531 256401427 479031347 593088178 645133168 339549785 826725901 158587525 710662270 277853984 152435570 582015036 207261396 837938789 707536218 769246557 742531211 235393388 70154563 424444203 775007938 846354369 371997235 188339129 683003559 934539320 554116020 226996957 732908650 228132849 992835810 461843771 256352328 452555081 956378459 301530935 318822272 298090226 27586115 108992004 805907807 447122142 104850758 850301082 381342261 895027018 306451872 776751800 700726875 729894331 281391882 998871016 718187321 866048506 718270670 797623418 750625331 902579486 856956090 373273221 36718526 396276866 937075744 508513512 441680469 581525197 992521444 421465681 169625976 819706089 60593257 711574057 977804469 269666057 779440284 707484077 535367835 705752491 698686711 171810522 921182149 879039124 568374133 400663420 625260501 14443983 764449693 717352993 66823799 576223919 84271998 430224160 338984027 814778067 113782958 395228572 293348922 290975004 40753996 839484028 771770330 275726011 810350846 572652403 523920644 163089953 871560178 609033202 707615883 161965577 116213213 326447168 934448967 295430779 283925247 918724197 339909402 148817342 692268316 348371244 925934579 878146413 222651013 345699123 831429311 605795679 126527759 330800597 633195128 836344506 32315670 524750911 551425317 527774955 473191045 876775518 647401165 858576036 118605256 842318319 938965123 578969317 21194964 335148907 169456481 115738093 265333288 71939360 971502472 846148172 206639563 570470428 646988070 862157783 654724171 704994102 135745899 261498537 4906940 448282643 167445390 785258532 642972352 613075990 14464470 927567351 919957372 131054448 446178957 286533908 85593759 790148125 919004930 470388411 273971290 11504347 205304467 997409132 191040883 782472241 301217184 240499702 726100523 477954929 465898643 620562542 944131921 137488817 21736671 184218924 333983548 414137044 769253374 446900185 58265804 634166400 602435698 932510303 856942693 410826536 708141767 198027763 286389492 18339072 735811724 803280911 51882738 698060558 266190686 144272760 582384478 148029974 102922207 486485311 421388987 643112361 822656184 48684976 509023256 708220703 69994908 280833391 153530380 29603480 286670406 818665565 237081526 685189121 918195574 836136613 128069053 578205698 150740985 951009722 105741133 312957211 930886047 162871646 935915293 729379462 391863875 79968403 148234344 176740686 529098951 737354400 854230523 600492359 282754071 445827104 239202592 465227266 688296482 353173484 741556399 998647781 206010598 525905963 533180419 118065429 413174115 205964101 186475015 206284418 624098467 802134769 170901540 917630182 149512888 155632427 339007317 853804995 64218559 164066103 65131797 357575261 213577943 39612576 867059308 988635335 564058412 465689149 807765225 40228056 324162288 321505064 49257887 140352819 309190751 446233542 25044016 192739388 481341623 330392771 144523710 325241127 951713093 442596885 515913724 106496745 464171610 365794805 843978271 408196420 887229524 488125929 246613986 236443585 266708625 589505469 430913167 326037679 488362108 747453575 839014896 457176612 313431688 524560798 348977504 15274758 778174255 261173679 56065724 205551097 868962805 129894303 668393321 59106415 813880417 420724131 840525655 747231134 176413958 147407419 131391993 326617480 952337024 269188390 450394447 445770742 616091762 307064436 85925088 381838713 790108290 639021947 360804538 711854181 593268583 24359891 445871731 860323294 642315736 649316962 788567083 951472843 728512409 232120405 656296322 161875163 438656117 118006302 915835566 811615112 602791739 181946492 57163106 875765523 300235462 596090737 116534237 719897474 4761851 395089226 580110307 853257127 225838019 967916956 80020421 789529626 556760079 885152322 875753302 322684475 851791579 798807651 991022839 462617904 975089702 862004072 292738190 343623405 233103872 708284934 694350984 457081640 670639478 540620603 269770974 375337570 505291685 844045640 877775370 927668963 770336431 731199164 246593047 465143226 62339259 891048811 376655759 778135490 999131392 747598704 470471817 885219482 355817652 511004721 611390886 311695786 462963742 390198105 907843851 655990050 786682756 698727386 703583586 659029243 647649851 229930740 640691944 211857396 636890012 980765996 165390424 854626454 12791816 976699211 876489723 807083570 378901484 497798503 601270424 942280161 702984376 119764952 750688397 271662465 375262697 990480970 106957492 398722745 363076092 220163748 301863798 199120380 573023107 305994781 475795390 673192323 99520008 34941996 117834756 410185805 564565291 549889949 380865865 495918369 445027725 681195381 263067151 104228241 893227476 141264908 65164645 276615411 160341435 921176063 765754337 389651307 860805365 201743153 117083301 275565276 37087301 947632077 943150674 537273853 739068023 197286217 903317019 955391296 975365470 556249441 757957810 856455657 258885330 408259352 240542040 140990718 948732856 527915452 496741586 732933712 993440503 449288161 768992369 463244155 22316676 711433313 723594503 909769432 147261529 157900130 530951669 671441044 855071093 909042514 433370655 324427168 851151079 878557155 398933750 994804401 628631229 451264785 900679023 78690120 117672210 269153315 397413129 474578608 806663436 550141600 507111622 773444343 576933842 146215264 764723772 610982388 809996695 535879552 331029626 444798027 140606613 316546915 542028581 839437921 81611277 987291060 365942621 202250087 944460108 963120747 999032018 186403415 840128163 312401343 769739453 712871663 945422956 879758135 917434585 691522743 389288969 987553952 429372525 343540736 738589925 872891149 793880392 685209829 932958064 23436252 914178240 739780675 440495144 839194031 505815733 692150467 731772558 44451699 909628555 344368084 164560939 100711772 33466927 369877169 320424850 178608104 308363035 690613080 770936669 842798808 989926729 756541843 153861934 869314108 636867650 521235441 721447088 591446375 116802582 457127112 830414484 234394099 129680471 342681407 410678678 707866311 374249767 683906615 727444857 56249614 378649640 352212836 220901378 97232188 342300556 775257150 292692491 801644559 367442185 906183942 525123687 96507784 513223386 522061762 942086397 195233783 515442890 92386626 405735860 752976109 863448866 921556003 960495488 806451785 364385215 883052991 210259805 494013740 763450616 941266241 364336971 361900805 777112758 433521306 768012626 61960841 832077674 240379267 674522251 649020593 604162310 364130425 288899080 314140611 636369420 437217223 143106546 184108108 968440961 907560058 307747441 340464158 833424624 368826223 271005876 321025881 314019189 663129155 102106107 864087388 16331946 764421217 266476165 562363865 26225847 516332020 745421469 18704833 414166089 536448761 101848979 131994703 989874582 886352942 503686852 455360010 374895454 362294815 135780497 407569854 709575144 572403223 900163940 601408381 713339393 260842800 388774578 732825510 607932413 145600844 256033267 959473115 223035069 745643538 875177384 818381320 449710246 245489650 384050269 732434788 162130088 557150500 209297317 895062378 997043510 100945066 295515926 555615966 260969299 51438412 523084120 579268301 618180481 996426905 410856723 208236425 839446223 793491430 949708793 784363951 283213269 667338074 18055107 162389797 843347888 591259867 391492403 709567510 32916742 928822551 783237910 529544182 436852486 561986183 305530174 954463362 597638246 255950442 627397507 495675583 141165159 936966092 978425033 165066233 300560329 909535357 772315129 467273921 85386718 693139987 329875719 654566391 121110911 214601964 822020587 855762365 304135685 961701686 37108134 861174913 877224537 144670172 126247752 957553140 156612583 917042586 292618464 41896985 170794920 452222961 123864710 913632813 634695451 189072418 974464864 705801150 99324226 884138054 961290391 846161829 893303214 388292145 554328156 34631416 963256695 876444292 427850474 417190944 634697785 682456999 736473476 543747015 857172249 974609096 559787379 721972191 902007239 77119204 491132682 47653544 311062906 444245945 321878693 553209767 782324207 803531471 752062880 825497250 121152109 189442677 817444207 968578741 680990401 606018756 476528250 96325945 464177216 512352927 196812610 691388111 684259020 323798186 15833928 781365352 276701642 854114392 338101271 426459191 575005993 117388515 220862526 676753591 645688925 73949767 277222489 195080108 576014180 810254924 69299211 274841380 736650695 23562119 703567101 580962418 456029585 514372685 501278690 368663861 580472410 124310974 325858676 783190604 375612482 331280580 868240246 358355174 887265004 733870351 791981490 701602682 413493899 626032661 355661049 322345665 322288847 322815512 503870502 976818879 972716537 589066016 99890461 619707841 630093265 841137662 385717188 439665500 219927714 638507338 70545170 803842413 791520839 203867747 775211519 89805076 133493528 206568050 49710732 290283458 763101952 480315240 253827270 984242730 492433004 222966013 491973566 871588678 367864656 33128367 960321676 652950879 170608174 261139401 82796887 614246651 355628300 881032283 239958596 616327155 423470708 673479227 627746954 255905889 719437952 844762892 252304736 603301291 466947535 659019829 136159498 749324154 367548546 358413799 706968531 684530887 897186127 46306326 456367371 378979530 575378532 32383883 600879117 234587657 738598534 273247943 139297595 209095504 380994039 635546395 954756350 46378676 751689096 29464993 954723532 526481042 251252620 460898872 348477980 723824781 580585701 663886477 380254578 675961486 909794806 529843464 758927192 908898767 202702768 189756903 603953505 380829641 661812360 482752554 749185826 750806849 93524349 829253782 773741893 544528708 221611282 679722687 468354673 531916324 977226330 34428410 363208789 213454976 216104936 287054954 884780209 772085306 714706141 994723318 824698434 882099073 483496413 497490255 343193046 153787844 360294420 177027308 572950332 341408964 807053884 17536526 22180435 627079558 650744725 195069885 830442488 860140371 744620257 428884936 968532762 712322753 756467566 430248395 223717287 395734186 587875862 8256032 585259933 191546677 297395253 62553334 212425722 116243148 130071216 292985659 691247052 238613287 626049785 172031909 576192803 5699135 219896323 378069942 632217626 278830934 588771660 939118774 444543444 604597758 512968669 287630007 703453564 166555913 343089987 136081805 767153987 211675025 874949266 700678108 236874081 12713468 513607021 297650187 250514202 975579383 587446519 332505931 122940859 992581237 955316956 491587219 75242899 474635955 987573849 802347426 100141309 606471989 933587748 189092356 788918107 689112518 68360331 769230344 28733974 703457661 474569815 552571845 823695780 477565365 781108705 909359131 281437822 762747153 597082372 807593908 816856101 448386172 965265709 141791230 500888098 664882737 612318787 486885428 120987912 519585956 81952702 801742421 100025205 21001119 560385438 689528872 653248263 525778731 209065833 2239039 668410219 665000094 233701165 875981553 912724305 941229973 754080383 951855455 281932146 632391920 863720830 922972785 986072980 219339232 804284882 753677784 350456193 922160344 106367911 915486474 447204872 18565266 419949236 427006026 570260998 549171477 768403256 610230689 963738460 799563437 528055543 381700059 765020663 905057516 477723202 193294226 623207109 782133169 717845231 522622504 480427712 314175516 676900185 580053699 88218606 150434720 269211496 743766356 122238041 219538154 9702797 151516566 142545681 996218108 718203322 398698501 187397425 427938841 82594930 315518188 752059613 328900811 863766966 875683163 915512890 933871846 569058840 14492711 744568960 6576777 421111724 598656245 570791144 208498967 14430482 869496618 620214707 67774525 847124592 865063158 914028842 446149868 574015605 280149588 474741411 54010468 353426259 881782276 530568053 871866152 420525517 700204684 252060162 236584965 467336230 484574527 95684281 996240653 791504175 499327281 694387460 755883166 830977852 945345095 465716838 803570269 795737390 559730212 477510493 350055989 104372584 368071487 232854131 398948184 597377243 276792265 899462970 130923337 367704570 254189768 903018319 995409093 721083846 518658818 180246355 780238042 663360711 320428039 965449196 646248929 955324935 789524783 2090194 603064432 598008348 727763099 113735102 252395630 394589224 223550517 136653168 396557320 503372496 171140264 406297268 76294322 692190018 90402419 667266909 9848872 860655667 123663057 184996675 630296940 832980707 672577738 434478410 672946127 959003671 164784693 89753179 855583201 271713054 34599074 563693673 549468798 112133839 80673910 180652910 818990543 928003716 303229400 352477804 967706171 616887593 722288569 715428974 472341881 583266347 253827790 322974599 900539780 761522813 66195612 529639375 207766946 693344671 878699625 242783338 635329374 909614232 937001029 298067073 867548557 107626230 804513288 597943366 222033737 219012558 287782997 30480887 176973048 540904128 55118736 975801553 909136713 468483827 140315373 195111970 19482154 971741203 208483681 539801659 976131549 611195223 152353455 631952245 629284834 855243898 387730524 370645299 524258314 314310346 453025981 764595937 17059685 359800847 804840932 931178735 21450065 751384992 82381496 556617177 199562864 812517726 197780956 887722271 324439475 274364588 695797445 207121996 104330058 887377787 51146406 760329716 576152499 669053248 194311043 445783729 814916275 848276473 91361058 222503973 436581971 838464813 735835670 944770039 162542058 189390569 241226420 420778207 346879252 641325250 327042081 321555344 231948468 471298266 853580607 666682324 900316154 154728663 802456001 612241264 301061460 19784932 270821665 401537336 602340741 281023162 804867484 584474119 354126989 394555542 589768510 677256126 46064824 797097535 760385239 839222855 886749596 979001345 983775483 542523031 425317653 867686327 352539405 648390563 105457222 702795705 808725044 835191155 966624925 956945395 597570659 262039053 483358924 321119951 276504913 653665412 580948946 104801348 633319293 666039796 477157363 218528981 642421551 219880065 97866680 531214976 375953785 327409744 948866810 13990365 508512562 313598615 27719632 837711608 898755581 279046798 918516643 493677175 543459646 684782713 713081372 193208957 534443817 458400928 41798706 769347001 773073330 6709850 650621215 932276321 942108574 463425277 232492391 35780914 701999988 908604650 756642776 469600372 722371200 273692305 225891461 469627127 407333857 149318494 925685706 618903308 773287795 629701841 911006540 439153046 103131358 534788457 440336120 988117752 831147154 29218735 634820099 668441124 267070666 129740087 203469287 722833293 997576838 961364378 290417510 170931763 986147469 563773310 669869971 715148440 890266222 429803403 14106301 333751763 565686146 705672561 348150656 565893232 684787181 326384876 735738820 117123988 689079696 255683262 544354227 703904740 734261027 818045876 974071488 782548110 215415576 196434332 22692522 875005513 63591090 545796178 740549234 414772304 261788411 677773498 875755369 597174127 266765247 390301117 769504289 75136236 291693211 218419019 380832115 744230823 447199211 868341601 371086215 267395828 37407193 137106687 719291081 756349379 158653271 576905522 698009323 846183803 381443353 744197131 754948075 161250071 11330722 570207650 403985164 875372561 716810557 702429470 666492380 665687411 428949236 457644454 500525872 972308168 667678628 33208685 60167712 168276779 284658156 318512812 55586582 853402676 621780533 202988200 90727608 105327888 708971950 785558184 846594816 308529512 100218703 438998784 516163111 457866356 324076760 85895180 960446899 464314354 465983955 357834027 37902189 655892776 536866958 234009033 409068140 775886823 966727972 394793561 992684045 553716097 408403573 733690707 307250931 861482455 471505191 339890744 868662793 454564430 289298090 879060120 252524932 293747925 587263032 527440129 734806496 271831778 778414034 798171660 623181029 376898675 898986302 152950113 590966426 563804431 787687694 139562148 252208726 44319427 283496856 399266954 870162357 4680999 668475392 414805966 169704347 785603160 293873450 940860979 252677938 316165629 307520202 322215296 309390067 185610307 343685206 189401224 187967382 518921953 88044049 776427047 64257315 8644628 308064254 981878334 150174691 275995556 889167601 52480184 221210987 927959520 482580867 111109767 818760088 317921949 441279760 878816932 432451471 593569849 74093252 423637268 81916603 120880794 802619024 968801248 871499214 405817905 145221674 959092760 124799435 440410863 623263762 199452891 258175726 226388823 488230547 964145733 768723912 449394029 492714168 847424645 227932719 816339902 569001311 975472333 724031545 219813989 73063461 337067605 104201040 301241852 175660661 604252511 342233886 837307050 388719739 257763384 241070743 821772574 135830577 900848177 792230648 83830158 356389977 778067109 829280455 623434424 302547834 12621812 225123530 600186084 457744613 767086730 540697372 386473182 625412016 117215193 780119575 880523005 44990398 729554266 286330719 882387487 30666934 587030931 265405663 328646827 864744713 118960905 319342028 342016397 77054188 507405138 597571493 337161022 442307428 858051592 206016299 511365309 251312441 154400715 417372008 201757836 14502903 418043207 529857209 686416317 603813622 791467566 793687984 88634596 548283484 362064442 795067449 190589218 740614671 528055342 326796410 228871962 316359357 171486419 623886318 114894332 223467230 605450236 724602956 960364159 491730868 162464130 495899803 864545760 990023752 455443019 589314597 75210468 879562347 684033853 296751998 1576668 592372659 952915533 274846087 587576476 808969343 288131443 152443999 197823366 795963642 682170291 734432884 19308667 765676051 410378773 17606525 895922925 738970754 657940655 68113777 468941265 652196810 716832153 199584150 734050469 48311087 814788083 737757565 997670510 226723013 872447722 356894709 87132349 997000289 726561458 951076379 101391527 742586023 400540547 193416274 978742731 389511162 709956767 926228299 114796876 403980175 633013584 318111991 483561692 925953628 924833257 718321042 265768368 483310627 889712837 259674273 640506248 45404267 226958660 536327152 772230567 892005250 674915026 110149269 14137309 358054789 546745826 546622441 838978945 549175121 750906092 882975891 178214510 262467471 652432757 19892093 150270479 801242542 45362947 767277276 448445519 878695146 947400748 353674543 526782626 264921920 149180811 471405622 336597260 130662521 717765821 762784768 625377042 407811877 666619250 442575843 533609150 921784733 289256537 736608117 369236906 107667201 569762349 593655199 955551733 909382200 359770288 308028812 419742529 100568820 921594799 559278512 138002366 262409901 20497400 719252169 919737638 953712034 381786214 161445082 722676658 569946589 456083167 894160942 188327212 896385068 656753482 117042778 832255969 998764331 277795992 297326909 257858469 102681653 809424327 593914873 653008602 804159094 174309591 291069943 537686885 123157983 147067859 989577713 606643121 329401381 452704204 947261665 340147129 981887945 329355231 379536649 247408121 405180693 429329450 701889273 53237878 100955928 664175322 316945025 826036162 113220779 498318113 791001026 741516784 76011374 751887930 295522844 27447713 345547464 429804134 801471295 562586870 247315181 78888430 953720348 318628 985542606 783410217 213179891 633052893 313185844 140269676 358269253 724848734 669823138 5359388 789700830 885322610 444007529 841847458 195597012 285012196 220764321 215630963 824524674 232993548 154520362 162713604 831432846 631399622 812909489 206737373 204463589 306378362 741481119 229610629 817034423 995303703 237583409 450897806 731780227 625442064 671831396 873432213 403110924 13488486 810432259 88539704 57090656 240269982 46374045 952936228 897181138 508624329 680859018 824982797 404610817 477732216 643361260 697081769 222710220 365304527 590109610 316948412 985654885 436022895 862278005 987087891 132461116 794664331 238542788 47700604 419297039 749486292 817576408 10382034 842695137 785131406 20516025 370990589 626189312 203030652 243770935 361529567 550582782 950988013 112689130 421350255 446931643 387691445 92523058 246483365 446928984 25503287 373453626 923381380 368759107 888392020 360495600 729326872 941407534 6345855 456618252 471056755 758672918 215664298 505298960 799591853 538915651 122594646 792878147 288591593 967466556 807220617 488402357 750094928 168596439 532529360 457120829 510319128 590419763 407893571 758381183 272472697 46176430 168903038 834882270 351754420 983651580 267426729 636376721 241840150 779013133 909000306 579872907 507879153 206538780 305501454 781128333 218700188 336769200 287351615 882566176 43264892 616607637 96024135 444262806 602490365 980410845 499378677 383339269 427629451 778711268 721179552 502426444 3614887 993605458 109310246 920288536 841976527 897175571 128241646 26570196 134998927 208211287 120966631 23794876 834578297 193141148 764612741 929994702 288682278 65856171 710458825 880305877 907556411 776559752 187883828 840542813 549633630 153071244 543973595 740674752 79295046 1257044 714173519 683968800 71737517 871172805 913763761 620277861 149821264 868119813 897941671 238701630 231259647 163645838 895336796 8941091 941569928 20728092 203008909 73365588 125573321 97789873 518839665 486098652 207755169 429410713 299126994 33348233 61621242 941970027 121832448 156272114 700686027 426423809 810248909 405666938 115930891 320100736 378666907 271498054 116349114 228281941 718647373 760955978 569438695 234448178 239052627 596053823 554326433 626367766 822889635 387042974 874700034 120513602 624740027 140782777 648675374 156581191 899146659 51912857 234476366 723845620 95814631 774352662 308325271 514394219 408823197 27179990 149439553 343370251 354845541 537394750 152089484 108207232 145915236 933010045 136614342 839447746 399004233 263260814 168907328 127508492 636955210 756139311 714202197 323921123 503296550 849514216 576061028 967167505 164181539 180518669 202982621 946315693 221600013 746316976 608714029 95153679 107301181 712308665 13919438 658541281 454320014 106669001 735047752 807883272 34290285 917198164 748884513 130897088 190234817 714008210 658905067 495306369 543000322 515644546 436438336 683655182 953267249 944995310 681307332 33780856 829651 702209637 856016672 780936719 249329141 128787774 148516872 586831729 218253868 861306527 767417654 772174978 704975515 396522089 925013355 583174510 284815332 541373775 44478321 268211113 821576503 861313483 634118938 350582513 997480267 435901723 522922564 269357641 571213661 881716807 874888141 688708859 41561138 73659171 381049502 443638687 573888795 864231235 644615854 822404367 473729773 988520713 6962167 449258353 729776903 110407837 753112950 645615407 51158093 26941167 154518589 120734718 174766127 168393399 478654551 386753501 87092133 390871415 156883937 985847821 815617577 124828789 601212925 686424603 527526597 417599429 446783958 297013979 513408772 949247288 44804510 33939307 931410943 183942006 148087695 279032364 767202643 440833765 973227244 439363533 106293798 802478259 25745662 364625474 19945513 630791641 125688345 775924166 831439501 663294488 654929044 801806815 219853589 459002104 239611349 535385686 532140805 386152138 339715908 500364356 398851628 573084581 316109141 674160385 358349793 610906218 916131457 515318069 143920639 238136256 403342409 311380425 677730801 183566619 342564409 183495920 564137376 897086382 679476453 921430317 197374086 686146428 174089955 612698172 564759715 556724815 251371478 577661489 417875319 905429684 48243052 773339736 515633940 459774725 346701908 480258644 320006931 30021731 885194059 980994824 864068493 593221043 647728142 315941790 337850411 405447334 367400045 274918029 567329562 102162105 477554998 576495758 200702995 625310759 319456073 116626342 974118225 952413434 951625856 189064740 476820122 929524741 714662605 94186906 419512383 423625178 814675228 662107621 40330773 354110430 811541613 979741737 291037306 414278457 766126781 989372370 375727445 990427096 175169048 511901589 290740500 18043257 742875027 722417260 909367212 441607831 522497094 99373214 135427998 757439866 782919251 802426551 57863917 901575478 933525989 944869000 52048937 491433122 369240109 549096498 681827688 211299167 851992167 318007574 219119944 131266259 967579859 280198370 767035889 484947759 582238654 109066888 503562255 686208620 708380280 690234183 625602008 443342153 250679901 91223458 947043341 220277329 840948174 975173220 227456752 101589712 431707445 698664869 173988693 369374688 938804742 457770941 107112845 613552484 585781176 389708881 621572217 764030722 299818194 815288142 328610941 584745768 360696795 875295723 72328 657915925 215802468 418852767 730334485 558326465 433105932 188596018 476849434 301709304 145116016 442727343 287542053 554964812 627081022 945741675 330094655 525167635 813644071 746606337 18275073 147975278 544484580 177111638 476114566 573449796 680851259 242195351 478359417 29815368 359231216 678152247 526810884 588239600 193064923 464011251 853293536 847265148 50954708 423433678 110732107 486259959 766257597 138770199 925950472 991334700 978976896 859666015 705528683 413601210 702693905 207305860 877208644 44247804 442992233 274039211 381325815 191931677 431350923 691119164 326557031 23029004 815040894 937893361 610341888 574924160 472110936 231416003 609840830 54176252 934022709 904521721 771575579 985614281 956489008 424612122 824710174 203206386 185881979 714896127 967169367 459282772 657439556 637205698 996776410 916699023 860061381 998571208 592140103 14235656 35106115 631866814 927164610 404385781 855541764 70801304 993024508 63958599 484453217 710321297 229347882 491563714 859761069 525527596 96971019 322864879 196479055 241122363 858642404 623980317 7451823 171952589 662613124 653069157 517687103 679802430 619922497 903156902 600070266 636171828 734769400 366247306 498449893 631400093 192268816 517973888 891618564 552927659 832563066 526192577 671949423 9164251 201648808 379956812 380827838 588687599 458144156 473554666 345500051 940971766 304769499 347936812 100347545 373681989 791244657 993967721 796288130 649330036 511279094 695344835 80997897 462010477 75409288 609250846 856417005 514184025 158461391 697755697 636962556 306186410 526755577 435213423 341132550 161447200 567654584 842423578 474009064 210347710 757724495 290255418 239469952 975382992 412699265 46906526 221074365 292805099 841374366 45516514 63420815 220656875 826283901 637680738 177658351 142871027 523484539 835374152 298074846 398131311 784675455 993824903 282290285 288767767 123038964 453443794 514177959 95538914 493503191 84442028 697383338 426130968 169387680 33474910 830727319 839964999 611020376 301793526 363430040 557933116 912966796 587680591 12421858 532260635 321960276 548565511 40834221 541326658 168827724 52314248 472610874 584703587 667794078 397869313 416152533 833029487 232728565 516697963 291827920 825634210 642514311 409501829 690387076 986342784 855171602 637454551 984368983 690935256 29485024 336363955 318069166 679373498 244409274 784255024 625921791 667904649 418841597 89429552 919422659 27270880 237610369 301785434 557423996 556579253 698893998 880964638 607093174 584485941 451726450 886486711 315381504 171157981 368512838 489353759 257789176 260180853 155235366 381781796 871084094 89109511 35016601 52295509 822002044 306299878 315039402 412645382 128085093 949757875 537393652 84690270 848788659 911190858 387274899 610148674 202348328 274807520 911408942 887510114 266331281 371507172 554933490 239711542 321538746 714515988 527975062 956608255 394300804 633125493 383853912 753147589 511320012 149706322 543897088 811167832 69957251 943076415 632235995 393134418 52216722 468272920 383222717 861559824 894139643 185964803 885749511 459685567 97300924 350320235 116285086 712559688 757477091 584499458 365299699 101796202 651704957 102633675 524496376 927156645 254958249 989033730 281273900 170298428 198242438 1913657 648152984 148937539 289008960 955143235 693241291 749302417 93586185 516898618 382914007 129811144 928369691 760952455 692134235 138129998 66248632 97951953 318990721 348583508 460171565 692778508 198633459 479001044 487147720 455710842 509027305 263157388 610886372 298561949 139320610 526106631 132279526 341846333 206140642 159913616 774484022 656242290 853592314 724215876 267412296 381393051 898711745 941646338 325550740 933545045 707331088 479302258 817737631 318974610 195890770 679917318 343207408 45865860 465066357 286767347 608698395 766401961 685550827 74369083 591610554 911114947 101736119 950799012 25189232 291902175 60992093 968098499 332034535 183522640 266967533 333795052 979833040 975493559 384185083 113195587 528781542 362933490 37611943 395522476 26809837 805234224 591709588 240032986 232138666 351198185 160289525 857276740 313109239 910555858 481192319 182094124 207097512 802843893 211107693 25302169 152468642 701547675 500420233 115063386 284306127 586891611 595724575 871979786 437174817 798048527 518455044 590551046 192908176 50252507 651414170 913831034 953864994 431447597 583714759 247206997 615610590 403121081 9638646 604904268 961872346 265429112 112219168 488844259 982500654 959860916 318454210 241972321 738388220 589696245 265169379 258472919 214622063 410659088 630172433 622877978 927804857 60093218 544742241 414773200 634881298 24913040 254818675 481218396 879402944 809969413 553164138 331664883 455589388 471994740 528176632 862502793 236226886 339599132 322997077 974091998 979757260 374952574 220532792 561728638 959312126 102593130 278180590 640413622 109218888 154677491 807189570 258364832 798472216 942705781 880936588 835752988 103006190 254218386 508154024 142438101 292619336 832318265 135897855 619451444 298316208 53388700 544717948 1223289 938149820 233283898 973077912 164239518 162973700 920425686 590513489 102853999 677307691 428636543 93233707 457193595 786381273 508298114 81667894 178442523 339032515 492648835 418981129 528502638 538836641 238431072 750844097 601215326 304172343 44658507 512818435 890728858 677484110 406043315 753317120 343001757 333966779 886541142 105768301 475170723 698420564 606917693 33945481 87105461 644423166 324221612 165845526 955882148 145356963 767209278 534621802 580114442 208018228 481323212 488267605 907975236 148036525 180711290 949539385 719521663 95987983 468611511 395746808 145127591 135701092 922899764 694672901 779935861 875776960 101171184 514129233 145625195 401258301 364976940 8268640 429986255 25414650 829378681 709851956 5066930 55533349 359966375 965346911 135507693 47116014 89526995 511746035 820811040 509961619 203131746 650148241 231095731 4414545 826994432 983152221 57405399 786447988 706450850 90358280 80886915 155199567 766940549 982501318 619801462 355219517 2261546 991484249 357243964 973812638 44901728 698058755 41650469 256777185 824638522 37011347 252666949 886536050 406320150 879829345 435915904 289226446 135789463 868728649 647770748 829322616 803935655 137040563 844409771 535611642 182017662 861613964 408077125 944485863 503545495 380061516 707027273 108050134 57422261 40690160 93671296 621953901 236076516 841453312 422574203 347139922 154231420 161388168 424951952 378662716 115021591 668880414 753325794 674898405 762946710 903701475 63373402 298086154 232336938 521566072 699648676 784148090 893020743 596133139 361594682 831465734 889848229 411829859 558197342 884138888 237894731 459420587 569982489 788715491 820691590 887216302 797630775 115238398 65020394 844516796 777492562 685791953 681424467 391599789 583388876 214694227 751960803 923356125 113391051 393996165 34301706 855234865 972676929 629414770 101319035 306532633 131114727 948235822 922958639 304286090 624486202 357842642 991133806 617390852 731674757 229868928 202518980 327686030 924593110 575274596 561006341 938086322 540990471 761983663 369405514 217730957 889585849 20077976 639990013 251393974 614064466 399900518 284192966 701828694 530477059 896558690 337221787 4704286 906168006 327708126 167017399 645867330 912183897 324383028 713447582 408729214 777712452 85491913 499002911 392858652 233946331 491335937 711730250 908894442 996189232 961513811 748827520 315620668 593868074 262694713 493563234 763401713 594357612 127201587 204175839 84472174 377924458 471516109 816945702 241253030 209856347 362938009 445486523 241290763 73076284 567800624 752385371 399559322 996945626 629878838 156594709 912995549 718444739 672737366 407761470 899198433 386980174 10077505 792489074 539341885 681481888 400556719 693441172 201633548 956138652 159566183 35355859 923730680 330704884 242909743 101080737 222468397 109051170 912388315 166789051 32504418 398958437 69333829 144016163 497114583 806724035 527920207 606138920 124341839 561108497 256074980 717283679 625272601 527109603 583114998 584097184 793116941 585965467 791081598 754741525 832694152 553464160 881853058 302681636 792382832 14831652 312418825 795583110 637198389 365227166 319065892 857818678 844555979 942141008 222173680 86872184 519436467 531188866 186998158 147568345 193970926 225738050 712245034 703073322 47894800 710272104 228813045 541746571 396978735 253921945 560552745 942206814 841886692 796407865 164014343 126274642 383644507 938465400 947839451 19208792 623190588 731139152 877649398 339836334 4932036 68884867 66068916 727429082 160075182 899041173 254725241 369068709 391266624 62935257 929314729 869463842 291992138 139961188 584567226 460642482 412029985 859628572 76452137 240959990 150564000 266052517 368934771 327550941 747422005 462192497 396326950 571811481 316455366 494532791 842462675 121274533 529618382 851042166 628610322 715389896 971753293 561511291 286276489 789527053 264192451 141182802 377434849 166105800 245712194 707895125 740174794 724529559 857248610 960188069 165496066 591832922 200341055 671144486 637430856 369649477 696158591 1624975 22463336 975760322 976387921 298478672 762047799 475105174 762640232 219701425 318616712 779169987 720043529 250589879 664244034 606421394 491973876 573580083 32042320 127645083 850970236 412704443 585077154 157382326 911230069 861562544 827327285 618988044 541487932 913202236 116010502 672661767 292372152 566525263 244129318 642112603 94052699 645919137 412710562 468892933 942949141 345665457 611207318 439961929 114860647 387375558 678159909 889039795 550998873 277507317 801757049 387851801 73421942 591837715 810576323 6763154 491743705 29796545 251593278 509408394 665344026 81447527 852007727 626362790 343992677 44746549 161977563 650821857 68963429 786279716 848670358 114465648 822874960 583101170 677409213 428439517 647394534 657283884 511515312 48859379 906150252 912384286 497124315 857575106 199923120 466778592 29006508 963331500 598180364 970783063 83296418 129496403 844882777 940029735 580263485 542689699 342016513 549437886 782740487 860558289 176662254 615018332 826124181 358803801 684242077 401675514 980626044 728434941 470457861 482827621 332446565 259949004 698681776 839404587 801131763 199708186 691010733 106478755 823264990 266831491 767591824 800267505 377494749 611102954 466682233 689748216 898432949 270457724 307782413 784324974 130184236 395455918 44542330 874785992 866334235 460894524 789002617 479061062 908370773 83133738 112789572 877223667 601328831 778717890 616088741 798972059 798647620 517511839 319581673 222084827 67828441 782840725 20010724 864178702 106011504 453063116 338794745 628233313 756305428 767899571 336510728 701564611 867318730 6217464 502822535 979660776 146109608 723186076 304974436 602945879 784825028 530157794 3564069 785505877 38832452 548087382 619147978 191009520 404317518 378575567 320734692 991440644 467915034 821322082 745643658 876591920 133224159 515165309 375543385 942682077 157781468 225975492 148105847 915227195 667673955 116669998 6143123 264510271 812178366 280632570 994470371 753263277 565836620 416354473 814905893 719986187 576790896 813713158 934418081 961503146 963418002 133126954 909501217 472987557 459272228 772293743 816235264 962175705 430200227 388159865 106349081 135943150 219926415 81104178 9747412 499856470 139121520 975761874 36198433 857427273 782178271 170798547 501012592 474869958 719811438 82622714 145179846 550596758 425673159 679067988 299798694 691778891 231411342 240491573 964269598 169057080 750351481 281994038 905189574 704663941 531967040 879134016 366552251 480602388 568548776 911289213 216164771 425040279 372894840 23805536 65065389 871852679 379603333 281684649 870143119 410779684 242398121 951004760 283621512 800813687 372252357 282359741 397222236 77994060 262234819 804660842 883166045 443671107 89541269 984067642 107528284 15458741 772735798 52795477 809252540 918397901 275511467 633857060 511784547 632368253 938825977 973059164 543870907 428754298 652426551 843948028 202789055 661903686 319234170 256826692 831249898 307218986 11884267 741478595 177779011 399465780 297477294 129710156 356082523 921028415 86627064 330167805 870147652 116712426 141186308 625581879 86648990 580583068 702652180 755296680 993120913 910194055 593146736 494543943 91178697 546250914 610031471 357639755 597301630 622783151 218888293 746812988 518837613 785671731 702387896 820546276 154590938 466354816 307867859 949855322 132454040 855103152 402140198 754070776 495172349 38141603 75499564 954492004 308540130 767794686 349603686 479506568 818358960 503288116 575337058 190171803 137868632 173841534 92605616 344747543 164685134 551324888 896592360 731801536 124297103 602687248 217552561 674793124 707735714 339278515 400084400 911680790 292842905 360312598 589018779 232030643 334434565 108703329 271328043 56393822 226676740 242345079 880596002 593996103 241412416 113242121 245398093 88530396 836238312 163369870 534741881 854704607 687100079 503062601 645824388 993966160 72505042 708259137 192424272 906971774 318993693 947382342 199461319 443219709 456907481 488541938 800475864 66067112 585401565 655253923 994460293 362759588 192818312 736534659 549273542 11060831 761698499 170358911 538594222 586884747 495774456 889288274 197582922 158805539 686431774 460701055 604399032 920872045 433141686 59550536 714435352 802752758 44590789 26985920 83841429 239194771 914281177 881040577 440628064 295464540 497705223 44108522 379309748 949856441 562118893 374836898 196258517 84250197 556210612 25089307 545486601 36453157 590783240 692952396 73127846 645579620 831509024 801072375 493766916 870965399 38147259 403973026 430040712 877656714 439296031 460369310 140267931 578440275 23573528 73517829 95647406 398719307 756878848 718350004 251060796 55485464 731636659 332841302 114159560 16988070 411147415 328375900 6726365 774787114 549874840 431469819 592719368 913221664 764426035 132106549 976249322 198287693 893526625 930948816 156048419 101286843 612186537 185180259 216841818 728689856 903944987 270668860 813488454 385351670 480004171 140859780 915563422 675823172 983911254 700517153 15009062 330558167 303728617 943804608 580664232 671883295 418918443 642709468 984830452 446819547 953090517 890567862 493753576 368455440 122961702 877245781 265541221 943817481 738554339 525449 439222354 395666009 660264026 740761323 931373479 808502494 671750756 91061721 1680217 604930494 864123484 998676606 856107884 924149346 644473386 666598603 590315500 722371966 201297468 193566325 682827240 210341395 72216201 928628220 816040062 303061598 870134669 66035117 389585358 621314802 895750990 999147668 683713026 705751969 359105118 408166794 270279247 587384964 259186896 426845747 718485995 250627331 666946883 952747505 675795227 830276811 335358942 387941625 329246248 459961546 464512335 475096896 141022822 63540805 927286221 412327817 798097199 45538746 305605138 745435226 2334945 334145017 435276394 12540677 921692653 966617874 992696225 490194081 370362304 247952229 877431306 92988686 590048214 63866005 751329930 381912569 791082163 646616207 417026434 73406923 590392543 91359876 797040098 660919488 713995755 24331764 949137441 798900185 258908021 86246818 526120763 875397595 674398749 688264346 780346807 542682713 95854221 209701170 222595234 598214827 774936697 46960642 154861209 963530993 571921307 844237043 254531248 780075282 381249714 90467375 694898582 44772288 891493515 530779435 435138165 522410357 632312056 195175329 672594437 732220268 220305876 186229911 540406145 655601329 927304704 134584666 655503795 107735314 110922854 159940732 687425510 755323435 406604539 731156701 667470069 848072278 575931830 380225182 603959352 405069250 577915803 469752365 144138907 721340252 281421233 992125757 622062472 426781661 723062799 986290633 473300473 764057796 533569229 584812313 452896616 345921371 355199245 393276086 394551009 333445040 382056955 329915253 212969963 877402013 642125765 92493941 56256931 294984131 317312682 254271509 325485984 651403399 797348843 530940167 880444688 582065948 99196113 316076347 521419678 412599930 792638894 431018735 338925182 565849185 867880159 453341094 635421554 250815576 252128195 830755119 181326268 908977843 896094148 88106139 671564593 889309061 607208281 167511367 789664543 148476339 947942134 982585817 386579818 348579296 270726178 926144829 740975479 244640129 878845543 89826213 520033074 38120909 530150485 80308625 322459669 292337858 160062599 269713601 632540187 519591980 601181343 972590915 217820365 708446872 688537161 363171435 384112180 158629985 880476213 121275351 232766958 860403876 914641181 131745387 956418066 333906511 516265669 562381134 165655116 338126091 207835383 175124220 548347593 615588947 227964549 56871471 172718907 3341417 60420681 35898599 643874277 203098452 132927012 4010356 63477899 306555364 405243397 281942376 275062139 300329138 141085912 48743074 688992908 589953310 742155675 627213383 636315677 978890831 209021518 840591807 131813397 13196345 352643327 659312577 463748830 20407950 466978493 279278921 661107314 955976661 182406818 829320346 947963214 544508496 815887571 690744385 463778681 549353748 730321785 124981779 687502208 409542903 630447557 976196140 387972989 632054171 571766513 778672112 512410632 995258470 314365762 241124618 400364362 724391305 87064321 160079472 204036596 126398206 47153023 998485342 191920185 927010691 850958870 612439640 295105753 152615328 362428714 718977579 490355737 372381352 886332197 515351274 458572489 357637552 120415609 554150128 368482106 998546076 33762721 831675367 553911890 351208721 217219100 36089778 983143026 438744449 427125112 700296079 286461067 363682850 130165574 129492722 716031248 355342839 288903456 395160740 51929860 484537286 160313769 67198386 228871401 709186336 791934859 790260333 541750223 404941663 105650295 199493490 676281933 98761891 576056360 221052585 456676735 663472848 374938976 554262585 106506 180932250 350048491 301092249 573106467 994276475 993086616 449222787 942291834 874351022 257726533 590045182 744864848 40100158 38915281 6611285 819719274 998818046 94784809 483294493 495341846 946033283 441308477 836598833 147647276 556916269 657230088 22257846 343070217 407027749 937068941 950680346 443144341 760418650 739163093 605409039 140828731 949256838 758842355 327084174 263268850 714695978 992692224 398889698 380680508 242557582 990774051 332281748 364046107 447172801 626542206 145293688 93604639 23943576 644746315 180167085 305597022 323842490 584633536 356291731 432585846 457785228 307848480 465519830 736806028 235264574 414404278 182751344 965298771 945572553 152016340 224456088 264004860 95962348 813487319 316795860 974896200 654061616 917609755 122189040 87970685 821922022 917247502 95940611 393122919 293589796 244887075 667371109 445032031 976749006 497435601 229140154 582924098 399947145 736723614 531457010 250826871 890556871 553566739 662221887 411000812 403667902 927700673 54353951 179563799 779206000 540820802 867323219 980773877 577097894 671567164 901206507 715910670 804236272 568991317 94895926 507848561 156039588 781424960 319471318 927868338 398915303 285173947 838167471 962738417 928876698 260796036 131960552 950346450 433745013 904799846 648296698 526298500 801399273 66601781 729114785 503207104 327996 856671177 518749660 445938370 516990066 121801222 918673662 733330256 785838688 741050836 3895705 783043770 484835226 766103081 62936456 587862229 478350722 850092540 741167599 378467838 460065089 582769490 220188220 339588125 960132292 699266098 482070307 512344991 534420425 626007472 872888734 823878781 19609291 58648807 237230069 513673008 66870802 174635000 872185008 325013445 268930738 364778764 187639206 499793604 596339075 273089882 104791285 978429001 859792930 516209687 712640508 820553453 340970491 178205065 627163756 689961689 109935931 151072246 768054070 568919738 470169052 753785525 989385112 464507591 818863261 721854750 705555480 216788926 689873416 211933587 514774398 653762025 942530924 925213311 635040739 51074063 167977441 907169619 159995807 894072458 82670920 962043275 432249942 940014138 19793226 999623590 110659064 175662469 524296788 851408436 474071481 333212500 156827300 79308994 162313488 658142242 827826997 535470829 162860232 912643311 459146960 730435414 569736168 709177917 733825288 429820584 841598152 454344987 209824051 5141652 597834755 338918430 183360371 798384855 822580605 241837162 328730028 613887023 250433377 182227105 400354453 479361898 220947748 124562417 627705504 587636825 713648260 778313489 691841809 610905301 755935876 904939326 27180271 118776259 727673969 998551873 103539210 59324426 669435100 387800166 700195323 495557022 810002086 900175748 770769185 972580475 176900080 674258427 351137701 429958047 251856167 379755180 858653304 523893784 840672255 684853516 529749584 750116855 764251767 245809164 541751985 209929045 869456846 676899630 141646049 548105047 581522836 42819959 879142126 704407844 329972893 585468530 329162933 438767857 277424644 805273401 751222482 694879991 965108270 452138859 554156977 731727480 488320456 333076522 48100992 674965695 4738246 351838504 128882230 598636573 673105763 185052059 425947798 733134063 543571747 327171902 124206374 392338 202369493 489568090 187468345 116986486 554622090 160900030 223640037 506724620 376763552 384812478 544753418 923171018 305287354 855352634 378365522 627375928 445571015 656313240 183762220 626856926 144168952 410557124 569290448 117435724 457229260 84728377 103034176 657177631 259383556 519466481 140210243 37303800 984096177 357704048 950158953 399595650 717272354 520786124 730057736 22581870 717485304 570782100 687358535 590939769 66124819 961785324 510219785 274120802 753748898 919520631 580401916 839305205 407469592 97953891 475613855 475250693 970587699 843142759 85783855 74898793 762706421 750643137 282496690 917112326 152923563 111298105 605400059 194053062 422849256 912816667 399773603 392293787 200534925 338423100 468517127 518908031 60065464 305904126 837471569 634771061 711378392 156075076 541423218 279333765 901227940 970246784 855506466 387888324 934146325 477048486 901111008 371352907 189083246 808942899 14936311 717284668 807874112 464063534 422257523 741466819 913339995 737315369 433985327 842608399 342469341 105027890 52853197 925642590 406056745 752461296 946668208 84188143 89340652 108852356 992621068 493041423 446221596 90426782 971185115 532364813 94578420 349884276 683907800 152905287 42423542 412976326 654249359 688502298 81739762 731595223 865689422 671108599 584047611 604578167 946649904 523050829 64770410 492378618 308687124 618477460 360837095 635657795 277751971 596107090 342436703 765967028 830274634 119358734 379601667 346537534 939492423 257167454 385986127 569067861 338489234 415558873 754187274 60707064 134121725 508028195 622624064 989563310 496915473 339706853 420630085 316896391 988168742 794688211 380729268 824963091 359964002 662904228 145086322 460777334 287697323 157677854 914692011 269187925 925802414 867209224 630687186 876283612 966196199 146136632 606240679 354050759 693125523 862137733 794577450 244549709 267989950 185385682 903765677 431977014 770470453 171977994 484341180 724937685 972225682 209483296 651177019 741782525 643763508 54974989 20860488 884569098 759991366 757103571 70092885 668710630 932121780 184146554 252901392 337995773 736057147 99629083 189726077 483588167 648549209 972085961 943400921 585663809 851807317 132843434 804496562 411886577 185858110 438336489 209251552 961940964 517477616 262464438 942644093 365842485 901532429 481070924 69540589 77344382 845641463 269737455 209941467 100933094 530550753 51521254 9934908 663964191 875199172 279226501 144001612 784648792 524407136 357815078 57472915 225908309 436310335 971678253 761284569 658941786 901722796 446570241 839287856 569457462 673435076 249336853 774496765 74741567 728000359 277741031 700421084 641869139 411819579 844623347 580962492 24708824 506527667 801973705 167117010 609801663 882022659 918651385 912036507 558596474 528342062 744124698 385779673 92915722 671144189 94953172 779845272 369182965 19170816 777817806 302450735 60270663 133054348 39740860 804934201 561708440 172547782 963399767 527187352 567520521 316078741 59952737 74139002 857389627 114004646 516585892 808218710 911817057 440718965 966864116 169054436 581356076 380842561 696338729 693608747 41649374 158469648 332187686 121892213 904080191 175741111 199845847 20530008 835029401 728865483 672766252 129782960 543813061 917220266 800150817 36172449 957259807 512750722 869413815 212104342 62222990 605534528 831211256 325212486 663421827 170189213 979431928 64707498 308787440 736122902 486134223 497258507 139678551 813038840 11692193 131354350 558862522 268030803 983479449 701982254 903948714 735055354 221476068 837713893 125502527 558409364 810865349 533362551 312288532 536270469 539502711 737982607 974539858 63969278 54341189 428676643 151928997 229245177 303358853 31083887 676781123 504474162 453913998 651573495 309179372 58702903 605924549 670729092 274494950 758230099 213894545 462295345 746203390 204814753 708995431 577509462 125985674 924684801 463635390 373349529 90315373 39614748 864345373 665158114 57858054 791841633 902019595 63570795 527533382 695513864 606591003 962504366 926693031 876016403 742968036 333369454 530869538 398483014 624231183 634875832 251126594 813725750 958192450 315254497 379316753 670436411 462666544 867134084 30578214 909246067 298987667 655051910 439441570 187248326 843573804 472000789 742120490 855627751 857956041 901120929 227919850 859101773 724196406 985253355 136080028 851270454 940244053 206852850 139208571 9980333 906265090 689867783 293416783 463005568 596893229 835039676 778362724 382133323 189805763 608549103 182519956 246909035 354901951 982475200 574433338 923315206 977601060 144723104 17561407 873143827 186838270 86776131 368845582 211635012 227034206 726866339 792850080 594522398 292876893 957816579 212226930 975909606 466525216 314342643 436033675 969357998 141253327 378131525 827862905 628197452 900704924 614928917 671055185 605992549 122749890 808494280 102667186 893029210 352550276 710755595 994546629 947673186 624057644 277726417 146772786 531702898 537294604 345295958 686974263 456688459 336908671 112258849 518151050 730653301 499451364 190666490 323006329 864147009 544557992 673106169 218218700 901515461 807531838 109525624 102908639 317990628 250711328 35945501 882770317 302925125 399822030 901664467 237117499 466526039 820175317 444199116 131809497 884173909 329349317 811137161 995005661 75620412 885747255 746548170 807590980 937969368 838886355 745840800 227338390 178919094 740153660 243498587 998706147 213702193 825215786 311011992 721800125 756894823 152912469 913067068 665115205 282440770 899682945 578073204 251415840 355741041 111100786 946140597 699581052 422103403 582914050 482426038 851216914 701469299 938171656 327130498 757152798 999035536 837528681 351634017 110672998 362961043 401969672 608620265 443781944 668669203 978942175 560557301 210933868 447918448 963239395 672867755 483155039 142183124 439221531 449819764 291670775 577033519 190629005 4900360 21672098 928669750 995062091 678551392 571937114 816397423 585450098 82931397 982341016 53674013 795381287 775997631 331369829 871245395 21714573 625082146 876325710 56043494 148171994 619734540 869752682 640513148 511127114 688889570 15520345 38009210 496389917 863629137 417470014 881166096 362099613 938693704 31080395 210254647 123765020 277029128 796422960 258097325 742488822 712508436 422249779 111469052 587919757 292819513 613791764 853917303 151765835 8186761 664726180 58972465 632917409 647853154 948235066 805182991 175957001 744562281 255752372 816214196 158281990 791743369 928845174 419376022 540546341 553832693 31832176 115609322 719453172 925550124 741321752 782264241 240844563 35738609 492283247 387741875 996899613 794689870 487909108 185318782 340773567 113642652 633932732 852680558 936037804 86788212 564214363 64908453 916185505 729811642 263376879 689662724 627290970 719010205 564248351 323789121 423903143 134042255 482441497 299836370 837542999 607741260 643154064 415073273 332689733 463861977 457683657 234598077 675400021 822201474 868721797 440911341 296097133 548447453 73704725 95015714 632014210 992026307 495055693 954057406 720588688 820035674 565164682 394513640 466944663 823432718 306538936 227581585 506316704 787389333 317202497 145027182 431207104 38095081 881109275 173545477 163764243 210977615 966191045 643834010 730802868 434468947 911954247 287276607 362029010 453045961 161713453 785328328 778343842 204043213 457726092 160458461 537974872 761409477 156602630 161937633 966470460 602048348 90441664 558845445 348768661 396435079 119513192 922258752 784476085 105988480 809392692 462326870 606065654 591130577 903052003 112594125 660597692 660544830 629628857 900117748 908527731 91124961 337555077 62210788 643609224 571783189 289448606 810981761 979713658 512379261 361421285 878741868 91044296 860446214 766427067 938120732 280851455 437606886 2976272 432945862 253864366 248636822 840857183 510518637 462328181 171680990 673282206 101975507 801918703 31288774 512552026 974320782 951034314 254400934 728865182 845117940 489774265 984218649 206684161 636615465 486557298 176141312 513378720 567681806 663473854 212116622 976421 142648667 503571811 818646067 754596794 322355584 561654066 889087401 778906649 678965190 516858633 760628984 786427772 964175407 451118793 27770988 73585068 189270415 551255643 439336856 135467257 12045946 330379441 871340120 58088244 747677780 845275333 773803474 288231103 697828932 744713884 964301680 371242368 985384506 411187262 170422763 626392036 647769584 336563391 318655033 701057506 249022949 700851513 810380959 527804923 72370783 532339659 924678063 993787440 401793139 124556962 913279798 204202770 79429363 871618801 128149333 511190199 327337860 933360112 206990193 972438462 335270286 26431970 927994160 801021514 747443009 972407570 460212622 37510415 724693653 990052564 551006147 952192063 847340102 233603199 93537875 514022552 335675109 224792692 388459532 935935075 380833211 889834274 451873536 213009517 350581216 120792056 414691726 87204107 998887738 642714226 240999259 636354332 142826863 420631826 426417742 438156550 829040362 662366816 728841119 636976058 744109037 914091505 87989962 785873323 966152558 388924766 266329747 325945304 791535676 182987080 581056006 627398854 398410726 589984861 545014137 736270216 445846979 689245259 419586948 847264431 36895221 190189775 606337552 603888988 422299232 712541355 641620807 32382004 49384891 575351975 240555164 85373542 228817528 437918870 733671374 207855270 637573595 753847892 417874400 391166519 708499691 295678148 567013406 805330396 907945337 30383311 892015901 159530722 941563163 628893796 410458551 595055652 456965171 218132354 502171666 383452410 973480681 120109867 915530396 468938320 278305327 386013796 959845127 566821777 920052920 327421253 897644367 790354356 865286154 785042406 220533945 648871992 259064684 304110440 838439633 730694176 781501165 737861880 389421165 323760385 759506020 55737543 149776551 865546728 555617396 92869903 828643810 79490684 364473732 447339795 94420687 278085087 429742790 510297115 455169884 172643774 604727599 670476925 863432140 172659026 646520448 890665615 218851230 52373593 873729091 899616183 42693280 121402903 520805574 672143195 48282088 651093085 564490789 297033202 180714192 678391422 568894268 170062837 710523391 773545565 553594550 904106210 601896029 839102812 338638339 120878667 750580256 691738475 751646808 595368123 747125188 245415425 64208827 633954000 991956753 193034521 22296558 284618795 915280399 448203836 253134726 241546359 97687570 657420153 86655705 802245222 845769913 763771493 924802825 799731891 128425191 394058014 498339580 657503517 582401990 279670603 955382370 543431539 992335311 854432537 658442422 919016066 488270778 442128959 750042169 246226216 541033871 852779258 648379630 890292040 207613335 727108884 431963561 957180107 504917353 320378070 677842178 183538851 73067741 557156380 129993305 501230024 481624859 338787136 756201687 433519167 543942030 350255657 175387752 54804498 561735403 372362055 749137099 614108755 768459822 294351501 946498682 330031133 661720986 49247356 681343939 925513103 972733373 493819163 24770993 247691478 127170666 879377140 32781087 735979302 743554495 395907619 922785199 501852599 152999709 265047875 746836164 738768072 52359218 190936184 131180691 188908203 498604532 683655285 248635154 154837162 571949980 721057645 469456642 641510950 573823410 267728927 440685803 824274302 320112894 618130643 211564572 692230428 403789721 506088021 586692017 536151666 18145755 912940794 890485639 917834493 838635371 639827364 750004550 680312124 343039539 99111608 181642081 804254653 515594600 792744227 432085006 157867020 253995656 945695581 270666829 405459403 221412950 725351523 545991400 347181460 432017886 778802363 464231790 546875416 207264117 963765107 786352951 734289160 24610229 713923363 80682597 765403165 202257541 763231465 437988063 739052569 986842128 565685608 856410453 300352452 503008202 284020179 910392894 6472951 70457712 275194588 669725404 476736903 190862854 444234695 85092923 117469269 200818392 495220562 223976483 727200847 172703356 146065618 827236914 451935591 464888267 810100508 100931270 130612629 327468266 306550669 894619659 158395869 710023240 910221577 653203691 655120198 170426776 703378179 226385955 290552809 319323349 34740846 784878898 113595867 944670020 895616203 51584864 401925181 320666225 153924893 420861629 114782270 523853104 748423411 885417761 353358860 492121247 976693093 588454702 491045860 600248606 905440272 766870859 737847048 150544734 269811227 491703463 192052418 863957330 680326451 212628541 691971426 336733495 859629713 860513226 321977670 230008461 702105070 380425435 968366542 918780197 52322966 241623995 528600677 469732368 426041429 482918021 725207932 716872365 666316926 528863257 215261070 532096415 718187252 185355039 422632990 49786833 444225309 282806024 614620341 496183674 150749925 437842187 854841319 581263123 770746818 722059560 677039692 627988067 431550898 591548201 15420297 686287732 900672064 250314655 762187589 138216351 384812405 321599708 138304563 875048057 483985129 789120008 384937745 262589674 441006267 673667593 16842650 405984288 862806670 132109453 297982369 124529804 928248982 372802316 960217074 807692527 12940421 56168907 747905387 554267974 242057368 192114381 778715624 847272930 349048987 332970213 446575453 7937622 449820374 969086634 463148210 15225985 233082149 783060860 143692523 591632260 384825824 910108294 871579138 807531724 400382194 997768119 789802500 580486924 947103944 498995396 515035654 512264005 81413462 645697585 409709856 341010357 852708127 187569733 44573044 173013741 379990566 710686737 846083372 668912318 197994232 168997995 545532797 925217095 222547375 665709815 199538077 622722536 127833319 828053785 430281168 888031316 176337092 735198981 353245282 787654523 325019643 393175217 109692579 658111127 502856378 408522460 916411374 364023344 29799366 169347602 462736038 179100946 372058464 545640864 450132788 463549264 562316891 930023585 891552012 59071302 87790858 739364083 203825063 74484378 646488141 844984897 366104455 85613881 786617480 94473463 88742198 503671891 382806189 224997200 255183944 6923623 30545199 225473613 726569047 666447672 297243404 362520754 610830851 588017365 924520653 909861908 860298743 959840400 368519038 466143178 912062439 992878341 50562487 976634356 983453578 105930265 467623061 804965499 97117094 220616184 695751868 965093901 865076485 713574424 150678369 144960805 280500598 307781683 882854194 394352897 291731158 534241612 853954932 452294824 508055558 640735924 922154218 384340463 342961649 599282426 867872994 673791594 99094665 295421183 281600565 917048445 710707143 384858340 275800125 698188363 442200239 795747606 438727651 384548552 162751562 434989899 455988372 838396076 901297324 976508795 540339016 392476536 545337326 662487790 673231740 345111666 769130802 496034096 478305847 417664940 455148963 273733908 372415239 393539836 497500019 211160503 626918656 930656519 893217499 576239997 349835205 351282222 489069343 41959697 351662712 969869736 993912712 662265448 629595337 505465962 754536043 305594304 936934894 489474614 419972127 189145245 578921893 143998609 267731974 751199944 959643445 254742479 277499791 670838104 141453418 317526532 4878628 329930664 352168094 143873558 896624456 388641374 227393452 587936425 519534968 778421350 383817470 979528493 65402689 928529906 373677695 45138653 80746803 804896130 82308516 506821047 546262505 360912599 827172463 358901124 559800068 734667260 438698083 494618325 719532081 780352074 492244369 409920001 812212768 232534873 50032013 672958507 683256207 101774865 571780215 110240310 114632762 939869082 978896884 424418262 411247601 31674987 398462002 953849475 606358915 417588544 974658282 244738684 211210186 698647580 502283863 400551373 918762666 894166862 90404417 470200641 294340109 172404838 159831286 614279539 402183396 598858052 783490124 461253059 433317933 897343756 208325280 297444184 662906341 475746088 488160218 127624228 193848856 207440463 770628712 700505566 495322074 394447226 5807681 760248584 983899205 591814896 616977888 434075112 87569785 871215930 834787664 355963280 541353377 630356016 677081885 45946583 950639600 234288623 322825051 951077727 236257699 820760022 748927146 577817231 965980918 907678613 48710451 358176919 444035640 373027359 999270303 665198959 653553339 179297456 989722665 302669271 87793622 663975887 648957324 142220377 634489326 697349703 510220304 166843972 452458863 892459049 902344323 807859888 986265031 277247445 27677498 131853184 220549233 115001580 409404180 608235097 103571955 899002717 68906619 708827053 838155987 911205980 193264726 124346803 78573221 272136036 160552225 64108907 304843011 277745467 12075478 516586911 273989262 838484717 510083841 547147228 396090868 341959371 282880938 271550335 310566629 424792436 27700330 310525095 454165784 834642126 954613345 376677689 622080852 740825347 357937715 520691175 633061476 874765191 448845071 997484842 936769047 734640149 120692649 62512195 727719494 801753013 60200770 102335544 414452694 523705262 3339937 259073755 300219314 719518874 190604563 547042755 926901194 872562004 673460074 161810768 677235225 204696573 605292300 709654445 319150498 813097221 856494299 20461511 514613615 450045981 396837446 246372950 149252497 4200257 927431747 723446494 412638755 992082360 552361038 870758054 877075015 938482446 2345843 660974013 629779241 284869654 394620219 460464632 313289977 167703534 252798653 419058174 78996977 637803768 262463384 535257653 719696726 510865378 438517 596195786 913495153 620545183 449525374 327440312 951490963 559097195 192530797 714947008 263264534 801852874 713847674 682132329 864807521 491083146 793420786 46134530 927272151 817561537 769637538 644008612 588553967 570932679 298016991 980844851 922890531 132235841 835504263 291171665 43345651 473024541 352059647 443121267 763338221 931173260 68602423 732483535 969683615 292343568 27276196 614543207 474421669 552664168 370860361 547269375 551361696 709315493 213769383 841746221 869761343 878031892 575705549 56161348 335899182 838933848 69027921 954662763 473255468 429786197 325846610 79272323 110731513 561022003 568741753 800260672 846661726 542609769 710425073 383872281 538146097 786996403 725083505 548284497 633259082 91865107 494866486 154520554 839270283 425597401 693958152 586714300 942027999 270870934 238040373 818606939 780215094 204705579 78685587 153381670 658696591 923260341 605163393 900679497 599257063 527800487 139660517 986100656 601201226 504155313 866781738 121020440 847989199 498966225 363648331 708023551 74359177 307786570 514102468 177751722 969979804 671576747 862676634 441275952 112739895 73569988 548081503 237786723 550169735 711618999 920613671 818359526 500114889 23471843 638885519 720865570 227789373 293863926 862157759 614129478 989503536 459511781 287656292 356801357 183163123 215211501 516789174 126009328 301475295 882970254 458143603 193214912 30627160 727632537 790171358 614039560 616061382 351071264 479821514 483021793 276736673 633954689 321204618 547059500 785235805 907952220 174898175 937029522 586404477 388149411 37592714 681845123 951543436 107303303 572767776 566144308 388823328 403479170 141021490 826406825 942851534 762087006 471250112 999572905 704837434 502875682 333571923 933979845 708275216 94137895 284183028 295648850 804519425 301479687 817704766 483465334 944982214 397428387 176165452 432042261 789275429 954732842 839262662 672701153 886228451 249757202 904702682 239810641 88061141 401138966 883360318 168736420 419994071 105235771 115717936 94579431 288981959 827784139 358349433 54193383 811256210 222226779 643998560 458922043 709825323 696840905 182002370 957375301 17213067 886527031 171663868 979443245 914552501 702295056 197604852 34979301 653898928 181809676 720020503 965050145 682077333 427161129 638282077 559202148 606517367 162914725 195874113 273501689 905493883 803190287 266524365 384870123 787612365 95842875 387560844 236901396 813601438 873089351 436475544 996279319 575548713 175950228 575415181 230221144 645200813 69608403 248570256 276822796 677893496 189016053 762960467 247709734 692554971 827302964 628343560 542846570 866929710 993098777 100591474 956057438 955067096 542145391 726719186 198520151 533387840 995754824 835522299 62500453 577766104 641451778 118999358 703443311 40797469 756005697 620441982 259403035 772145294 888454385 786784542 613815001 686726839 888454726 565514768 383781856 885349928 858902975 787299783 107826229 21878145 554356508 136765507 796887962 212480095 421265514 490689288 321585829 85385322 896558848 262273574 340012969 809177180 145861242 979106612 587791819 571504362 540253624 376189007 286487537 924599255 117069293 257429278 332485577 384501487 714587014 802746831 772031694 342616320 85810500 23604759 234946371 279367402 112278315 574468149 230640938 888930443 638826884 835939822 770589014 851118030 716936166 145201557 710157410 256033705 103274030 871206139 423473067 155457296 155062143 993128065 718577755 669169160 173449540 256717325 48911967 25266847 622912051 881318412 903037298 814567905 201456455 623730292 942501397 911681772 293429445 748103111 832046223 196050915 989769018 461822471 262636015 608565484 561409145 74409922 343122190 770998588 348074142 753242386 582754193 567400462 606976784 101005971 867801817 806016932 118913910 124871788 572669208 873435719 572814026 794364234 305165898 103140170 385506375 522579300 137421101 953395207 502941292 651443065 282227270 991266017 952234509 741119951 282718443 125989953 350538040 861271858 293988401 629202331 280610893 29143035 81480697 684711527 390281452 930819846 503927275 935269671 858854152 16335037 946398327 426204777 131801041 892900873 771610070 143504315 806356672 538985828 67163910 849054395 36591265 59873229 579033812 878403081 311941755 775811014 333008588 89389647 415503010 331546208 66022470 318689598 493831094 56072755 181331814 911532693 363475865 996600923 334672915 501010194 440776309 181211004 837313274 73153923 201486273 438202569 87330966 307276212 537596217 76394741 884314663 743248775 748791267 805741374 42517174 974791128 259887879 659818094 80613392 895271829 425661754 20852177 446692306 769819309 910280029 167193658 600086104 926488860 679979919 523788556 863834574 71138278 592814143 609458477 536718112 962828309 207861534 52635657 584819466 164343223 980049454 578282135 744764685 936373995 24849582 49457234 273978476 282119377 245679662 905673801 997621562 764887699 823463295 66314240 709096273 678406243 198738366 831231125 230481232 367140990 961972051 193391522 695627678 880917538 521326820 688022095 954386284 420091039 148740203 224719944 132249013 147049538 669784095 898335430 536228404 514239335 529412488 4959112 104204407 552952176 386773107 755470288 588423369 180279752 22253040 357291377 179506501 151211747 282124639 192866238 439970506 744635702 771939171 941263510 541668866 151113288 369846503 838113120 896475742 91103139 94680096 687660555 368662291 780215253 389504908 205103112 863718947 216021885 88347886 170762077 651931478 81928763 580352082 236624266 949304636 97045433 631191308 903364771 527401516 469276843 794183355 32231481 571436875 132058569 766314047 898083949 564482428 621263574 806680772 630607586 789660786 722539933 557000900 585759178 251932580 15709425 314324215 793253597 337873236 42785706 947555681 717661778 429975433 492712365 722422864 655708151 205761810 838651616 895305047 304754197 114863755 685211195 616626259 847036035 932300110 997743283 887740006 402879394 414608011 740400204 324192001 282621781 887631916 516566290 165563604 602548748 315038700 653501461 416616668 188295103 792749130 12731505 973651296 836387049 945428369 56747078 80902376 152884112 792810702 593621440 815852365 312225350 325776091 467866642 954993831 790973215 604992857 291639925 268311133 871589049 244494764 829418283 925815832 6119225 288688651 179413118 448978641 805742929 312555113 66098626 830822848 987073331 111632774 274410063 234237804 206644126 915129326 163883144 575315614 475020509 282165999 504781019 722929007 226090937 484065696 875595442 248472632 666354826 415866854 1113488 639982751 849750063 246052709 859606515 575970956 921464076 780375692 656291939 304164666 248700946 668846488 308060790 186001441 753383351 746447239 440743367 398659588 116698359 867099422 888167669 346590707 390307928 341975538 109206698 817061439 347664108 65408861 333478557 403650439 850468167 6878583 607326338 51029932 312216711 164103215 326693665 856064223 426229072 715483188 851246400 353553550 881654486 121545212 672619188 383710845 718649290 393816778 818842454 315261865 519340399 344849317 709754376 448947041 753062021 824322141 268690868 669510714 145050720 912835723 487037006 434086161 461167059 893099150 947435471 335472134 404309054 803804303 100794169 956133259 181051526 39564671 870661014 444775249 805484570 522571797 969009915 338501460 295822320 562677202 677751167 817071832 292173190 248492030 451595845 251871596 796597218 764121771 316228215 965710306 168895124 229402031 927288393 255648086 852962481 104133545 176556532 567434798 274227158 703769349 948516026 849370901 696587051 565839599 132089831 720427007 392943711 650318435 501208521 877539625 930690724 211176224 406848702 106251286 6142399 59251372 288789033 438405781 577968880 128862556 828587891 343332790 265486857 515395908 836237581 525266650 779600990 714073416 267210096 602876579 691570126 483824141 112658979 903828476 939426241 852080898 970516140 465446171 400840226 491262821 803530656 299105403 927314539 155502896 864046488 267204064 243062934 972354096 167635510 887715163 881869871 25723634 194028326 907656761 112567102 258510803 561302806 6006299 473177437 950221293 457553607 573114851 380193961 9531434 905737717 547458751 658726087 45251132 127120493 667397922 523301353 92202906 220464384 592790985 788966850 754989703 573354635 336479416 863705744 449376008 913515756 294324282 704536605 960795631 561725970 519750119 43458227 72009683 691960043 306402199 385484842 283739157 117829237 507006064 477949666 667645405 578003118 960272350 63541950 179618586 822845349 764432023 192420910 410717063 32135273 119740818 760919849 812347810 923335701 103315227 89102890 561129397 551420619 131139512 108556605 948558030 961148086 460692801 741651179 465351112 272305416 284696015 586814282 9928256 564359418 863635144 709872893 271201186 443660497 318152154 479071270 231388701 97419989 974136311 451209589 597665191 262209625 650855515 874025249 928269568 155563191 158453130 534538215 561984692 622933586 529006163 46311948 518040594 612457874 929755334 896228960 832610352 257638892 689643845 408775995 566948594 126952155 765518702 615600503 936067069 206270684 915276082 302383487 516236226 645816446 144272835 66666556 399306874 727157075 17793182 218140200 100052260 702893299 134873223 842510400 851043979 485673984 236718728 74081549 655369274 854854953 439261434 116374423 912456080 448628762 782897783 882263163 856663721 402200721 150467808 623144146 15272812 654701904 549524071 260648774 712923277 736045856 839384700 270174979 939358850 961645524 710094558 462050496 369661581 516573511 469173390 96662972 586513845 601927769 453263580 835947197 396849609 616648695 213350490 855266574 634978915 379048976 890322917 179315594 343439843 181071009 334403488 938544014 546182769 692057260 802794488 986041343 393386237 964273978 941135011 720830539 178352702 306967647 768431002 521011562 649539001 425602610 40319012 295966424 837911219 967983576 337712588 398843804 534403898 952846973 871163239 645162822 54998315 34810447 325990415 491274989 755817249 644961675 884821547 888115243 33306504 27726704 807237734 373384232 563985809 22874445 455628468 258774677 178060336 898813296 430818645 84471459 170595115 673834550 150055367 466149397 59730948 31862019 240368089 125442606 77874449 348298042 546319007 153850049 477289061 597093207 942256502 593278238 864734948 777784779 342388995 796938535 926485301 998093855 195960368 996271683 575533257 647463897 125800757 463595613 511762646 393832332 704404617 543046893 70908256 128708053 473193972 35352050 573263917 793926738 704062336 619336944 947523019 662332083 181124229 945509369 899369622 509065636 12817050 899269281 523852204 197149669 235114152 343156997 14725623 508985138 898497497 844653261 198122790 722718045 945279136 742411814 218025649 627794737 392507834 398754504 20574427 370008459 698487598 86262511 591035303 592946253 613074758 467145317 900626410 683187555 44951959 780301170 336798779 617918908 744509947 637515250 468861433 564318294 18088857 995387970 292475468 314643760 653099995 678578758 186482470 610233432 262177657 485120113 448077889 174334684 687493483 199786674 831494168 186033113 877818870 779084685 548879606 457102192 456528297 545560838 332429807 412190154 868782165 883824045 816734676 54804510 209458713 986071446 659421257 315085728 150923350 287454049 324219063 331967641 309913786 339766579 666343245 505627981 474952253 473053626 583505412 249257233 107435541 260504878 752610202 894674752 936295113 958275148 289159836 912026683 727703846 373589850 241018967 568202860 163511102 46629672 793609697 212949830 645992305 227209227 606026527 929917509 795241824 985547486 422289847 179805671 73906936 112261135 462681112 344286906 553173868 787196036 991195773 622108239 247772220 968004282 118858210 727769663 954272296 819882923 943613205 29311790 244676160 16448479 270520227 442425797 743468758 725863010 779938532 31635896 513418374 775314383 262712056 506049216 630907702 341872959 948200393 950575518 640230160 533557595 912101895 880065311 223902090 11631441 743018024 729589012 107832928 781392343 847361903 33802070 444241047 212774955 77406434 75765963 271230328 680047891 716023893 551702102 56778650 671447006 705640795 680851954 790817752 499133795 84562518 245769621 317297752 744179966 792954225 481087039 324439430 339168664 442367898 518731517 444256532 665415836 778706824 217112035 425515777 848115459 217163968 941537543 54966414 713915978 689473156 531797391 379230539 515474808 493594345 505368227 748039178 749324827 697704903 276426869 702205416 908454728 779710907 879664449 666253129 487924894 597922606 306154566 328636632 869709125 686394195 160448212 986692747 205069545 295930142 131781432 830857887 932709569 722146900 661256145 177986196 369785482 598815867 479460859 626776124 22444431 388327396 895668517 548491943 948471191 377133221 226033599 95778098 939756543 686535585 225427524 884320389 676200609 554843518 635959353 542079879 197457123 658622382 800006946 890485359 178050743 846008680 75858840 790848438 224159118 93897903 261977649 879821606 312503149 174595910 224600721 90958025 934234069 875504579 396927073 748324849 592224468 771160699 933157459 97659963 781026309 77316749 439035171 176856204 620996993 656824549 750740627 428272144 402658545 512291119 510014571 219960637 471394435 108710118 796871552 784087244 824456173 3999309 38972075 662469317 379503471 472038247 749400527 357551473 900421322 244246277 64789716 186256486 896955986 731055042 702021807 733396862 687536603 62990589 46000216 978217952 414405571 478140894 30610389 213661432 609710065 805300821 932673834 52574584 757759697 682457114 712867185 635462241 664413277 24516014 652848573 232580593 852290832 52012378 148631604 783525046 793046258 371351597 445671680 314786440 154163344 100407041 292700498 150548352 656918019 179454322 110318695 227143426 359118821 675635436 886839422 754528445 386093151 204144542 430788580 958747555 636502049 418042755 173796841 181326575 694861660 384512855 177378792 590678313 123428562 427586467 62001731 925243161 86850761 456861625 206499172 66262743 45118478 956074160 888421056 569794237 343465722 880129643 588072910 907590768 279312488 867932814 753395474 497615836 545348287 743747469 20623125 770909238 233363695 607740830 42234730 2191098 611431789 28183489 396479402 734058733 696503604 453341889 936559738 701559064 759275217 562915882 684348547 350173138 347505487 607764824 186384759 767848887 436738370 913159784 184841487 72833706 433512907 858441543 747981836 906824411 686714257 159608992 183370046 411021240 956819391 169278191 719427189 818541314 734214924 779307889 25879430 795097532 463251128 741801266 324364123 132666674 948208522 292963326 604791512 759544315 597756622 633773938 216214004 878824685 651179866 5005290 147719334 425465395 471766158 861368723 43514865 712165426 249386832 67189078 717556449 192317094 906734351 326350834 54737287 115963270 933501116 932963559 606062586 371475483 84345820 774345081 201239907 833693163 541335410 61258681 971071718 66107855 237881614 625382787 432897723 616824032 918823877 243666291 247131926 464123269 480172850 857276914 979279166 347619945 321518211 306100787 658965626 584447361 969360222 590751532 410857760 409293065 691435262 269352607 334957449 96525442 313840931 835271699 406039827 501379007 365694220 409322455 596555566 177983951 998518415 21637125 164337224 268335118 477444351 549270397 445338335 452470052 480677432 240327398 632475251 169965052 554657700 107446196 826644622 936448201 947595054 473899290 902867908 274795526 375443024 932948764 23257261 220742520 623093511 562905474 689153773 530300207 826113238 896385243 649233452 125365885 154216401 90855806 282175776 92567802 881265545 510424204 908371585 143802768 951058461 129535217 18865680 876432234 471420214 698331225 399037850 640788731 763545856 909158460 474609646 829446912 749116211 518627039 454667243 888670076 162452492 785128004 789906286 137684669 415342931 896441152 495707236 988964950 439182162 999505002 251329472 315974691 612769763 977430817 627227259 702719307 456385379 599921806 874317974 214052150 571846585 789776035 352428063 868390042 180848467 112224020 468244004 880605302 308016166 321712228 61939137 723422474 397234355 740873948 188592409 309246694 602002173 639322509 847676500 651598812 589998485 241161549 632998057 801947145 960852622 651607482 775717197 740376783 761955977 741598272 756921989 436476894 459964845 561169169 656243354 941780521 209074852 435481632 88717025 794270440 889975211 310516784 87048368 73445031 689471865 673415627 993389 695932460 39986265 926412861 312465022 951694734 52262166 975634592 738306138 854304041 843513355 662202073 215940984 482304673 830516753 152127625 986426460 863581666 490108816 358173219 41110416 588634145 780863865 386286561 703956132 707131608 809942590 259784897 877289271 133631694 690755808 303143306 881042918 358797071 127688164 31016402 72202081 72126958 133438554 659773676 716110675 899038215 844790998 431096057 443061628 686171457 536298104 665995746 528210588 948422594 684371429 57118298 985053566 916023558 739350602 281253589 101115378 793729732 440159843 112207508 65653206 586200067 98714982 271106720 967795210 756128270 518130720 375794378 413260667 142949241 850204637 192896171 586581524 26595616 439720307 167493280 171230168 711068970 964733503 433895635 570856900 748234752 667246377 203099188 450534628 574467417 66955167 977100156 524674889 756903212 126860950 689750572 966339854 180963524 746471823 240893835 743789398 237039019 154530702 804036009 675686220 693497011 428991523 431878239 864716576 183103224 30029921 533440074 811056396 971874018 64117224 525668825 310706773 448769819 345972703 952252981 192113731 412496279 980378612 443595866 322550568 507140754 339294044 749658634 826550624 13455251 439575512 413587657 884376140 579361891 484844716 304409323 683218775 892368918 865891750 283242629 818980594 682522124 908775967 467239035 950979480 830788838 564496880 939061617 302249678 915747216 191977093 203831001 711634970 438855232 599583177 321448941 586178575 343265141 214632755 881677483 749557064 338409197 786909888 668808925 236937064 383825590 595862011 372610321 689709083 439720488 996048106 339991971 842648591 461140187 666054445 989674415 478900222 621436343 812212955 531391519 8582574 462325733 302045083 419846818 47367912 328213976 893045150 599809715 185602175 139492946 540066457 405276816 538554187 956338002 5725898 468650052 188730670 702327592 424737785 928033437 563881495 537885540 313883249 413888050 161673971 364666857 363630090 108766311 581183676 749508562 736993060 827346016 532625784 996514450 752065954 76835345 8478513 823560924 786926580 502882094 568337142 238682541 806305809 108091964 530237925 817018695 414786676 80058241 446928927 599929399 937387816 294594061 962933706 804758096 131979447 109907640 757689886 995673008 722502970 202992930 363847763 438463932 296627022 414941367 60015789 970638878 585014041 567728546 814427507 962628045 891295051 165301726 336191480 987969027 270126105 11479083 385318808 546775876 347853886 678839568 835842228 854544480 148989446 566628320 317229494 941914982 201238078 831851952 634798611 492091575 764842298 399374949 25409859 468312051 243991000 238701984 928083910 148812550 656986753 170359257 879324715 487197483 307683872 290676547 903425536 130681302 287158065 830558942 435831522 501196754 864978602 311719798 176372085 369190439 179746583 329393305 194930781 890244395 300913028 35340704 551540560 850112886 242912394 254058667 913128970 112343284 721465668 537352096 730099019 595567053 723714648 123180851 790864861 413314420 965447416 36960219 693632402 934924198 472959961 898553047 123710022 612988778 881120822 509829937 804838108 372120585 688468696 737531063 404182075 426653208 607485708 812193026 820378711 457426039 850740139 72273524 398491435 906039619 620020240 328027445 142886839 924804335 827445026 660048435 636414726 779243819 630278736 234801190 938603308 454715380 900241041 246000786 188428866 935213198 883465571 570454207 183070573 817025672 556547016 232556216 512623569 280531636 355226453 514323035 18579364 293484592 273101596 517499971 903327011 332519774 180543165 102607580 461339018 806946029 483755356 798502743 899721259 212670668 390308008 661005992 572709201 226526525 446715354 657650324 426152793 246896064 929262255 703210657 4159396 945029156 693322346 52473631 15852961 999820670 895307486 640619556 716281277 792360233 117904223 901300886 584262260 184397254 124855240 733156120 267251529 897311302 166965638 574621470 238002628 414434522 454624899 160134110 614788219 192657410 791367733 30073691 276280324 907798398 518021787 199094616 284027398 604435807 417562429 311129704 896102438 687537394 86116902 475904742 729109276 446161372 243571441 155240430 661335452 305577722 877100983 464726634 132539759 175447421 148376608 127776780 159623257 561810902 208223324 536247368 881420078 427015876 516161054 568375653 540542154 706273866 613456808 135580514 368650512 201704114 164300991 634359577 963657190 529192341 621731760 330639643 345799749 163192524 842055251 477441226 338671391 375232893 784252676 626757969 768670332 613185297 850901930 810731677 18443365 822371903 861668021 943864936 508631531 157907970 708187162 54317874 102099496 839681184 329784406 250079043 852674371 323693732 176964466 720819116 994303840 278030306 563824635 722502980 509398965 555936376 837636103 535937451 375342970 800228296 496282674 92297802 700637427 801405824 828898982 500693843 884300904 897972882 697071632 571492029 164727088 344074814 833303206 603723588 171312289 723965189 53082407 111456633 690301213 335812019 142795735 528902821 800501520 121097822 818105220 220207072 416677356 236835683 478529675 584311568 207003436 785645666 378587072 516955098 354017107 510528844 279807379 680173231 636777191 19206484 935907051 360412612 372811645 888515061 229828675 152747548 435991214 566129140 64327316 783497345 461594400 545107039 675872874 918916224 928638843 277188485 578510545 679303540 179921263 34860041 655233630 796714874 385080505 331764681 382676528 13256828 971190296 927415030 395768559 409385773 495254108 658982659 84400583 829810689 33383251 844507560 408197486 525930040 729281750 820989937 235622180 249481438 591819212 940006692 511454126 555570626 761218333 202447833 131484253 715097723 604091065 984889066 513222659 172621673 728534684 252132989 396222464 667998388 538728905 24822522 316343098 45247313 291310922 385390108 633525539 55885296 86393136 666823130 838116011 534376987 775875991 835065723 120539476 532139793 11862433 341361288 831103013 313046759 362969206 346212312 911189672 147562358 49570378 481901705 680916984 331004253 193319768 779796219 664518577 683905283 10017507 486772189 868220152 3782040 881289776 808485155 263690111 706079766 114291607 140236550 628154489 431903807 802657136 983643921 89653157 88993687 504102684 923149576 905375304 78960755 663484937 428916742 864484917 365798117 689917607 180868452 502438076 776950738 234136430 837539783 331559361 319099363 987380195 11726875 539023015 421876869 927286673 730514068 514604891 126650608 195120390 361378225 659705686 292500777 845607137 352945458 332277911 705125618 374880451 863964964 218874016 464939232 983648852 176845022 664029570 600877899 243834952 530879997 655441620 564172623 824523098 623030622 841300658 340297177 751895373 706148919 316434629 687368341 708619239 753164533 29134649 200040190 683302399 654308439 569962436 8209750 338475626 368598625 192071335 585132962 658775824 265736542 802287014 655774389 778080216 509659364 195889425 292432674 203681204 935361744 224204986 771617871 368492960 977587781 457649924 899011426 105190814 766731439 452007893 839587402 126988729 48735936 483488150 411357379 493000447 634596728 274853445 217360200 269944460 328060187 368843353 516146214 761839751 398162484 400856540 996482154 380592917 776481943 291162463 750472944 825988459 846010977 57137906 287720789 648322241 164131062 626562871 586734337 411308888 194530307 970678866 862337573 233524609 697143417 22989557 394213562 762302599 845610904 930045266 778788737 52469192 537683427 362612269 253243647 747212199 135063078 692825028 51452550 389028490 843120758 372364525 911839024 852268007 142044462 238772216 275851996 339059511 264303090 175459273 161396019 467740413 867059891 414376130 962697378 203820481 25934495 359199700 779057511 792792856 699079476 817516403 693162619 919915674 97311031 816119455 157925037 135359724 699257781 729039325 554258825 528206519 855708416 768077372 551905896 898429357 236186041 910677586 297218411 866823047 235703231 346594621 470880378 885939976 314802495 722435491 824834630 269906171 507988910 338242228 598306119 733937459 484944076 464452900 27315900 48573319 485685144 850431538 236725679 622621917 350202720 272251559 334253037 595453468 451444921 587405260 661981458 623040827 312321663 749476475 598569340 909485102 602470612 745191440 371403095 103065085 200356905 133102964 498944398 409973165 403146797 136453652 454366427 885406549 740413664 748855524 934101696 629079309 453494148 216422758 228032133 329790964 107779497 54728863 697528886 205174074 781671453 64749084 579670963 701545232 701734401 159548661 924447125 798476718 287459768 793152196 808921159 783579736 134111726 855728820 473068793 62200921 182578329 798583412 835275428 848765439 240503280 490878262 906340617 441799081 832953727 858448058 740999599 20214455 589675788 660174408 632802533 91993235 429152174 173940652 797428932 401573296 961978561 52657725 475280942 827552392 246471401 727166938 169551820 870157471 917172496 591443942 574085387 706915706 833536366 325877333 442390306 541473202 935934591 385478808 798798358 249325023 898158596 879043760 813923246 480929695 825552397 998595618 752183928 345845923 24982506 43544830 62797519 937098647 599915324 586288345 477390799 136075576 869274341 842430926 270603877 654785355 395311633 105937802 239597118 645806998 312077619 279667767 166490837 918307567 903623432 946582923 600653417 907564586 554602903 441250758 290264321 497632561 405073194 90583725 788744047 957365738 425305941 952707727 575935562 134129478 675131381 748340546 743066356 707134018 694289452 921018661 219590802 330997985 750097258 900765212 347505433 757930282 647745122 163805336 915025980 913060914 477387278 110122638 377021566 453614867 849275062 661899900 269454889 898049002 270983907 571420777 715917386 400662763 736162411 392745697 530935741 155765055 109896553 92454398 251734045 879036455 78971715 565979738 316658388 633827809 655341987 13307937 739184663 147255990 247433598 467553275 398071256 273556990 74915859 203188768 163165915 623016209 942032354 166247251 871901095 445563471 427837880 104457685 505391498 627941410 501368238 305240181 522461600 257378304 842465818 2129801 767275466 397654881 484227749 18690034 882584493 120904390 26498870 810711061 27966905 757967036 609320200 224875742 506346024 971539157 470071187 692912325 74727419 737556648 995635098 900806345 659661814 903678683 414500397 726440304 326075313 466383893 988574108 54135751 269059196 680378379 338881672 378736743 800021115 463628917 446409426 2429033 542033302 997061143 188273321 50166905 503143041 444123579 486911869 521624513 886288301 817766706 229106446 323435770 701491295 285790294 92894303 786512225 422540189 968807948 733589178 658902460 162170680 97261374 835412153 992559963 17668810 169397212 784552754 4163859 304521906 616889313 379363404 252295233 132008214 700058703 885228662 551109069 668200171 273423920 531560799 572459300 707936484 911067033 74231558 553257790 648771206 797904033 642212528 612006808 707216150 304608874 474609127 126822202 562911399 106904097 286464897 765420974 655913742 684944887 957919897 258067473 823537388 173726756 499997588 926742521 553952429 616737775 934778655 44613779 935714683 396799134 219403054 575722377 611792978 984959110 170088954 653927957 421694196 396997121 393260300 948012530 664828134 726060143 510183982 568029799 419415672 164995386 289528951 656307013 349820869 470479577 369582397 871271901 431953836 739526595 395347240 527360018 662000853 211362681 272169766 309886280 213791406 63850886 660805480 885875055 104917108 107102847 584960620 57013243 844842532 634783994 908794359 720043243 638232457 752314524 982736405 320196548 495392046 654313230 310468118 860845209 875142514 135964421 317071260 423098106 372178288 579560248 711920009 281169674 356440082 978882923 883646216 809416303 450326281 499358566 720111249 275425109 537914826 792713726 18322651 764329328 437057179 681010187 444766703 442465028 81000321 281294194 490443796 13124565 174753098 10374171 773265125 300906031 353605778 83437817 215895096 705786859 69471929 788819207 403074871 951064933 170348773 53870149 736953160 126188676 333924615 91673791 573802276 326396346 641736919 467790727 504298949 521063161 501467350 341149623 701428080 421192895 575830861 812931441 801102003 165357330 629570379 859769055 51731294 900974725 724939688 632210228 951674257 569515305 686003716 272054701 4401839 386814366 494725067 715437703 519569509 252038157 143675176 598839822 858596261 952578336 824355862 91125142 25623981 109399823 940485460 985498233 520555264 127569561 690283372 634132759 749758061 94988802 519486383 210951132 160842757 251725338 33895217 554662971 231387687 607394617 627589590 46166442 106159221 75178042 545066309 643351730 96768220 160427397 641100783 164029400 302798993 972990470 107353610 75795632 578960145 911509558 445252760 205007572 510024988 771963669 238324322 779922662 974549443 306278690 780617463 912258961 248893785 824014706 891109296 27601030 6922360 873957016 224275628 259406210 864874759 222718901 233670613 724562245 808770352 207506285 931982809 556040857 452285546 212903150 22808883 504124241 809948785 839536369 211218209 802755913 269485636 77438126 124009132 880644959 221389622 122063603 123121060 573344382 456651736 746935563 701997986 902942364 985988359 355020234 921640711 273846194 967188711 124811921 419752440 390654657 882378210 444567622 365224297 661966035 671866800 765765207 930711567 746672636 315636301 4026296 797971820 378366548 684431611 591251435 383996107 522008831 459746630 759722997 140673078 361845543 522214917 616883042 544598411 358346493 854710867 288159562 719133029 811999418 461142162 978208078 950450224 181246886 14677873 717494926 806865181 107625734 82153186 438013119 673603361 39061807 862547239 69931794 382305791 579801208 643280829 632369993 540709693 223070278 830602867 633090726 778796333 304754180 329518172 688685818 811539940 933807651 398680792 114053020 119126089 92627741 280715912 680309866 120049918 444191859 804873306 332043976 918884725 881905072 120729731 316509865 246818023 900898152 746349947 396595581 951023445 588362295 19912458 260068677 135372933 535955897 359080762 518799240 353959686 387587484 621644642 604219477 485901111 176258195 747522332 15986494 190453808 698077015 387768143 41524841 142146270 417493928 291561762 901118836 491343603 885773652 849033999 866553488 271127520 410094381 321466317 733292407 433145326 829640716 591701861 821653602 581614367 832811986 683369505 487289626 300304455 143191148 90176917 152383982 813306875 56101066 603510173 619914419 713286044 435587049 482467678 356470212 878226516 359777735 261050949 989852431 313246226 166756464 742489351 417975546 802800272 214742777 722601117 918134146 221443149 838457467 931680077 2403104 156767630 896046869 796589474 661215710 371625323 831364341 400045427 60094537 230097589 848921931 736534234 126024820 894088460 608666962 660738364 902874885 630406111 3106125 233863748 215054363 774042969 318210951 179377387 883210341 947839861 435647310 50563686 517259292 546892526 211170817 827012414 122006014 267669077 717330432 857946688 554394195 666494707 887844788 156249981 468723170 751890401 375165077 303982418 47963913 360754946 866354708 701689191 714628771 959503358 32024253 656450978 858390806 654039364 504689938 338537787 195191632 872113420 879154347 874764207 880463816 757960279 888483105 791218623 205590910 29766636 435524370 793004667 500596471 219220831 414583086 539730996 8625470 424518149 279860516 845261704 752341228 345759740 315811505 824474717 442548515 388284209 847026837 27514074 476201091 986220627 490317208 60029560 31447101 232708568 670324624 311468786 39825670 946341634 580190809 271768908 489272351 83688154 514733774 604395218 464941642 926443313 68919264 166524441 93587674 530596251 302425982 810788858 292583074 324564091 580689317 858233503 243143939 558187001 4438356 986051184 612093663 337179398 872371095 413218595 76025769 21130328 573330558 223796915 837638227 385915765 205884969 442476644 751502431 946279324 225744819 593038276 488638670 629497062 122703434 429284776 605488950 941932838 508192289 476058410 554322598 946596607 244224881 996823215 653208770 353795799 797885820 39664866 578832044 137132510 763746700 315192249 721616917 734335758 705968631 321064817 214899248 698441257 589948688 652453770 268733631 645177524 760811585 587512279 682373892 147687169 860953839 488994661 578612947 226679589 786276236 703842197 220033405 3272196 637359767 758763787 866676963 320774726 949463438 234742960 569833067 783104858 963274748 810523836 421855744 315572344 391864436 688395176 898165535 572684194 204756370 906966845 166971327 338322591 57994484 628679042 683103594 151544831 822971976 176296398 135594545 939364379 452007488 275235260 457039778 739799056 551194517 164088371 159984101 837655756 492816902 21220954 309385369 649259002 179029349 20186797 124082159 278098198 942149757 16840671 317140381 10566753 982275629 655929851 356348384 132299742 453429331 274369354 13205123 218077794 650229981 113981797 261222349 218560642 493516988 791673376 588689307 673454496 977794283 161591462 268339782 914599655 360641385 275588707 646515639 25272896 649650757 459595784 668960861 694222186 228382348 592148115 663317036 964954850 598999391 87978566 313831330 689799922 775025881 886880176 419777736 612760745 726388009 326637222 727222316 969353441 536027520 958664515 383460832 344696118 588546841 287160553 421224584 787299604 980330037 613994823 63614534 562961067 994977052 598543696 227140042 630560755 485311271 33476161 458990922 906381226 77552553 95819934 288042375 16949339 449104137 768066867 195517121 324584788 437372334 972381717 227036618 689079728 717540621 415503775 987346681 156525902 777467039 771337078 869292842 532860375 111869158 635173767 232026311 222452153 301659246 319948037 557278907 995485487 154044103 625947501 111208826 661790518 940843916 140040066 940373000 784221337 489538912 924070483 864816872 937538790 688763116 15776816 930593065 669995385 203897826 168747961 182834529 64111212 630960638 287139024 769239215 513958831 90660867 696068004 859324854 585368044 510387897 997419942 781356457 285916575 722201584 766792853 944186172 70753286 64957320 976457586 212043180 948959787 436577374 784319373 363937729 267643866 487334242 538336121 999023304 744562354 932800129 203784719 599687578 244555534 617415607 737047417 450379154 527418138 977842183 60126236 324469144 26059717 350877819 427340725 143142680 303990211 649312546 276814904 143120653 332805274 862542365 559982833 491884784 369751952 386034825 252804964 961205194 291674292 409352081 739272813 49053992 47924195 158995302 597732643 533734946 988364214 278568006 561524714 389893719 656308378 754018674 666900338 265644264 962408897 852611637 23035310 255950219 292829212 577870047 429554394 566689135 455440754 424028617 759920760 237254228 99339595 656977497 757582937 655324548 786317298 870578678 857919373 868682443 825570693 551123223 760108912 160664444 66716384 871778865 485950122 841273722 388394673 286701768 949844007 997271083 355788896 677839464 409085974 148541307 834317610 725143968 961142520 338922720 312241425 565448974 565441681 960708699 115596251 561483346 885071083 613210479 117075991 814490903 554414427 49386539 783622686 93628942 735874429 642248742 53197072 467565554 698357814 755337601 188952537 965121158 433840309 905040348 495448613 550982035 516089704 432426349 956519788 807688684 78378770 802408931 466558451 155548269 370617779 667149694 97693629 922581748 315958679 862650377 744874396 642746223 32192597 995261389 677463595 955537101 136339396 250647203 422596294 792836108 478880528 122127079 608052886 398301997 785321888 422730880 75470223 954381366 180997160 461362654 618377061 881497665 181147561 692301556 384522392 843919458 969898592 876650564 475878773 624981183 120854241 726234069 668159752 574676862 108022010 482926639 940422188 791267287 163810506 145019756 962132094 889116414 443765172 502060589 754848617 9826106 347421033 551647893 779083037 135588053 406676183 914743632 357972368 716627740 148894011 738471577 246674820 561068913 292376861 777176877 827701122 10379313 256890695 535105359 977709272 616032199 484237260 709827027 233240225 399413158 930586381 234619145 729544381 556882248 247119015 655264722 774873808 305642800 672457869 901943959 597867854 243303401 420517871 568120386 849529456 579226883 801830986 527093069 320646453 842512409 887782501 678567602 857261667 389914060 252350281 375315706 908867983 488206536 230967629 46059316 494871053 975356096 702637833 447697908 314574846 52063085 185901670 273685083 963353931 618573200 26077068 445266188 234076327 576913398 152145909 537940791 207889540 23136368 800212311 165171600 313634345 732880601 101827258 947109722 972547225 340057616 22956905 78199129 665715622 659358978 954703352 701846232 379242731 238236578 521102149 112232627 167962309 169397737 798004593 202477635 852640603 216452824 669338858 374969969 910353824 240062844 424577383 672131755 829046350 522175462 414414558 112891367 964113121 568282160 600475290 165171106 783198882 253344124 628803620 57991396 315410852 90759412 214246481 979807037 137350590 702881485 305258042 936507839 381441935 111894847 170769481 520694794 4947329 386173322 33243428 228780358 142960320 190119164 810984133 252218143 812114507 24634853 662206308 426027725 355148255 757779616 96058505 470702602 99962114 605912209 857436156 963554850 821466118 759314208 616974549 202753761 922352901 128237248 812670063 19826076 456932062 32455658 448689517 40187444 822273593 912726563 200892091 60542477 240843911 383152370 925269648 585749780 42111229 574398189 432543079 139065026 315074974 490437290 371990787 594241301 480656948 67153870 633092464 794395536 755210060 835065858 915104262 253397575 264610627 870637563 804541020 23242 268527922 992825457 429363549 499882813 616651271 671840549 292006959 201019202 398548846 912002530 78760262 309518089 608912101 83581308 70291301 527810121 322871461 814158028 397860488 227651391 28670653 617513909 270173955 462009776 443541496 260958238 62791269 394578413 254153459 189756671 532526218 49115594 469824778 116239183 314331289 565130151 450194793 890877711 274704380 109067112 294705148 943039050 102589803 900642686 602596991 914489877 19429855 583775711 837422449 183062918 84784541 833943816 223351065 98330307 898435377 577176318 718668425 982788596 401884782 410069075 336294040 420769868 847733618 377540889 605654759 875985156 122145698 678190577 97780959 540513377 310850728 955577601 616090287 703597738 763031421 378690294 621896782 323533621 880216918 93024775 771738750 515239769 660823228 363705075 613945288 830077306 212112506 631363583 745287549 347865601 818443429 132231160 855957681 504477792 445291417 900193080 250049864 729531413 801071865 879838877 773507304 164480412 776943795 121826953 257216516 825792900 133765625 247914989 319142099 772936543 91555401 164780863 483570771 642481348 764984424 154407805 491212110 610547801 261762912 753008430 528963924 14386886 889325960 253206880 841246144 497229758 2587002 651172521 788366511 644198139 313434395 869848614 155749385 232971072 109912214 462843009 541893758 799134038 691524962 331044581 398341258 483105041 616371000 358474247 40520042 97786441 894053664 999665448 12514345 704885217 753277028 219422991 436911763 462801604 939291031 813411080 467314242 679819493 478061464 59956203 755318681 512250938 685051529 448654611 963876028 172451789 627926744 140505448 292924063 241148064 487404601 348769884 200180216 765426378 355504806 951142624 890078278 861571685 637303653 686679157 492604631 583443600 570358787 942826016 164641204 801521274 885976404 752400752 791731898 839337555 153932402 46460795 546574471 808240725 870549445 128608734 741947268 997462977 45700087 920938434 805743330 279468002 733912827 475133141 812805016 534585613 553806095 496518219 112688489 193474456 650881463 464394720 449151960 830479082 805063871 712889570 604427067 820015208 917059388 538072345 838421413 886661256 338141323 404779484 486541819 813064645 304127308 863078157 35640034 541391261 376638576 950371341 138036171 764328350 347183145 196302540 271744495 271349849 782871285 531732677 103834447 496943718 742774932 804233199 341869489 894060394 727735064 962055636 385939876 584526097 977622995 986891394 850651526 920161288 37062238 951584655 39521395 250217743 195137952 729116440 966838099 808984035 547558087 593376966 670299609 279752272 941077573 245899975 134097786 25403693 446552790 706137806 907554936 820543309 660418176 294263580 380932315 932382868 379123597 898741622 512393076 631870704 744677266 821674541 857342682 841066320 46426223 958953746 489402479 931082417 296998723 267584646 869712217 855183120 108916091 428652658 98097033 396098174 510991309 4621120 168975545 366083081 826075445 858024680 357687655 42229962 592635894 923590635 144362971 326570214 739507358 612194379 220861224 365085320 854203136 314962583 605486629 298790624 455323963 400413412 185455 892511018 772505775 445107669 645389683 430213033 671783691 374694285 442738526 101588130 318614849 365035194 870197292 978157932 933233296 243747733 859725467 172361057 116917114 84094169 775426352 694807266 360863437 945373388 860673856 764858458 919975581 13733953 626008033 935397179 385191749 36964745 53431029 628150015 905505384 483826565 479374882 896691239 529474039 686815384 72773594 924074303 574500643 220695991 115719252 780384730 764613991 873878864 644764817 666978192 873428874 355260520 551813465 615137028 128046233 960781184 511487037 916843747 425857250 704239532 95656084 30201053 94911755 531459965 401216127 219997352 954157807 503667730 953972196 693609231 810091200 645291542 224152952 863011028 282774001 761207984 563727280 831938513 909536315 2653852 961076685 20025304 722285222 227523862 642844887 420560337 606536830 272500966 71672478 325077669 465336407 327748439 485000891 547525703 270568716 393922370 284550029 797797549 3313858 870614531 837121853 426399454 861049829 230030466 102174397 632963554 345815594 932985901 78855875 601595854 519851404 675009019 476023503 208299704 585379665 233898342 897687593 481641415 508034819 251704698 947804388 555896862 176440694 223780802 376910550 446556152 229966282 748235094 922925216 289772427 267008096 481363412 404818090 659641366 722198503 27749472 602602021 551278314 287230032 532476074 208734214 673209428 58585560 944892905 530007571 81825456 804611590 786911192 853842897 621668195 7194274 950750656 822474127 683023315 529476805 375465841 688531813 442546803 61753287 35214396 923765815 244767166 390064716 442095109 558669995 525647673 678158148 577920559 161440304 664987241 334552802 765444774 92573185 164634085 761147299 642223335 375356444 600583746 824937801 958296296 734471243 438421800 444324318 886575670 434155293 851028543 901762237 793479900 187268331 46427191 869991295 270704243 774991059 451313612 864182535 289866007 280874433 409603779 683243649 282073196 899056481 658679009 606511203 404351653 754829616 205130490 413208936 901848437 13293419 844059629 111520150 96006939 916034586 320434582 55203128 944591708 733995537 271189475 955743203 303137418 581981155 843641795 924444019 598019194 791058675 19211315 556724491 222150022 89539691 665720628 662517785 936521114 466942007 260688592 73101646 574821666 845974546 291913756 491339179 89284627 222827644 697201710 762249074 634035437 457428926 217988909 584287534 924969397 746134758 104639806 593665717 44933369 262250705 136628118 363412003 406221008 35794712 38642033 226218716 791560154 343915305 724489999 658314893 541361722 723642673 779179704 353873446 642771104 523966763 729280453 741701867 102494019 335347156 931384201 436054361 808841950 436846518 519557226 480944704 572176828 174613541 516352723 455754164 94702761 576358961 261933109 646520849 91669496 640225729 853670409 302432506 781677197 490607739 488262864 819758173 316458187 322085071 229936411 486086509 73182110 726828790 364209269 861534118 455516034 54401009 280231037 405620172 531551603 321240197 543515603 985991918 64910836 43770949 362472736 195456862 232635926 282228360 903078937 544991674 888863345 875151727 869326966 371747300 913821729 987983586 957023997 399540232 668332491 382494098 663337588 555176349 494085278 194825719 645548719 715094111 159016275 181203281 619106697 4215119 871174438 411639463 103047139 786195387 664809180 635652552 199996583 716415030 662854086 343923282 617674695 264817057 988716729 216806560 805795135 47610906 182037269 403529439 686347793 354463251 365815739 432545275 911321927 963355451 977450014 929822893 261089008 678263698 465268021 824279668 591711021 399122011 998217850 224665244 480223514 352094498 554069751 49067827 285641700 58731194 213578295 624835602 300025278 329464898 850880851 731854808 115629793 886178846 288727528 256027375 281505423 800486649 867917597 409894534 654040081 766617287 64003230 150300053 783671740 952137667 990947751 463621596 511172072 308715380 979443182 847467751 347634171 332178343 478137534 507899649 827773786 735354221 496896486 423863877 549462141 940163106 154201789 762225557 268070361 83809903 632838941 596170133 295612146 615392570 359658606 691821495 325600596 226873532 921490080 859162931 482105743 288452976 929421608 522196491 924263487 215195419 539483651 427695111 95293700 297762759 879797434 541109685 931048330 938034889 838685016 644941679 521929348 749262271 604347767 48899667 726067882 35981707 222727987 615527756 514626496 2287450 828655153 547875851 253024657 198047137 210711712 580611590 783507690 494210330 92200507 238182268 532698285 804154828 294905145 419977337 371444407 891907589 723855716 37988810 791985906 295826770 956894986 137397258 397730389 961972630 927681536 268775064 149257685 244781554 734871721 518849178 184222583 831945173 291096804 607937540 521940805 956607473 854808866 546238093 806707278 975108929 14547292 497687220 350293426 413534221 348005390 645628610 48487313 903018717 620069695 441100231 811432467 327188360 212935548 675336860 773959788 428526635 769265885 947571424 204054998 284874793 627692542 53463037 665690772 568172333 660997895 858370594 223993585 649153580 64080551 951301448 34583100 81387109 436236048 138138159 50279377 124613720 680542981 909145438 646293010 950360276 668917451 721076774 100783981 952337388 940497710 165449634 642618700 955911164 923844745 846952366 54063411 644718251 350011829 139332597 403375005 589063136 492032282 567463140 592785687 394084055 655151017 963968696 235557680 81523460 685557204 297745006 474403208 413700401 785813148 936166606 653971135 671248487 193775750 239064428 205469565 583489274 446540450 827348380 341967734 260212106 995852677 636070785 480819815 519571960 442824269 801609473 388653837 511266931 569274271 481651404 842459187 887073898 766026412 148521309 678553519 608380833 361034281 501630450 121830745 948771605 903595861 103563156 777211923 675923988 636666101 829973525 19116230 897533750 568185430 542079755 85413224 67464020 721661520 750246615 464581107 724127893 580820037 438824863 958671716 163555169 912242965 312542807 361764553 301786989 117134896 44329910 991223349 500352697 625050766 100785467 254209472 833222278 263254445 494002734 709285006 13143649 531792017 667934882 389540298 15764255 975314635 172282991 183107490 779446234 275876718 222180400 754298455 754881786 873341980 34728533 950557989 658917163 523649531 790660103 495402328 728421468 493174453 992213570 618040133 309884622 916580227 986410185 617779522 433521667 896567844 647127839 905050804 128065481 628468703 738528148 670161156 256353589 748553342 430106694 779943079 759539614 887044956 100439568 109753874 433401775 203268693 77904796 529396941 579009617 722941135 224767068 785406558 44296118 504596664 301223813 657439066 764681310 94182793 861937944 158572122 71302669 551216959 505666273 576130305 923800270 57467228 231795050 758033657 897105396 721031668 909044498 927409906 241656606 71647898 190293748 850446249 59078447 1301870 513289211 883292382 287611730 787481623 885224916 253817438 759448575 463569598 44877820 698959610 435896300 537712417 765456558 212712844 231845156 165854070 344353273 504080375 542439918 252099466 417620647 914621989 883628003 44317099 128708435 52229382 286485722 381477289 263093084 418302358 90670076 724667369 300808172 630996440 352183475 554568268 363247858 604013526 258123186 521150276 128526374 341587619 467811832 792644294 140774922 601559383 696356806 360586065 77905637 153055252 636604333 316407018 907966406 833958153 253435772 712170528 569677192 177954658 97474388 797296904 417164233 564699229 370467988 569025090 419347955 845699133 519557871 991197173 641835573 842034504 896541010 982551755 65386118 240005332 258078975 442823934 312529832 533681723 608863862 984346445 237258276 305237980 377653383 214718971 741359435 482729509 446107973 627809751 987629619 962451079 980086024 334625080 855147706 615814268 906145146 267744508 363016844 584399494 857326726 278448012 227845146 890991409 513747808 258421203 234939803 523517452 456757634 291389511 955267596 629471925 869701554 533963239 27706 93048779 259928830 409200955 905447858 278665723 296236470 995110734 325563344 760715508 517077627 629316280 616682672 519829620 893076780 875229849 474726460 251232570 838874108 770226581 13815589 389245970 106380888 998112475 306142690 992931534 344945154 305823519 538424757 442297673 334072315 311666594 887463332 135020130 28513168 951771435 921933697 393144072 672309591 286455045 611837666 273379627 345762345 812703752 847150122 339465925 337408045 116966292 205345153 506779863 754122189 517841037 756840405 35460716 813734591 549558369 208387040 688339864 826903807 979982344 927077152 264078964 202523600 45114110 322468067 367047717 522635457 509740621 809319730 764770255 680542370 144299902 380986347 836712873 736439956 357503403 816906153 550471149 690284792 60140656 804005081 720887258 215793274 548431607 601741993 748641982 529262353 275425002 275423248 125163754 856891128 406564737 345439955 565988538 470790579 74137211 476292725 267756429 33696524 548104989 876950344 475173582 955185178 719039798 209896806 202793201 417861179 941793309 442196908 735111789 467021328 243767214 469689031 382419145 250468485 319018833 710574625 770943370 367122897 249205490 513685239 994490182 120638060 821135883 878200649 83313814 170530848 600752280 229709533 941923102 479174388 896919071 777249346 243181188 919593536 601589935 740607959 90719614 144495006 245828575 684331188 440470214 773764596 712059338 840580039 42594846 202864748 826227227 456186558 959376206 654508924 925087484 767299858 897785130 523669470 261517862 464145155 437264524 319610778 835855831 676805782 264502104 490402043 460259795 672436899 678870900 799026067 609589865 586503610 604031958 745276734 795819888 229376321 560399224 315639077 842943816 875400797 533710429 189644464 30207445 509102846 457459338 915825301 342641031 707127008 506384662 161105358 676760144 317037697 609699099 851303587 809931444 567638057 413277370 376477597 335256245 213577447 208011805 200514193 390374627 934769044 323656313 706825628 311519061 599894995 445103874 295199778 871063719 793767174 522610691 571651534 612421376 983773029 726607294 707124120 775597840 974680804 187754379 417004216 833563916 238934085 254282947 354580405 848469939 832226828 794742213 321383258 173366089 480113038 485785342 404945338 136650398 131122659 875067873 856429365 528909321 250731751 143278054 399488876 636726886 285365319 810751376 446884941 152530460 256093809 340409708 799465736 898262554 271473053 24275209 406607137 463529176 712336586 592443392 886703959 685175120 389861573 964841209 358171317 475374604 186982171 913285785 199104403 831852568 934584613 632259218 592435851 987982348 624397569 361055907 36251523 428595972 752803994 576134536 195924644 644821417 825233567 542689298 643339623 242372390 154359177 189105679 620426628 453114933 422615191 293374296 549600770 884044305 938555603 346629333 707675693 965608832 593139724 748742507 495594647 903443924 741232091 281890572 476859421 595106272 335459998 734274487 264640228 103538436 399049344 532665448 652556123 653119014 705139314 302990896 231450929 126399666 223410474 385308956 678914660 699199906 380288552 469407049 142786618 783868016 351273140 659608024 390834241 165334566 473341667 235930613 417050950 788847184 688337543 239822286 708019309 832918535 95147586 287868834 370080788 807574245 112664191 166062770 209892077 779897363 326412394 876764742 565266663 709258558 265835263 441635506 789769794 369570719 183122940 987168851 42237568 882921200 873324269 887781508 757545329 316853884 331289117 34193078 213421603 489327119 838960038 766035803 121973238 780073724 977080425 917242599 353897873 748037927 271706894 428923107 680347610 321636337 445447430 517067476 815163147 101602125 436938633 122551635 757789597 806684332 99249303 704313074 671320915 548479507 194117622 689679194 489741884 39129859 374425658 806005811 646905772 825273738 445751738 797256748 324731199 61701442 70739860 467723780 709138392 653316678 871217333 656943997 352672932 835574337 108685512 226665053 337742875 919085402 562824520 112999290 103527666 390141260 248809076 737263020 340502320 865802836 199225942 96164569 39869734 529394745 236562879 530395366 631724643 70537544 96385346 46812872 15150787 60186457 838464580 868247419 761341292 943914696 357241839 837972735 840765389 954732927 98348077 301027676 377714839 212555240 950453947 218289067 495261893 641405434 425861655 170385150 98216093 635974710 45151371 368799615 423966378 59993760 341654821 136931155 847129797 656942023 775515841 553721260 464838917 965042625 106683130 867023304 661619406 264493866 262913341 373348328 793014225 588906030 940991926 488372822 12908799 193382775 761762403 9322594 985143187 782891322 642781183 53485418 549484052 544572985 830050579 959750604 160582989 459278520 98866419 970660855 815591251 589585796 511538866 332429658 852210305 524538616 306305587 817530736 869021820 43027951 764078367 519907004 28548400 814999758 880800229 733617607 117365202 382686340 572433598 242405924 972971487 94855562 470683306 929875308 258443800 300214492 279522928 620549701 812578700 619613952 982812067 856368980 68351119 421602564 878743960 95747665 344374203 742745984 341326448 435274480 694386422 993604496 705241622 480936441 46511214 969567710 567563064 777726000 976737173 855183253 66591310 114607470 431181351 25254762 971911835 845031305 314795816 372072094 746947875 128791909 697971687 496791032 621057462 482171883 783420150 887609029 193956339 509585678 727666481 164747224 969034290 290318536 111427263 55518356 133217443 486317597 445843975 30556639 502411313 812170258 709647554 390538021 86091668 63510721 958108906 13942109 403216463 14478908 619727302 311301122 997801896 100423084 579807 698486817 765017008 956069432 278969099 240328517 187396163 909860884 681455973 911446658 870459387 977120121 41152080 157283193 54601538 236304809 500838013 287725904 23158093 329562605 484188636 466816949 14565645 292819610 544710316 725154780 538103878 711597066 919664240 264385417 562821762 524517278 179260146 85662202 726030862 287181505 553683786 924090116 330100486 24541154 18812117 335679997 530139719 706479491 12319280 142787262 40837753 969617180 671296593 436957362 941064973 305673793 499975012 380822982 676080954 310901630 497048554 490883951 48553733 185899375 652003751 526885292 170382898 665942966 832403109 67560964 505043282 904023038 990151736 428196998 56440511 761966331 230558718 267020486 225228181 923715939 356364508 666972389 452107457 919269114 770146815 948176005 837720048 250134925 474003415 442507734 90973343 657350634 582063908 532199058 917747975 912702188 460346857 428572402 289807669 150911097 624803953 325737153 410674169 4073079 172727891 356315209 609175531 73597403 534021993 886921568 995636842 151902109 838618839 494665833 705520798 36873664 922830858 429019975 169109115 91982416 352458167 535497832 303093173 872683614 962111194 174546884 142361295 407739138 849198519 493062617 244056591 968170082 551059162 738152618 389854852 903343785 902457881 644718282 112227084 509128962 128761229 694237773 465325379 230987952 872549020 161275857 288123536 22457328 492671219 526343547 53012264 356889357 136108421 69260283 565903105 622918491 988791692 698174344 414650584 999599154 600671634 845720799 373097274 875128310 284553825 492181574 753466229 896318225 326480395 602437260 77970082 953596148 465237231 871773193 108918944 728994074 688457900 643412374 13925144 157217287 384049974 198621598 846405243 952407107 533986748 662258446 80233729 699396960 507504573 532339293 15777705 274326776 287594491 43681414 756731194 650333616 880162179 421786130 127035211 814627378 591086763 182844944 987713836 828773932 290547723 658855189 785560835 141971806 463371661 432660543 108320948 312247942 445004119 343841843 178115314 897741937 606791907 224897571 39675957 95160557 4104680 417269953 7380413 535436248 80079217 601245007 297509521 428180501 43669186 237125262 837722754 796609676 889782903 960541140 318399787 542848303 596521319 619354097 496048873 626658298 555130294 622292039 845059554 134124015 550484437 166538168 949225741 428683798 400366452 898752438 278845726 532330628 165525650 28642103 643414420 131907409 219465328 892201399 934078395 741394336 692878494 3322941 125342625 355469471 520389103 263118936 116170014 210334842 344878460 966055198 932638418 67881838 791943087 242248239 679754025 189194431 487318830 664977581 215101260 475211189 632514034 961769034 588136507 190796451 618497591 907216955 323728307 95943651 256041854 464343615 593314618 645743318 187870102 99829658 218700067 32232168 699893138 809399836 370752903 182203020 17310417 715086621 100611395 361987644 91556339 296762487 128208640 774364025 744897509 944853907 644059698 806471116 811857631 959411807 82698764 674899403 399791961 26078800 935377555 190795274 460613400 622103911 484124045 443722805 324149290 669064489 115456907 281020909 771293156 631204770 619157730 265351144 449094113 722855530 308270775 266097376 955666179 678114721 777300463 698636440 530916473 759814377 983306811 672302811 997846708 266077300 377374484 159986297 366214262 459063287 476587194 579530829 423198655 960100785 351188789 128067129 909704924 136472423 19446613 621568041 311911778 469342566 331223475 574192397 509951277 810349961 933114798 549867486 450062686 805351467 176243824 442471077 182123367 804952369 113567721 14495077 238415352 448562955 695354319 642629424 713050640 817214894 546921637 133182758 274451443 837321114 724463792 135560041 129059883 278339798 151552773 965570589 286012044 49094124 331318905 18602617 96444212 78472952 796908714 574501303 550186888 236428948 636589318 761582102 201149234 244396264 117006778 78183909 659601706 388176545 371837118 535521907 994196136 279078902 310784722 429131035 475391538 189065125 697468544 231625279 252884116 472491509 705543448 259720266 685806563 233066933 195941810 895184047 783596154 703619385 851405869 954876132 842876926 369310559 812838960 56290673 355717724 538384527 941994544 275421916 44798663 930745 914485346 266272955 592399547 134725455 750480839 986946213 247933694 82468945 35191079 661264702 767948954 454569799 139543056 602063662 433676263 497636666 415096800 217319466 538889084 923397832 311172787 978887148 457959744 862190346 942636657 484805428 36051296 60345512 279995338 974319823 663163729 942674638 547135803 824101516 516107979 597895735 266963966 200495689 344417494 617940509 991543584 917931750 389238975 111351622 231282799 412589389 941839126 55675651 238236546 455291761 411273403 391128616 69950141 760093004 381907406 604837911 397257284 241309153 913888962 460567473 421366538 765768761 998612806 469993575 9045449 558701670 443695961 610348334 83529211 32941189 678206525 634425224 87654126 291597239 450228604 95434870 160464560 552600867 255928307 944017291 437624603 554801409 746496693 192579034 835603147 886017925 810657323 329854211 173081644 451980789 619579649 916627498 531148398 438476189 608356137 621683454 248345225 56548554 927362784 872151225 328042557 816290267 773531053 51033365 789504273 147104302 613382491 137075032 234399062 875242802 834581243 55806292 663758118 109126998 505211885 548149341 424740190 719653142 211984083 102535759 80221866 860134898 893393051 187299477 576278647 958252407 103176569 271570200 352953343 688479285 338832871 668003667 314002754 608630984 346998187 311983427 297383945 664153808 382174418 772463210 598580960 581095418 22630065 45968604 496166438 757582070 899534560 573536303 705743606 981481598 537614407 763424381 895346235 554424920 438582289 29914479 760163236 943490122 464232627 732099890 172613802 728245544 522482408 55421821 335335309 963557324 354281655 209710222 981282386 435346459 209602663 173194798 223536592 583693819 500191120 666060454 424032410 36213854 561408016 938504657 766858770 708078656 546808584 458222603 409599328 392773030 416482788 657421625 470979190 991251606 104677210 803258316 201607944 529192997 710913638 462989752 644955547 316642669 856055116 87561597 712075892 605070477 341595801 563898145 995338404 161595826 657326625 48790320 903016196 927777807 6203900 109031364 79145268 443385053 379451796 708554617 791422107 471138396 707515029 984566388 54008171 667367642 95195118 328846694 128490397 271025067 609235170 808017029 22378990 195943971 231613425 334181517 45634281 547996838 225364966 704015301 612074460 215447459 262167259 143171325 905610211 381936774 905641255 325764233 421432025 260572366 476482671 893679943 115952746 927386364 666605728 684274593 302559495 79558553 726952689 763920513 108665061 429943350 178968795 603383905 200626437 886873203 844735776 16473147 284648497 148672235 683309266 814024856 885245433 309915213 113971779 908664966 791181236 314464840 488122381 656021149 745907586 900863643 104782868 480922615 964955470 909613059 704765066 354264892 969981380 596398415 416560863 323125149 317133664 822772300 443931854 607006668 183437153 243799256 388974429 3080459 434666190 868991446 429821912 866190365 314772347 259476527 764589268 770534482 503499515 738469331 141264174 33738880 631519664 266067135 869665544 237137414 257832901 751803381 603429070 894007241 639636009 64597628 888198201 596336440 209021331 447113834 244017983 618920777 102440323 265428442 703260966 618439546 811552064 998551531 25275261 223347410 1416417 233616841 980486421 392760031 941224502 562637220 524798221 318384822 640083940 556158907 315967432 249143798 804240467 477863244 118012401 331797958 815682225 774113699 630231935 496038869 92526070 187709203 199860394 989153622 666035687 715374067 215723773 565302795 341311496 111101353 225895485 267414841 602613418 118449051 751645571 555507883 346466279 803797568 401173032 807348668 11930267 644324880 622531794 474729543 749134195 142083724 879172720 89013684 984970205 165952322 235234608 116100082 857636625 533963969 735972756 794746997 784243472 247420324 79868767 498337085 616780194 86824844 4024984 589839823 52086616 914484262 636100250 718050360 295331978 355041828 579748096 34531858 498354262 193455164 873688237 73734009 519500200 961384503 219647179 109685267 9435695 320935386 219356113 906332687 713000800 657211385 928808058 788708643 198692222 936600941 929933517 778829199 74818194 497375259 609674002 358899477 998936428 907218923 859211489 953474566 714698403 605339089 146298389 672603704 649323415 679247557 912516560 809308683 471247219 815446216 433129858 255531874 254272034 222172650 640738269 252870828 82462051 200539960 407269852 588197858 17977776 965158865 705531336 446299008 457039702 367836113 150591529 429692813 565529954 726255462 706405075 274493589 14351025 431827396 257465316 710642865 404569308 600443426 633414851 708612733 29981008 638388931 82588950 382195232 880908349 596655603 967088596 802475084 860447130 121960705 990775869 500847411 696226345 422097739 487458511 593265555 94573678 462339376 882775130 714454962 355436993 854539548 403414771 86674531 492733746 706724481 570331378 87920633 452709028 389226712 54396417 792798545 262581698 180114086 938569735 926193360 167988474 309396596 337369147 431886187 11141766 556537298 389699096 102813586 339495269 300678238 250923106 468527685 818910300 25825463 714339369 8125963 274584321 357868425 888958909 253927410 291344041 411361414 16670141 80650384 303818098 720875881 510241802 631027970 366553418 667343091 276348626 453597682 372308191 800982509 647516044 593218187 513228966 680641581 435491312 519465346 714462181 816488843 764616964 249945113 17703327 30497511 990444053 181808405 876954534 364002094 965231028 614110659 927899539 952061012 184319171 94551800 903736262 776101457 915828065 656492567 260915302 585160231 217389053 211722755 900051047 954156766 543655498 202859050 767145085 450566798 359895620 847666051 834111017 6039886 40558384 177845133 244005045 536754751 401202844 738976077 54960175 242288271 579170648 451572818 390551155 372700266 88417413 815378866 110680605 590749201 676632197 843059466 268358038 668550851 802324482 80956292 437973010 392442314 435520756 947699914 72513156 470683000 302580629 149914132 106239152 673932842 374756714 330816289 173539870 39062849 985644608 314443062 207398685 734198309 395069739 273967651 503230919 83666763 333745028 177453373 399042296 347376427 423615988 300576864 122225500 431772489 45865829 807649014 572980322 33412396 40438794 92695274 904618818 889943917 4318306 896825782 111063039 602477217 98666545 704888151 353757279 728358507 958281601 95892305 789121265 199229557 525072807 65762740 529346575 883388785 308963905 5598742 273622230 883736092 415135281 911468692 720086580 743802420 508453540 283782360 216775126 860643720 699246094 587022093 669354295 540289769 712633133 478907625 207992465 108995375 755419651 651562156 739876850 977737787 725121246 370159130 546152487 578509821 729994576 43966340 815527370 665316193 414347576 475079361 907150397 125945703 858746809 76670506 732701858 944630795 680777279 699405226 812355312 714983261 926300542 473625006 203865309 33224300 185629298 841846317 762465513 73444949 485515618 327892899 335487322 362614070 818688217 813979670 860501827 882059068 333589158 430155289 996416380 461426075 378651373 681231805 970612133 957947784 435747086 989473184 345544996 629816139 466824374 24146415 609804334 786328874 437961435 623586641 778528952 278156921 646728886 455661057 763885955 737970322 891517134 541571769 177820950 868895704 975526383 222268866 222392003 398540469 239598634 489737707 318729122 110039706 586258398 641137033 693770642 121983747 551563953 665881976 17512509 950547569 135471243 929805859 62936081 947516271 142792868 945602676 437932360 909479310 928317046 791212260 304629987 243119211 232708294 153693808 958151591 463027365 198637729 888359839 203281705 913161958 46979673 592303996 645975741 756708068 353998477 731584164 194162309 298936918 170944799 746017327 764178025 385262592 696852541 348956870 674818329 902311596 987161945 712412054 74265868 303576620 908848178 10956121 93429638 98669147 61718987 363145542 547914636 339331609 887436657 201501738 761162480 150636113 609572277 349418320 801833290 843490551 349559671 233362832 987735802 941641730 48147163 502498375 794759720 545401 303181899 210755674 894861251 42068322 119286138 7380794 116876934 838972626 533861483 151992284 406822382 768045794 48281692 28918719 358782790 468961972 580501722 936720872 183455390 750835059 497239741 635805668 384722895 860237648 846331679 696924367 48487285 310037638 172262496 55809086 266930173 663823449 953846068 388520800 103271571 642808848 13229451 542338017 667153459 218852352 153671072 68990194 623622813 311218819 935543032 53914200 747043670 739677944 723666274 864368982 79883952 220344526 218661874 259838395 772531911 732771955 162905601 327005915 297123956 69144164 746122292 361593497 331723876 651066402 635903355 424379478 28434953 622465337 210833925 55070724 75373204 194612280 156291664 918848280 515022350 967882173 813937187 178811281 16062521 133896551 372718984 138513141 767336873 741187297 531844562 410739022 86046898 124941535 256567457 918912571 793254008 72043035 934120661 772822482 190845922 443392084 921611164 838710717 202925729 656620889 329111405 595352107 898730541 577733625 292190975 938814159 868551877 419523342 867502170 355595755 90907249 616295549 582442441 706413891 162437634 980784685 64927969 580351268 823661587 266992403 114596221 382959465 23092737 997017129 299387586 141568107 830042868 552911214 797387804 723124245 240184030 36053744 421348416 284299984 336593270 881992129 148434474 336071318 619400511 75242744 257888796 690285029 808246908 485708987 120476839 486919872 675888707 349909296 819503002 712981947 306290536 407365006 548714774 470758633 191068556 363741454 461233274 488736998 345771546 188553201 710569337 891122651 288400192 724351616 982372608 818550903 827553015 117185553 615030352 233678062 753663484 350660602 602204141 306974719 362905820 20483745 614111905 390968816 596446951 544173678 649826947 143122323 239774515 379857109 52805611 689525559 527730078 876961100 194558592 725018048 681582548 622756444 350169649 620823443 899251782 313984650 140951598 20510621 67704107 469620074 577220084 768374869 818712960 116767895 203821129 621063355 697178130 629417649 814921272 188445521 152199278 181035109 146079253 287022889 540620784 487461218 738954365 58492121 311991989 584274788 793838420 633039740 620038820 528569134 331773638 203636154 401334896 312877964 866904135 543485636 784550547 57561165 291445141 920806223 78617672 506390347 542272432 462733974 147452060 449801577 716315626 840219490 257289053 21597074 784852180 541250816 910458914 168056248 377160011 52451913 398075215 179761620 165619571 847752856 23793417 804606698 109964726 391398101 950895680 812161543 851075020 989892717 476886961 770500919 338847152 499736151 464705236 974062231 3616422 329977874 923902715 536634184 487677499 873597091 13383215 98132601 680739137 4390809 598516298 249146454 849010391 780289034 899102700 662208285 831527775 366144917 185121152 770560017 162774404 351216990 810632757 92429944 272254784 697730837 978710272 394623144 441426123 744199153 958165414 473391867 751157673 284005295 547121068 849641171 990816679 795699604 785123685 924722582 107726811 483169137 988124391 302903741 587181981 576584858 582372112 686937534 810770327 9990896 156487311 157846301 823656623 442218967 94030029 101347171 349316895 769299774 777872134 22691620 555358558 876562075 271252285 214436601 735098166 259508715 426335540 635296899 615576239 508079287 510562175 755559278 930209055 876391691 98871926 400462957 431381024 199460479 394170680 995964472 242316443 296544046 221821615 618779282 444849079 105001155 954668171 849911110 486302187 425631079 462498883 738436391 274964977 324735701 2703894 793753871 641936336 920909641 847698960 862185693 337133525 209728649 729297150 825710718 385588625 390175972 852536698 930369252 56680160 374869041 705304804 749624075 537647339 558385868 165596773 190550256 121781018 523900573 627031020 158531235 386139170 586864657 266827568 388305717 159236864 5876513 956193461 870435772 926093816 583644742 231935680 632262239 208705431 492896652 331325538 658513223 14847406 532024703 186261621 156703140 527848031 42639924 354434198 515648693 774865672 5149258 995386926 5355703 125794650 196759529 849025906 407006200 173752902 957319613 548639316 24493001 54463754 278350843 316837273 795716482 508917292 630221157 433277892 297413002 250143348 275336768 35296299 598022214 543676921 297706329 67202018 602474287 489689878 280710407 494699210 101239223 438367602 94652968 589998222 870095463 206437111 429375780 711757725 356804036 830359767 583895270 645744684 756254567 819662482 367029222 999771967 551103714 590384877 751189796 575884188 591431388 432044271 985614117 527226582 704214016 774771952 972521717 736481860 868068863 581559180 461678893 316480517 333034642 995834025 523209448 932396034 270848638 607203950 404824273 171540203 893239947 688365141 972155411 793608504 514398347 771833879 141406565 105060395 415375451 977206457 9262085 322649803 255173336 773453703 406749880 718834921 7038707 489162004 938245328 173957659 278865560 496030783 77620512 985291971 927459782 35917610 87277833 607205130 410838911 306340932 836688236 689674719 417490120 433617214 914089407 790802939 291578809 228510231 373077745 218067164 163033707 564917776 363819141 474516429 567434748 605262011 180328319 617784543 601692061 635865828 67339116 312048615 430422909 464827822 124711271 93405575 992296917 405042555 764150024 114977319 764793831 771377910 838310779 996633335 995822334 741897237 495742570 295684335 157182832 264548628 935973646 5069777 94939539 346293622 243622693 15111460 23446730 748360458 629940211 283517753 421187713 406179553 628422472 59421734 244035367 766724184 239580283 56898765 756328249 228487190 82197865 998790102 87671353 32111876 527824249 609207986 727508911 508356952 254589591 914849433 606965806 864813966 710123581 400929675 721260117 333633384 949581926 782360399 213440958 456463095 987779224 127765623 223175195 503784331 138753254 366853467 678852122 534045888 624779491 48760088 580388982 532564351 33740459 238080157 477613297 474304752 585865190 444063124 559307095 127283081 244404420 727883129 179035254 20509700 864119035 975745161 255508783 475908713 289841863 404672207 711140189 905799424 724904945 473254682 761414383 4788576 982261957 270228482 731080918 640512869 482496793 536641769 938294285 737259572 853231436 705741558 116199059 62409527 480664391 167953433 374086774 231016228 596673907 266473482 602529479 791482614 838441931 14955851 917552801 142632179 781592777 978576931 74065957 407296420 758525558 371848611 383616381 30988515 720299874 544210593 415466970 555942086 892711327 504288447 927448699 481143476 531224015 822281573 420002718 283011163 926345748 200253635 177099663 916375725 103099681 507351762 273783201 773455077 487223081 602459731 416490283 651140490 274995437 547531211 208371858 534407528 393283758 962297487 922745409 451129488 200191809 858833330 872063401 57232740 164678903 778407191 519133251 49857923 451852977 733633638 921552017 738454234 668712149 632022545 702239008 107889824 516689488 223196239 826234753 489942096 613228440 481684510 794503503 268095150 97750958 90205257 193181995 798699718 529777431 480299102 473490879 552041197 127193825 70419897 120526524 651915708 26623903 493230196 289035233 134751005 868523125 143057023 802599404 120409913 281307140 139041924 841442730 653440386 386430846 686361854 544214251 479544249 737828763 970885934 547872139 509582046 127368083 696789530 204345451 5753409 742300206 56439700 765049973 478689397 31453374 288682802 606190491 46892117 726827545 465586520 968259545 807883268 809864088 740234283 231573552 151191539 32541222 109988509 417884588 873387473 866089262 77910885 935863388 717103516 375663531 931785731 953194590 720496284 694373655 339135936 207994579 508633688 378908280 594587821 786969315 378641321 59000158 60077218 354152128 514743206 842493153 868572734 444105898 862797494 253807261 463437290 559087581 491044232 462720439 631775448 705755558 691478027 400026081 631534076 493724248 491888254 226726477 714995994 687957579 335477863 477723323 257059770 802959074 608092044 642173555 461381163 902492553 240132360 702484800 731374214 244210865 692081207 502576762 807582123 230627026 820538295 437580801 207909952 395068274 206130298 349701432 826832313 445701658 52303027 32440336 994379595 888607067 919127261 771603967 680315129 845220817 479384764 514691329 228037259 976701725 914491486 823930524 763522703 153827561 886788375 648521953 644177246 365911017 634322560 375283556 65390619 438392533 617222532 438839366 920215464 714773361 817411400 146102061 997227453 582751108 519511110 1921091 778026959 893210599 607312182 878763841 559643 396292975 276430367 648826470 512428719 98362878 385257291 499621239 67393621 165498753 684912208 709386435 230022570 265130217 335640843 260912673 846004750 976574254 622109341 626364396 423223463 904907350 198900341 965157391 752840039 141934186 867109703 90740468 332393988 771809403 149530637 404581012 313527554 243692965 351240461 799276909 205403815 201366025 330963668 572009859 88540160 360123344 419826998 32220005 362789356 745689137 762651726 279423786 319677446 22266465 355296643 91450739 232059320 268541092 674744957 159522915 715290932 46663494 425506867 360111271 105678448 215924633 410829281 119426167 643321900 764279027 578182152 797723283 170114291 919222714 449771898 16298303 846340112 610479195 633148489 87967048 295906466 69512769 985388753 734416646 249264260 662762733 535917236 137770843 999151968 715389149 160613856 823875238 776894887 493910170 643573642 681474520 465579409 514090940 201541422 355893098 473542685 73092571 442602897 398268504 281165330 636470679 254745532 72696619 278174471 107593115 606694921 192117994 873169996 995348890 549638414 739114546 412609543 814105423 838111923 835391009 410636317 82960251 187590432 44990299 203493694 33793769 704046032 137006860 412952036 605906283 612851834 837245937 801165136 544511707 220425767 434058048 217083017 496781339 549367325 270823878 424219998 701272085 812463860 693715150 265879914 49457341 729658248 230974256 199663885 943815690 241724413 46343240 592237164 576437507 664506559 877674238 753590393 992072879 396236675 254434496 782968303 954437921 857943108 523942021 155504712 79107698 318300230 129668553 153014995 481595334 151328024 915739538 937066909 577159239 66135437 526222194 213783678 46696486 8965823 388561533 165650455 609503648 795186965 161523281 551304401 663813108 563186489 139587092 791458264 32103023 711235872 17676149 246207531 348987742 651862280 953335211 783762822 972486435 843061877 613566576 104855923 858421531 592214321 639014160 370178110 138997938 304886865 334152536 833628167 888769627 302930739 964960922 257280935 40893069 369368185 737285307 977699273 761915084 180336910 329934106 146840030 828611749 573917996 818121130 839429405 415634599 331952459 995820513 460883848 41439597 594195247 662538170 1000165 50364568 248350437 615400639 267165639 185244118 342880707 897409276 829977218 285381589 92762979 334637064 746748475 690482003 49557161 169075202 784358358 382826511 230730947 334798480 617033991 124074965 389940770 569826273 370704709 703535479 764389256 103271846 823956686 725994958 801112308 165945893 886649260 805138623 52536503 544171295 649432753 582222386 919326817 596563683 310676082 94218009 713494991 87166793 836995666 794479216 176747045 399440556 716260217 190813752 644305 633268470 787429332 488970364 475252870 228753044 537110302 202380366 757186115 617731967 373991384 92937929 675423817 336576047 324289609 772021261 664054053 256540844 656221056 838753350 132508842 236097417 760560217 339462823 149319926 624871126 455889519 860200038 443145582 203574070 323030318 966751178 513341885 517389518 222942918 844571421 495526617 17305676 939995438 910174126 306268154 7799781 927812390 87604955 570333608 897385048 80367929 963440900 647709359 597587437 321462965 509949586 399242528 861619566 287186098 74547451 154642269 675206967 472512273 512313271 853005573 235086370 357912441 727426886 47390215 972578967 428372572 622990391 344894868 484413826 943241715 842097176 379378989 736241500 349587770 839903879 230411156 731650852 385063678 721795107 789682133 500093276 463338701 202996632 328206405 401114391 72657408 380467353 986151294 269225702 870388406 18513628 575001447 631236589 79098585 848748331 65922603 360983246 10595094 872994377 213594942 418534075 999178731 654639627 781327964 960670310 415800467 904056906 23288461 279714575 897362456 947829226 941818649 579917180 832917579 79477719 298573461 572536574 141238467 464752639 74642396 164473960 294275041 123718237 205558551 440419097 278686157 113632758 765077676 383233017 838989686 715634643 18363476 211118707 956073368 247409156 755902475 937752447 245165999 654111911 407578386 809192603 626178310 401317595 948503288 119456974 983514028 172691404 775307920 177371047 878345083 423563181 368113399 801476665 842562319 247014070 172887697 16511525 167029973 8169514 460644363 7059600 947313659 453962581 251047254 337576235 193013112 76615815 374772403 103826216 902394129 66305563 604763043 122367561 985805384 457886580 502114804 711223761 996325746 938178042 96017592 875673487 731880614 831177765 880956239 449127131 763806914 626503783 586349145 775973779 287220339 817712201 208803012 423024923 913158946 966281553 507526855 188045155 459203087 385091091 298183384 550523362 319512375 571954472 899293376 524788885 516082784 909252149 529052300 253354755 592923677 522835683 157152143 810129721 248858822 669907939 860196706 908998348 321435002 726248432 62602988 963984863 961018146 962204876 121355099 652563476 241308529 176839236 136257313 653795740 698200027 569112359 511549178 504290348 698670240 621672527 137520877 142799362 677523916 270813599 185009472 331977956 641857068 174741251 531355024 931866915 876155994 498358634 193980850 451625105 468300215 949959635 75416782 818594701 367251817 505352250 108206671 902614529 782356835 419840688 317962473 355131479 797718361 337006658 489297816 693555847 505765326 226725389 619857059 604699921 703148813 362858035 91257491 256776185 457037856 320346842 961742142 713116621 640408036 945401146 86408895 763061922 811689976 658965132 231045243 518855452 831096770 366428946 780407326 314369373 606584696 428659989 172442783 395609616 42075404 783401446 48955700 56322930 989851971 493121762 767523942 475767870 782590624 634104429 360932609 53487291 956657785 798331629 661248280 735122871 314526178 424953813 855886089 605779846 67963068 915139745 757855861 959996170 736428210 740846033 853983562 286890151 692827186 899036147 361926846 534477645 523347316 540915861 287810125 888303471 829079416 576933203 598622903 660136462 603278600 86696144 223408909 50238897 452978612 873533365 726452640 840109410 791195349 111435702 622007055 519965115 527999623 409379980 923301178 238149083 355946166 83889401 303374932 77001316 200363536 961540038 963783117 807451785 965603089 524799179 774756192 571598587 629899508 61729755 290331155 516125951 775903942 261094876 961094962 328315732 158937175 500926391 664996178 236819788 316554555 845579616 423593809 693523904 431385556 824595665 110466382 129050633 461029454 647890697 123767737 493809936 220162452 82533141 206426183 70942277 22468706 141861640 465871088 789997721 721860663 369154299 187665661 766717327 314112600 775995920 615146998 910479400 527818972 811996019 913073844 75487738 275885974 287629651 552754254 711582740 640970536 323993069 237166895 790026267 482360315 298146945 665638395 325640495 376384317 456181340 561061549 952444161 652131814 116453326 540422525 530382535 328090554 834746677 335553523 507316799 62096449 886319085 361569750 481095854 422100423 786656613 959699009 52933607 765945446 433289741 496063626 728992058 789868798 3557473 794219353 371246218 250558522 89255394 777026458 626615100 506211209 447146523 437540735 903356733 587862560 130548638 672281479 946974725 818357253 857308420 296563572 334375310 101983483 234006514 25897301 672983909 82220948 889369105 654200442 565418900 471029802 718719504 427403907 447010225 302817754 341172399 800246866 886416349 647324561 231663532 477615381 874228155 332764410 20877010 887128894 162312058 540061584 438842615 48812429 161782482 872639378 797870319 284074498 912961536 511928587 454215329 480382189 389527756 43253448 392483828 144592351 85671809 6349154 97178588 888822967 67661305 504902202 90180948 313280151 451357839 874518138 797896799 240823532 193549096 764107791 507760899 825917035 734804537 696906930 977027671 340674574 541039024 90912996 734942064 737759775 478057490 725301998 825812087 118625058 250306403 987071969 361820561 440255730 56306735 741641872 619478001 354789287 350872206 552534688 665240274 594670761 430083360 646146936 267880057 749225377 687753737 666468681 652589869 311573890 838887414 689293323 979902527 449577359 254289697 818958972 5866765 391365700 978241093 266804519 489475573 182235764 643846059 887093084 519969637 370509361 305126431 497372723 495561422 440608212 437162999 281857419 927429034 139211527 441055250 197122827 487337084 745488817 189884120 943320872 228969421 483222280 763060022 387952663 298756913 11664011 580069281 676809433 932831807 623138041 119601945 732603956 376589212 376168291 783385122 180130749 860970482 611583514 788798412 296045256 382382836 238605759 986124462 41193846 642404443 191875632 670193127 556591026 781071079 927614364 383384600 928666154 127946599 209092475 262875253 668323159 67682217 793328514 76011953 884111481 412425098 475398331 949615373 496324247 507796973 394564719 919294795 231712130 604878265 481272115 209114557 139740371 995371233 547633125 737898809 937465579 392039266 945755815 511368475 244262383 453097019 600689638 446295114 925271762 514153081 397300057 200681013 952485453 562689069 752633079 545878482 690932189 832678254 367721478 427728032 727458509 413301605 46458902 543699876 708889899 241821494 617331191 965775468 21750994 58545433 985079495 322932241 39545440 674965827 789443307 458183726 155652670 188245240 601367309 869288427 60469662 663148418 912859426 247739125 648319348 78013238 268193640 917092484 381660551 701786732 11958112 824224852 41005911 897838212 263101147 794818991 434535227 47264494 982126312 452962911 572453191 963293207 790360806 733077435 724090460 516601467 465803130 543509410 168036645 752363933 80399759 120951677 771054351 437250311 817933656 646596407 454331218 44668235 239761237 638033991 334910962 936054528 957593415 687942314 333002935 285003214 409556283 581132264 789388844 395425117 479540869 552969742 211646126 929368671 806152387 50892980 890945372 240080269 846910167 901650936 774402845 807000746 477093359 845762943 270104995 734787970 59889788 215702393 299254374 827185381 526215486 448009113 698700196 177964975 218446392 3776031 930603883 879729089 806647737 835091155 187302018 953962757 53365070 801992192 575390091 905030767 209575130 181068161 526234081 558646519 556229502 588712367 751785131 385434272 219615400 730330226 104185820 13246838 561805580 946974267 643863852 931657353 136524198 651913978 709785884 275157749 414875832 213733685 208579059 403645658 440570578 497468142 848189118 549054053 320154564 692727475 828014684 117017798 86375344 28951706 778832489 591845689 970736117 174001989 313736782 479284735 522591809 288290005 26333754 740647266 28903816 13427197 644747817 232744631 397489417 201741039 749670103 637663572 831633220 2653805 718307022 617223070 414307593 450492089 712572767 47656958 218390120 310834341 528261026 28812776 560125889 244027014 235136887 182088916 643912374 189494586 757573765 715502919 537530679 908540712 727102781 617965000 279531122 414940991 812848089 341387242 876234216 950154739 523232599 585213771 631483996 77899331 475547776 894951049 658480346 274127028 682728677 875785808 63452087 319618137 980453853 584219217 617690510 736203714 342337417 780063816 429610053 673922578 29926864 700734198 436968455 883275246 525557092 760262438 672540233 577950338 949160636 792647336 516935365 102899335 204225307 937683803 712103040 128033082 307580805 757990940 500256971 877596003 309159885 368080346 946382899 874001996 522759562 103249026 747906457 689540304 995610399 329258005 251848481 659627594 140776113 589853583 646233908 530642339 79227183 290010621 578974088 570945094 501664599 682781039 261698588 673332013 994732195 931249154 797953586 991488466 862580319 488518872 898747733 275860799 292063898 776599324 586129498 215347456 19063599 615189247 36408929 21296172 580565177 52841145 371156422 697337955 150231460 230259599 221055294 534315720 376714527 796618442 917014713 50961162 512185891 826954942 908893298 231304290 351116913 318310341 179690992 613119626 115534222 323727679 19050749 200944844 916522445 812309142 340215984 787270388 222543687 637885504 295719522 571623514 590562520 548183733 293300922 644631770 424673580 700283256 964845220 18841054 948091316 80385041 994568787 643886928 593386917 126957844 916022338 770773161 642011395 963074332 955784762 915511269 739483025 938502603 120846914 548800650 685636069 950351051 899092401 407458475 841531475 397216972 77842978 54912473 49100796 55219850 186259578 528477237 279746506 842459081 947900390 858191717 136790381 383958096 134594778 477876117 975046237 358015733 33885713 608425599 755090137 192764047 290441616 555458652 890724073 181156096 632001954 241029880 812953439 85121590 651758559 737200289 164295378 686832928 697676318 620384552 627578021 736860344 578954120 314382063 178371580 763657474 824756615 988224475 278991563 63983625 68459215 533528155 851062470 787787997 112462941 160911461 955128946 13260440 965876851 82713209 627364884 134874975 393887137 602110104 917983423 224516955 904657337 380900183 79713096 569995709 892779736 89986247 456655185 471012799 535976035 488761224 984762946 517211558 964411395 17734083 107179085 332045754 770371759 378258464 585402215 771262798 303923107 422239453 700774480 498588605 80428899 938709170 628250005 522955623 710880443 258504168 668367491 972056759 636275648 284192077 516160050 56435488 516286156 462630198 94275202 110793758 410547079 260127364 220568348 762717744 636011482 82641818 918364787 408684514 130026748 57324393 481219770 142569671 317736550 111911525 463439092 148152438 862040287 825304461 489772011 662684567 131394930 278778217 403976490 564916429 653660274 476728580 962625552 816243662 370516094 961056503 887796921 254573143 706820987 428894303 380374797 979970341 159276433 283206115 758612414 3126020 568005172 946574512 444184898 216927689 976510759 924247932 130992348 356673866 413686633 322680712 354420117 218261613 707375173 832239000 131908921 505794074 179200082 279262460 503561059 476788292 906799724 574350472 732906098 186499303 720139448 79085979 56181905 417085184 881965473 29616923 860620973 437174175 908486363 184320121 21849984 503032530 118276195 982920358 419603082 349311670 368076669 938396964 219641619 4937326 727123893 186572026 866164523 68247841 87594975 845478324 623532202 264304899 88330521 356088424 962419249 487762510 24532420 828966582 804565545 274308165 427942542 910360004 157861312 455440432 325149550 673827649 248972273 357316710 583475868 322598497 938780795 603398972 414935455 634911456 84022501 62510614 124541505 190509581 506038144 700491873 61484441 48499629 572566630 612348554 143326974 817999642 817758837 518852880 571241244 441409076 830959702 433105778 686693595 246919263 392547192 848791869 901461613 504027017 615465750 384800001 326359123 793599787 28346161 113174360 592953421 728892222 756592524 770115561 780799080 747811663 26937530 100467287 637384189 684957542 576971543 405369690 495050914 966902557 777948605 405625257 993337152 547855505 895096727 209707273 948687105 692780905 1560663 943119168 709133400 875801555 172045683 262055716 893377028 642064773 186223402 440617870 197896198 569369277 434159497 659396707 544600750 831741761 234372954 520222086 184458127 390736734 157367099 933966835 535170179 857147630 479430793 334775451 177574576 854645326 178170988 864274823 998558085 716720484 280775385 586422973 278029232 838132893 827792768 149224272 684319283 84994543 737592041 101924444 445455182 396994010 890553688 356339205 614309776 759864930 428105182 349576305 587704013 133367322 770657620 118261459 385958177 819473170 606644571 561880679 428304367 767559660 245518680 754235245 837390564 222895311 103163263 35596849 72638197 46572134 775484868 994460164 529238364 782859499 319031533 966915141 878913698 959813913 931332476 789446479 435581327 665903415 154897095 161066897 547299896 129895957 285958626 226041979 730896120 393387527 310512302 832518025 137855864 30190573 584169174 273716541 627045792 584014891 164458184 921538078 855304359 870286258 280566972 713624003 141506053 531241206 518434227 195393986 191665795 665992953 47317111 588950210 856304936 136398395 763320466 604262250 822485583 668890062 735909221 245881708 289436814 364992587 50816264 743130756 732304334 958620875 457958251 695342962 423607864 121615350 578633014 619185924 29256003 207768828 325516009 165117192 383200936 164594835 721013694 427451227 954569583 597601271 276350147 43703519 53476064 833196017 416829893 190384764 610474898 965931467 554603098 81625639 336070241 249249374 252680934 962076632 550961008 597425419 192907666 711656595 118699310 938272437 724661066 721226594 324184908 647226057 188815563 921633879 499131848 509100608 318064017 169049482 169105894 983910039 996650213 632945698 958385973 48768725 646444251 926303046 60584579 859091079 128830790 748651816 333868273 699590340 809412298 808640005 531818209 575298858 832268238 657739037 5995265 239095010 171605378 907687865 38972227 879134613 699456222 781590572 122790374 84581500 951870373 873873108 614792300 894606680 350152541 311920398 692087461 537809259 836263508 598710856 212955038 473390212 904343206 298998004 986245308 688573434 939937585 605747594 582445213 92350892 212791455 510012813 871394862 853288703 196655198 90919048 715217319 568304610 795709353 483638540 447109504 138695114 486472319 27302836 12477310 743215800 364588710 313000484 660972465 274396721 704734899 369842693 311721833 314290240 188378362 244806663 679470658 936808064 131836060 409610982 312747812 234001165 649011332 198354023 248886075 105532815 158557281 143593039 923471094 718235696 870005672 428088692 914979606 918585002 490570396 137886895 770656671 111981882 318700359 562973667 884671195 234501543 41454198 459667704 516552799 473886782 465920194 625044195 144564745 355706071 396793741 399831709 298297595 749166543 371379711 968532008 411301025 17856780 266936837 254568849 323967410 448551167 808302426 498990564 628003112 194703769 151049855 492590657 810117448 542725981 931483579 173518025 448355486 330008143 766316062 752768420 622872320 455039229 291716224 499473928 648526985 145908095 115105410 511402284 14048922 863712371 577198988 782925651 246241508 551918589 765583823 87160008 143094363 703142093 213219651 617738460 554642486 922328857 213267111 168468716 579614465 142695327 90153602 297791833 312118659 632298663 618113579 520585866 213589967 596598013 636662451 944847349 857189447 698301687 551451645 274040594 743955080 199345013 861844910 150268006 157343365 278186205 439676990 104871033 595989359 56840218 814308830 313865951 623538371 85960104 284437907 126564654 629229893 705919618 486843936 360586767 194432512 529559343 534263066 536892455 31636811 755941563 99508184 177088299 627542462 13909439 678312569 523756754 526735682 497572184 8489702 589627362 499123202 450397228 562848721 128568099 161165681 182202731 721315246 930964072 68112202 621157833 606105027 424540554 39127701 449840773 69060370 277668718 909084315 735231079 456895345 42283773 539634163 96954554 164637299 481206824 278528375 495565910 593216124 43004650 436394315 355713690 68273587 268232262 928359388 285763181 411321609 24079172 983793886 77413690 975151924 904902138 590412368 468048379 277073334 630263935 861245810 654301227 314516440 332217846 499030995 227170001 73556905 189263754 73396806 273008506 391797507 681171311 984464873 536511808 449718402 130656219 406243613 783043008 192555154 306671634 329457299 455519774 231174244 947828064 530267705 33512459 600204525 699498517 717767248 302129850 824032753 124815501 6317660 369822190 222433010 115771432 176208423 369689833 755855944 422827090 482054854 271292282 284904455 528089469 316086169 221692666 467599118 305417764 811034428 718652228 480761353 507098057 716600996 819498433 165555812 64560626 660985856 200945244 964272987 207371064 665019854 651042445 225310444 375370800 97755091 776419411 619387106 117228160 973017624 397467954 66067402 790864338 698534901 77273404 862597630 753989844 64232709 527375877 151277727 172277829 859827243 483039658 304043665 935938532 977123987 393906643 117397896 344636799 666631860 807190701 3833086 273417189 600802633 662763504 313675055 258408943 988655701 991297497 326580774 858723203 900279844 429133871 708716721 123786890 843086927 592218430 675900267 138541045 248197292 43537630 961358771 427535039 388116579 339389297 61862575 665035499 75272415 276931799 30342226 900042882 849550037 634707839 991918165 987210392 420281150 732746595 796188983 294317639 585559653 988361470 920944446 118868909 362501326 733916761 66423677 181013242 183629909 3305984 417939148 690250077 943314705 700149771 93743818 184400402 322117736 815265558 6974691 982568794 5571078 415564104 609859904 761482623 468759776 995427666 682040288 544243156 202461234 942504295 660025216 926300084 403733631 305607749 250093738 535934849 235375252 152286773 779697324 174381987 867489926 413711363 433010338 646016910 267332275 142766086 248818280 630337213 348261563 250955036 612152745 813622192 284022410 82858413 413146835 124898548 533101400 612741285 189663777 321064986 621068960 647583355 2174609 780318909 223108903 4686892 282036460 672307580 627847161 552747585 646418115 4129029 552133478 731238855 868031852 323607816 186911249 427795794 653697290 579846977 970428377 534239237 572029317 764173937 604998893 324182657 753124747 310557538 568506559 952717304 433487252 714549736 902301452 784480030 643483364 831298523 282588893 818486068 181712513 989459486 672181110 343743228 69078074 190240670 467405171 849177034 246999466 656917578 927000490 447178862 957942065 332766748 706999874 526993996 334622965 478398488 892250536 2438726 475912678 426550089 955889552 127178189 447183550 837094335 468028406 539068373 509131004 420822421 485870621 960061405 291481066 88377837 136282003 190772970 753305497 521508848 6209835 546094223 745956319 880624085 124138496 524243420 418837338 478339537 500031611 801200244 629851769 53558569 542719298 607949178 15458404 458656038 761682511 526529185 482031642 308571676 80324571 984015128 633419611 168151141 556588395 590794916 135357867 397097825 502084811 686191753 168042843 324647034 586680079 853475474 677070470 907556902 77046164 679600154 974851594 691134175 840889599 414118652 141764752 298778147 498634808 180161185 901649802 544866687 755152250 259429621 777810988 126611332 146021180 817736047 909378684 404010191 242009924 378929678 891795517 911575295 58470303 387786839 802992642 963602367 314273697 889240664 631937059 120031170 742035172 634939817 862068158 597493186 330053199 25127014 878274494 557874565 673323276 9966648 143671251 464152782 679126929 138447690 174027637 472377458 822074522 691161431 963661539 504611150 231071275 337740951 905627685 751552325 121246865 439489237 746287116 79432763 979508574 912957534 98210611 418491174 209897073 619773190 579191542 80046848 933531882 271105329 960880257 559304143 892523069 540317886 349137857 691953558 698466580 219147808 533120622 301564268 308066933 344707404 207761677 372754026 577106079 585028801 883338721 212079283 644585502 436993668 935908860 128782959 165389513 799270693 529717304 453035731 893231289 516821175 49611315 184212248 420038484 512371674 286974294 629746049 828787784 149000886 487391186 969397847 36553350 764657142 381814175 436722412 733429581 698820053 50671995 962880669 474287903 990256909 33219056 580590024 699549385 821286372 305319505 924485853 823027295 204931882 265586099 112253257 94599742 315041591 101027829 913225863 860539914 700360420 829046465 881810715 433320369 388788383 278880905 826098065 748587106 205981519 691049858 609258359 480069535 729737068 879573166 562994280 1821226 184442359 290760918 996504328 459092238 704213877 784483211 454211073 376940195 731579634 769954336 185013508 641309568 659059462 325017274 684526031 333903244 879536848 284940096 678908190 951716596 140227318 877120100 701029313 246258477 856174757 100360859 894661510 448644593 87589012 85711143 878634059 749753411 606196739 470864145 708494577 483780979 149306293 525948454 630174303 344087571 841485049 210674179 556728970 474655998 359433382 586783492 123547502 996180060 358461469 669630292 443017226 523617943 343197759 509351394 697644906 450096483 370210941 497733993 350463393 849382588 164080590 273156453 566079176 764123112 993983918 729453342 826521600 607378035 940106533 866707624 547090039 377681198 220401601 549275098 44990554 25270073 544070808 555110741 632808423 986322678 830878024 784372605 610072160 380449557 96360697 488114567 421219599 975491460 839980375 992699497 703636549 633162373 951951255 143976421 904132700 673215897 880503163 488500096 976229049 843511950 249970759 422611343 535267013 975709815 175678922 178684455 53208816 471861936 796705626 482362918 643972024 327649759 106586325 666888763 306951837 604741359 672252834 1655759 224483624 394383893 453344686 396776991 999716847 577919435 119569009 967316778 628937099 979513302 124110824 448410808 612562330 250171462 30458264 892334425 235679180 65596012 927697299 253662054 86562513 985788388 748504941 45085694 46228322 619316626 982133059 455517706 446684482 997366436 946346685 146583357 57016381 320983950 629184008 116112139 117245731 150880524 582955229 706820532 755501265 9091874 475506036 330167108 53215013 317856796 590753693 360010888 341524493 1931151 276454300 939543579 227895929 642108244 998400846 461768539 399191908 681709204 871381264 43371377 606394065 235764408 119571655 56040015 238437577 344735350 107605731 542431656 898373214 607907019 969355607 787070466 323025071 652801528 856980645 678605733 232439254 651191948 26108111 899129757 777849860 512108636 375367270 953557700 729869928 121529728 452525443 305095357 341082687 116246881 928372926 954536173 470193094 942137257 918415938 414726532 121019214 624629069 653838013 76460157 103491620 980484487 159138914 890508439 305917349 304501469 821538290 547319384 696215602 959948315 688807346 7724820 270153268 442774358 267079795 279099875 373367586 652479211 206265991 340421280 803748977 470183034 25586383 342016763 930412710 193611252 629871535 506620767 869789258 202993804 758574102 746946052 632216816 528779199 549297791 77591020 398284340 194298444 539570656 307961826 112929461 179961159 304189126 388239728 314013470 77248766 275550268 411463157 909902115 263819281 931901659 196430730 77060221 738281058 187448252 828673566 639836654 127915038 999037322 948147292 984438337 749552827 901674355 905353409 277064519 878370803 726127658 419789962 655587549 125825224 268252400 817516735 460460512 802803341 653381259 316440370 405041984 731346898 374926921 350509947 938541804 765194099 702531838 22507001 275214561 635181460 78072333 226768599 399479838 883807908 583751257 277629184 243342254 15032405 343776078 514388275 33922468 452220578 358713320 471686378 829902877 798315730 821472673 966393201 18339893 119331441 589015424 59416280 937097498 137965138 510221076 816276726 889163518 191667089 488166773 494140525 404144157 469754004 557401149 730841506 884666295 227846148 494299797 308518344 154053397 375148507 118860843 574217686 448673933 347081806 799305269 944022414 921200245 914785000 404993648 816455800 331555890 665963889 406428710 164039907 162877743 17913086 414524192 972285670 648980442 523743981 480099515 945753954 13717171 44788705 645287630 833962243 892102454 243526853 376261314 578142005 364628212 844911054 985532553 987992880 874330234 127331705 859314579 794968824 492401766 464940427 78582243 870722130 854135895 651108879 941605117 56962513 762521592 700721752 932693743 739678155 506631678 530025477 478542672 236292446 627006753 484033528 489827391 674600825 993652512 969217375 770276192 542152134 15589837 812755628 970355428 231202240 488041971 399770271 970385024 642854310 969376880 702581560 990958196 677810563 814423333 89905863 141559939 860630565 962981884 376675548 656575741 892315171 807948778 269084505 163660726 635902177 652815335 479573341 901174032 600054147 676732403 77023319 106940657 310707706 374539293 282918649 818688451 974947842 840805234 747270209 478019969 749866520 487808274 328207989 221865126 593043591 275637531 440648733 201445178 474762332 468491192 78596880 38695371 870467185 469778974 542254441 237060206 347732581 573584261 659713166 359035331 202666400 386175023 119966251 703825904 453946965 553881701 101862192 849559970 296143994 411955069 495495392 303098129 482095824 463434445 206984124 456322808 514563038 104817339 691325582 986078112 353200376 978836910 221313902 988315609 915078451 887036187 144221879 929930742 585647214 99277435 807118348 548613847 995960405 353974865 52070746 481973982 791509332 775423270 809010135 754190081 151937959 519848077 473594109 956215217 494193741 367500320 410641808 267777003 692635148 689592961 633290909 486733882 233449592 278607965 6448251 605188521 141779177 894866273 97669057 515436750 835703675 145295690 864834134 24315080 439694874 242250972 994948710 413033536 93453687 191764193 424756072 591570529 526643718 205968167 884584212 469447137 989346573 247910797 826991216 872804862 7498639 209628400 310556360 221585795 103674718 868174403 820290225 285095352 995724307 416263022 61760262 837946743 596101647 985122418 216803308 568831516 354786166 234201169 726873041 324359313 241569087 87630867 930297959 307701825 370455069 415856585 483024297 910247969 104003985 23200656 379567325 120803762 535535845 793584779 240123280 64286715 893961766 990556641 857619606 593415817 825162034 786097093 717414667 283692144 685977253 769083507 492928337 476911440 209575143 784631596 590067223 717936722 360559402 73057597 263866705 591355168 103105124 304446194 816300347 933273843 179015770 965411500 579013975 533119880 139544718 718260170 375005557 853517349 72414038 113549239 531631271 101308057 246781638 566550756 136628809 210580539 305925569 167511500 478687489 303420135 914688236 201429490 171698616 674010116 139022267 102724318 564339366 791324545 204004195 584810279 22357574 563641044 921076711 5224802 72342620 631387132 926456079 47920949 493268212 431562879 835082600 267239494 716929378 777797227 57932110 909423434 537763653 769998677 307631073 887380222 950323068 835572058 599822853 537685281 199117625 281030182 621096302 491394426 165342443 304883683 175053718 43492066 381636432 358885446 728090297 921377841 72574064 314418578 733051619 342035782 277654675 163483018 554093792 154342414 720148812 649098876 903581515 186559355 534012029 665350718 874450821 258229384 895994183 203743025 397445298 331058999 559501075 638698296 635893960 32668558 757524635 243753668 151872380 430986406 684538072 564896715 537302352 26623382 901084686 378464968 996759179 325620352 260533964 476132293 107397691 458480526 270777570 897246543 587437885 819458037 318952050 722576763 650339629 787963114 799306971 533127911 668805495 798401204 188178891 7741372 541834310 592306588 965682230 860836519 835596697 827326194 361244506 324304862 532378666 709971477 405197755 385511967 792141447 95640419 689282082 988352945 955106810 865027911 872604839 241017184 118847907 178174772 234701731 112983431 689793371 556854949 61424828 153081598 10918604 162928666 487179744 374539313 523521129 570769441 638448704 460204043 545185896 340644425 473495387 402148099 791468491 170850860 300459507 940404758 929762137 573210735 362775317 917440461 90192544 209721784 266986261 525077300 266164477 432906687 877906577 629414114 248124044 75845177 374976875 159285751 489492280 218859498 902908369 828083477 767229360 152753054 777358646 460193133 238713452 563138855 579835222 978168758 962381486 59879516 488814391 109915948 132492669 237555234 236449317 581125273 596304552 377764194 362176177 619427654 840754122 652963345 679057339 290793486 351463747 369009188 774379366 574888013 666996537 380190883 175097886 647374058 18105501 2939029 575252889 734548305 664200742 631497741 10926030 949478011 573775702 114497317 261063177 823387109 755326326 870779647 818600910 235191959 696995991 873662149 266326521 790403612 630303887 227199146 946100131 458629516 686455805 323260648 491224877 140739718 796427085 3974852 442931528 506309166 394677677 872254339 325141479 407044150 103397907 150169467 842361156 463416785 587704901 940441860 934725350 546093758 203044294 280668547 26731673 452831300 771810024 801669728 656123247 278658097 95906759 334772751 275048133 531048922 258862397 639152390 574337345 275577631 247390196 450259149 958287310 461666149 836714849 116765418 879837345 179690139 21286581 93007346 191066165 470617654 431521270 386171518 846501969 724188727 297203944 194313776 120444669 42712610 869797408 501905586 222863247 359512581 781711346 523473080 103960484 860116345 296193408 430976765 365221921 790946456 310888883 204405566 767969329 810302730 839283768 452793675 79338568 909207296 259977356 858206707 799135523 606441004 152407788 954327056 30189254 267034832 74631521 352700295 122734461 140900016 252272826 754078782 798844124 462672923 475412370 800539437 632148161 773707494 944590664 858766666 257937998 5023602 347009797 446512280 416676593 23798690 341686966 414319394 213474652 956321254 248021015 927703034 507090063 437638196 276324262 597383226 118763208 620359435 976666541 964143108 289478811 186164336 936458555 403330436 893819351 963220208 25840425 274252267 726091419 745000102 381452052 987830897 24805960 382226476 526444651 545520986 452377741 215792552 250637145 760409331 334809693 869805517 205469143 712113803 301118709 358850765 153572005 48657277 922877144 791207268 893801038 957654058 680471765 742539231 430160415 182245632 670757630 699341577 132550962 900077935 197146030 444473143 251993447 468956912 94799502 215883591 451507302 7691271 107304325 499626401 18545822 81476412 324160971 586031411 931956811 291477028 415434457 843173493 17810024 785779288 663445877 519623776 528767938 636448891 871162028 785282430 944911848 657269559 692293329 802484959 736511025 116234301 888567937 127543574 203101372 871276359 661106593 965343042 65473909 249992986 783124570 383379978 7916810 485992575 633768483 235640986 750553586 998983495 837783225 956939693 832950640 244208973 887906079 264444028 249260684 174447986 322728607 32913360 659094293 671667365 309563856 628167926 646656674 167719634 591355791 767905990 839301526 229913078 610946558 214028958 722829336 218968342 172128138 507454818 449574169 868098361 990949864 760074883 308783953 123438705 192766741 600008437 100003903 161532632 474729555 952860217 480260394 985360275 492721454 844197201 370385446 961440714 885002877 624409038 771798794 960911280 152363867 174921929 336177270 119413633 888315435 680837594 672591568 295791738 2722201 181200940 915509580 394245611 632675740 839987562 781913312 61841442 619140207 782553806 715136334 87453564 580696980 38513172 357572637 520795484 165973210 367300738 384078236 218348328 740986198 662326249 108156902 671130454 153035873 336954779 606333400 392427617 187581603 531019638 854060063 442688967 121452292 747824870 569684005 449345302 498855866 251452884 722170151 309281503 461215556 632143289 696949540 260784059 213370211 561709200 491056101 490492237 996393508 250882020 849741814 274668864 76226266 495740864 909774774 483649094 222375204 638175165 113772097 180835611 696170470 869057012 852583038 879038845 757017674 784140816 758366755 316217145 977283270 492767806 532279458 176464675 125070870 683464754 613385278 559627281 807464509 564237358 697725184 339855846 535381897 961064950 1479095 818533521 350358924 29398491 936376571 873416958 187234341 922610606 129347629 297553965 904764534 664467922 905301108 618544155 921979375 683624491 442931653 7258327 895962943 14128425 85726673 657868143 653349221 734774463 89083676 426571006 399305892 631954285 523619312 260191144 425934218 660347707 506638171 107133336 13556202 971379893 763600437 415709182 988157410 321973747 934119455 275052054 805242580 570396049 254929536 474058274 979274351 876365239 898649994 48447083 929405859 730841875 111687476 616570435 758324655 296404955 972853313 778818308 924805400 509671629 767797557 65142548 120406184 279318062 12468579 231047898 280090231 760897230 812708834 824494024 757367003 546895622 446595730 968114523 937101183 76599214 859028254 855078416 870966858 571788082 227939829 249521271 408963188 564539004 461578573 825363488 118303094 716573190 516304425 297019556 210147353 212587210 245567310 391959206 173148514 852941650 248686159 669558994 35689900 108000426 778313861 664551643 123583888 506533227 815063564 512792692 795389172 377127599 810061522 913277545 636560899 169638175 369808259 345502077 440797232 977474536 616617112 360690564 840954683 52891586 279222100 290213981 250449956 371812330 770746042 907547363 560255547 520861991 40546977 354909189 124836881 643862727 88353947 649276853 123082372 310592415 305154827 469125096 829814711 686343951 866924059 549992873 661952536 323277306 962563254 770772475 917173083 432399317 694049178 393361140 458103162 457611151 287998533 448066732 663858622 726629546 838436860 650440777 471756719 695869997 852490966 376471278 675100193 351145890 454448807 93362902 261376050 877772324 521274894 838215734 890069062 763701071 984341879 669324369 15747850 237076553 413858831 588036723 290641523 966024385 53237967 243838698 880464056 935540716 382084984 386123284 256755043 37979019 209275285 26857813 20342334 974713058 453527921 973591570 396482654 861459903 518657830 300095169 206127391 217073530 75135380 327584218 794667298 10728943 103833446 238962914 180583257 372987014 171346955 103617888 39697908 960429870 74708664 271484395 771486067 32676187 493279091 574015766 877640084 601804557 690733566 21891723 355016810 594000329 398503662 943285742 635508039 18282908 525577371 573843445 288137669 857611296 188009505 696969048 659667659 76265329 224843373 882826205 487972229 469534516 745408301 775329097 560456805 267299739 44634584 549905520 524064809 673685592 101518000 396224049 95047381 714197932 801820607 44937321 117652660 692950367 123752402 381797634 202124636 963538362 528907651 217491185 234307754 179900055 116130866 764242735 284630464 453886546 954344198 919911359 279891979 512612564 128659953 28728488 961035840 156187273 41448619 537166082 562081626 360019816 441863091 966690275 500655518 702376943 354316115 572034926 499404186 289590309 638358170 950702542 606674206 808968857 863479905 465361972 740043339 754401118 807175750 19687901 41145984 784639252 717788085 687570697 255026542 139554274 88933594 65574400 57784328 791575670 104752563 269654555 876925835 37523720 193501947 449902252 854506615 59330131 438044989 612245021 805715356 571855005 59998662 239413971 796417293 375912630 920669619 219439171 429399336 924978932 382901473 533383653 570329999 927801399 569030905 380294203 447471664 598762211 627059819 626740690 185617468 920821223 640447854 154924091 520953141 273458617 725896967 467567888 571000283 87592276 210332153 87895284 311776058 544173892 27808726 692636816 491030953 614505623 862670328 694856599 149087171 315267551 764615294 950308290 530646376 412469818 721858383 905680342 344906957 551795282 572345116 85095068 795342687 160181590 756576351 683192292 523947229 16546808 66185303 546228108 884313162 832044409 904139786 451585652 950159607 990732447 115594573 360963974 540082033 432948918 376818610 153105588 309445785 141879447 929516449 974722554 445145745 35878303 648233274 959439962 768772038 865179829 20155252 656756446 174502892 232642375 833257220 779989911 844845315 461570121 46798698 116878497 801697865 43376444 895032816 267392796 984284493 48869158 965412006 228119092 928025316 129648534 28004194 149510685 267939882 963905952 173414087 728023308 640320388 977222371 243170618 192903752 588398492 221464199 255229937 671717145 954324582 114127415 625318876 659253203 899222563 191128363 583512773 863166156 41718867 313619233 549647915 437123436 486056640 253677409 22242404 314379034 332634245 697938358 306455943 425217610 178725115 522795896 87784051 502486900 21927618 628298889 459579856 608600604 194133199 682071622 570980112 838439884 630490958 214085798 272427371 965977365 711087809 659411229 282221280 377223314 625687784 214689191 204942650 471756775 909915091 422939082 705847558 161710266 220377299 662260121 727980190 935635907 936842118 43514021 641379619 217651638 284092112 962515212 793714553 296611418 112054236 527313019 811976021 202943353 800729890 766961433 643964975 487716320 299662683 653643935 883916867 980307056 476361866 547512140 482194847 226291977 131170046 210320613 636851471 225514387 571780173 72236985 972124971 832805122 38944846 444433823 389609815 196036689 336554024 856934642 102009014 371880320 124268360 268469149 674725182 862628509 133929059 85082635 567304356 977548981 622069360 108358706 248392043 529263335 500785082 561908370 311440855 344147283 478315720 448573744 317189368 3038755 569749362 915850395 422609836 430572682 147555282 456501482 365117838 109155778 442356046 675531449 904533515 527686670 416321937 950321201 479118669 707218360 100017038 602443772 571589457 417237010 400301188 697620565 353890516 257367668 887375092 571480056 712779875 639181636 662914478 295678765 26577224 464285932 294808260 57161406 104532643 112532187 718582932 657159428 445940301 91886223 846048961 625262305 982797809 216090246 626083125 811294389 377943550 461309263 728195878 903423857 119022256 279495287 512252435 167818121 730037508 458159516 517489340 526322174 979593157 441565025 781783603 667536217 824422527 749270637 872575173 748016289 826784396 712404597 789750546 575685234 376865806 70196530 958693119 932268519 782622445 590380390 380129975 846310825 90052566 865502170 94575533 598749410 866275652 529940069 10608543 79632462 722951289 757436636 376103826 546569510 522225785 769804836 834688721 441349684 304701207 499513127 428434416 314483397 688102378 333372886 596063180 887670703 638925140 134063150 441318537 287438415 142722429 613218606 976869011 897199501 960133459 518883808 964689311 734152407 736999311 289149018 322843560 723850019 12526513 288495284 302029299 46765550 389856003 955014161 139608588 873254467 627994517 595347354 204888264 560992169 968200511 910457728 47584579 343504189 799474847 835959298 55176161 213641878 216097825 712539231 297724748 854572770 440594162 140611040 678255996 286393802 162144268 827696858 350563501 759664776 411128110 164194725 805642848 68452056 195517410 526389671 459676773 46959615 836174454 336783941 520127949 306139598 806779143 26839540 406396407 248510873 61112942 303449391 936230276 849942848 570406232 158164855 682177891 151389225 932299063 972200534 360541641 21150784 183482175 225202784 579125551 722551038 589095280 409950766 103527258 272870497 726571925 600496482 365994072 82268652 486425662 82289576 849234302 784703923 921698754 147509168 993332839 414297929 222785347 798000180 47394804 358885064 659236775 987954425 721463126 150724575 305618079 78277062 160834816 659428022 63944100 976388977 396014509 291664133 913486582 166440145 583376737 857461003 439465629 991804361 137386602 217958028 663432040 349196868 237115997 596529112 129208819 625734965 526289683 18834118 908127131 678719379 860078512 772194739 740488072 893012835 729567142 720674951 61737388 581044398 221561765 756533164 139855295 99357320 102820519 938418461 886148161 924205579 559351029 665168213 672186744 549520215 22914840 44398682 283786360 720956569 479126246 925656766 894302745 207848192 215048827 134791831 727526390 408621512 920013114 685502077 709505919 574992695 600191186 504636060 643713246 658534800 236448820 146886051 153763343 283380779 422873246 103509955 697148368 725122142 117807765 430552510 997428906 535709839 429954786 769316315 531180013 439840549 120923036 681130215 746392754 497089941 481301280 413657396 75311833 198679384 885524241 116981672 407325706 413158128 85829466 562483877 927394997 210233577 449763632 83316505 743034642 316867283 981411859 235358586 768287266 107791944 860606145 523332299 13820590 588216300 387664456 402211210 695632966 181639275 444153600 26775757 412686912 410194802 391234434 832218916 543101119 497345216 234064818 69519285 671955880 218814228 984343999 883100445 792801200 245193018 996331802 472765584 845872458 191736580 604998531 808349892 114611643 886894669 693599737 551220980 572558857 473583093 566358989 915564523 903031811 70480617 352722833 229433076 393532227 31102232 88119329 467054822 234620457 791608449 22088098 530944799 699960029 472991776 300551296 825484423 465299535 268371716 118923888 224691336 39283000 506395966 871329135 529096221 595350808 241062120 798011071 271288001 87158070 660995365 268534253 72532349 283084709 783139615 738417100 440020957 56627771 797292806 305351034 339550454 721673113 615036184 620819805 406213228 685549605 791666324 311054879 139871070 186398995 827529415 667052979 926961537 633556826 977169921 978380375 365841414 190191289 391925407 798863759 518508206 38481593 966749183 598872360 968978622 157126570 192955791 738961461 203117573 849616807 333298623 574864914 381418969 38384522 864337672 174519653 626091545 100825603 972410611 354043160 651089449 165065340 289430787 427953506 694703098 41248304 931654092 974533308 144586497 966676766 970387435 577576175 593465659 775009041 688001280 378175488 328474161 679404180 365689013 492620618 585714158 826340871 316465085 273759335 301693451 154802818 222608083 817734200 451128486 398136051 71523769 708227569 46473572 328966409 859183158 263515133 995050611 772240954 780981025 477090079 60862347 557440200 427197265 78529881 700384488 389656764 466271401 979508471 764157010 491299045 311003413 886774669 348145176 220408283 372838788 322343159 498020879 25370878 515944181 624964186 729197205 448211321 589614438 81028898 622484367 555072826 353427683 600042500 808419692 122414072 261889661 803868669 50797095 497617975 958143823 474489166 917854775 789405245 178945404 392763014 976977318 905232664 69588780 882253690 393416451 277846949 880551830 689912898 378021473 478617473 591055343 414839366 930104931 393152020 256156285 884643123 982242602 331412369 591465862 986417659 320700774 217797101 100023393 449472984 835583825 622516203 235204710 431436626 813719972 670648336 298434038 103327542 64872106 537801136 337227647 471021461 105954093 414582242 366153326 592356556 97625989 926979205 856886338 651584129 613130896 643485507 320512379 437679262 18372278 67236490 677044901 135517786 54406371 544455317 641864015 168685873 56326541 134777443 712566549 732259810 566433204 609908922 740261530 864964992 261855711 984198956 678446217 371411548 162796313 497431828 258904720 129598226 853196280 918728846 14259822 99449225 910865312 393390982 871311075 280389096 84751026 656245928 341282490 78337449 933540959 311444081 487903684 372286084 831001947 750762527 165854173 774795649 632397029 129566390 611201510 677011431 877180355 661348879 79166154 307272785 432150852 810551226 985499771 702235028 31166014 973439517 658989298 882958298 717462032 786462047 609838387 455870863 349367710 554435692 683606601 558232162 733548122 141250051 633173058 350259284 744700215 241047455 889697084 644746409 95390645 338455689 118855770 29696746 713852118 60209876 245946564 800846833 473937457 288226903 146475693 977706706 558288083 777187249 188378191 572493306 562341984 859423563 771398890 685480976 912733181 584680020 303797711 86511881 793354582 153460168 523416393 117731617 745236900 932643683 216757686 661925854 921718949 106048688 779831926 151590667 968627612 522629631 944389879 491077564 108733021 810934118 880293288 20384079 261270585 937562057 476635394 984218727 648702737 620177866 733901964 680163823 2844234 754255072 714203596 282457629 109478866 215011395 583709529 608054635 61978403 432376812 293181895 644207520 574212660 954337707 690298556 721341129 500786835 620182028 129677794 639940151 648066635 946724202 507053035 484034950 748831983 986950882 451762064 544064927 816712866 902030689 891908246 925999016 223487240 670446738 921010884 521862170 847117905 952444401 134817009 128874417 154793520 808532410 231863792 945176686 975690983 133488123 971271595 49730208 240724027 633658753 785420806 829802460 434125943 918557410 466559479 182991355 751136119 671131012 758916727 440478242 271372181 948556938 686444424 813536705 79701686 756088294 558061876 966397319 131756878 82606418 80590992 355146356 339417936 832753997 765266611 766280395 50659129 330840094 221163969 198465303 498771728 731836632 581751267 476666670 588571494 836208720 540808778 526862125 348648013 649166888 187558965 87820405 838279782 241096 527251426 886749877 624986071 156574048 985758111 291720417 452689229 146506987 466715320 934947379 117232382 224066340 216692879 43849010 400447916 997845656 111702398 841660584 846234521 226798229 937456630 700487341 733350292 881746483 369937257 268556697 246178804 351737170 116668748 796750610 868350872 549730716 553239078 721085189 467354855 155467136 214881918 558948004 912893645 989763894 157828586 623196014 461977022 689816001 436641280 893800998 995541694 849962468 878753639 88154582 172041297 727711028 376460997 748922073 360458114 33731337 557217231 120992194 938476781 375520128 621315645 139096189 745756589 616052867 884346576 580355379 617501798 1060035 677662296 128656726 506024522 673315510 554161829 207151783 768702992 928335265 333885324 768024615 691937010 821802118 759460342 170034979 484213177 675433274 910532810 325916718 900441010 640784722 814104060 724150312 775164343 337620787 656668548 518818610 171692833 192674559 582067302 117046202 801255641 821538730 871423914 935509877 792304714 887589357 49628519 398775898 180537968 800662853 58864049 536331699 459178183 118681852 881969582 994708746 645054035 903345956 254173832 344181044 802947235 535652242 984778866 771265868 907295950 618531561 965382053 687514550 242053749 739864975 401752930 529652512 992306872 721790646 187779828 852374911 666034508 192826710 189541040 753318156 147773282 45772079 116895470 595524940 719859387 500497863 4180241 144963599 296135325 123756915 339881600 847608421 286428885 961598022 202358705 79550378 400496824 431692581 820527389 592892550 333185577 183526580 732049991 721252323 422164619 119797350 46799033 473544181 214366156 29210997 148901637 28982585 742579045 587858906 872141762 331290995 557459281 174496102 742121624 111350959 991501591 219372709 640604974 921645123 688053957 273390063 902276152 980602822 842870771 853000804 756122223 275100707 765594814 796534511 119133077 426716803 443382988 652410170 797614453 38660952 251604046 343156935 947358433 605957987 622131446 244657613 9397936 496627878 495147268 187599450 638313162 261234029 750866497 759828797 526225686 534369611 481880822 654586634 178559625 205238815 607881983 110290729 736077336 607636748 444442805 449739451 255230410 682820991 199980544 251420596 30334376 937542184 410300753 723081164 939546820 686415370 161333401 483958149 399033399 233546596 904575578 449958690 452520484 239876807 555569308 50914743 136784568 109986306 342221801 309040157 937918240 603513652 442061913 624006640 66720925 471186368 879979659 891322015 890946921 455010132 838354597 898705490 298906581 613016292 963880274 807545609 580816176 334486444 173695180 1141630 427113175 611166768 242952659 439703614 987868456 342645053 940934823 482398361 316847248 536836324 877394460 217347490 526269571 436604292 867709061 335847231 476254327 713566402 198940353 317482773 126288624 27057291 702245175 485038996 122380410 694844431 589009108 330649849 16100007 175817420 497534993 708019263 172763404 948142473 53895145 300921905 411723346 623521614 282234597 599226460 740902178 42502770 36873230 399769117 971428138 901900178 791684096 770526097 296636458 386827921 605170136 673772192 473616096 367507354 548787260 72944637 806299672 606084645 567271513 48693789 175254947 424609769 885565669 376645187 477082973 271192045 262628129 473095029 572324391 408012670 536789968 86598021 645881581 302124846 123438658 71581707 161291164 500200413 956311374 94168934 452661302 875018157 181025361 374636480 905534904 180684552 225842737 915175432 866080559 822655399 57022044 9741047 24168106 818157441 100576714 461223947 739682372 607397855 427234297 999072400 110557987 113339979 979162605 161739411 688086638 581975959 479614262 115105262 544794201 692472037 979327723 934714689 102996763 791746195 507667113 805704949 698815992 551534419 789523863 70391864 426288700 371245844 827755872 846045188 347672120 810819094 825221952 60723225 428674118 600629724 516222192 570597886 285183433 67745843 955307963 999169028 535003176 150276652 391361898 828002886 201642970 458079526 475171673 230317472 383115609 848509895 777111395 220192445 725420067 607654137 417746669 837732621 766646725 700789487 589200871 63814087 312189135 838167593 377762247 131533034 607851486 886072423 687332491 79417921 995116183 563894199 716294585 23056477 451979420 888077676 343364960 162099091 881919143 120249127 253713175 932256005 291593580 970407368 912079099 354778523 883339954 723943035 760963251 744281349 428737602 458772407 807028330 518517949 117865711 43657270 582689244 949634816 424703376 896794109 273326916 203653593 155424267 67152729 151369320 483117591 693971529 660909018 533746582 593421906 276769595 35078498 462631078 722555372 984698331 56897301 727135220 526080012 306284590 154506843 425448809 152594083 943119419 980993003 880427377 693490534 880903959 778994881 115566595 891219675 369120219 406979873 205843358 135765317 297495723 418737044 35641926 614418871 523375021 130620405 518329997 930754824 188792343 755651165 525820548 944080088 844682019 375908399 820467919 82611346 148234513 737751830 790451600 443098212 86659117 90733066 809847161 563327046 57625545 44258375 573723835 138878714 251927359 529532495 347985433 780835078 777216241 134371055 948157399 695640507 931382602 396390460 635865795 224842803 160338876 383283344 434626356 39757899 642702785 465304981 944135690 204783534 71523803 336369454 66351528 633670347 418614933 248980121 114248959 124657114 324677504 316992842 31092867 670441949 580195385 897442314 487023922 845507483 524879712 46735335 43237783 957596324 104157598 707151151 331717819 878555728 466156200 419214467 118291252 15367873 826150456 377253318 114879524 967000029 231465742 595770149 279628848 993188950 437666806 249044498 287078535 169164450 733736130 151110219 848579546 492725764 60318029 784017621 80064366 803063173 181950585 395019513 657905158 311884528 455728428 510537039 185075442 655510498 199956319 957960369 714100998 756134586 462534920 977702212 715009953 614885792 633654570 262325621 480765866 340537733 499712721 1905398 695091855 323841313 141596172 419063238 890250053 343823346 191468280 903427881 45791051 156203843 272202937 207048361 780724649 990047522 364409458 997490970 579440106 708894059 118202460 748111773 437389094 8035515 368030896 263051921 144952060 679835512 78539950 639303842 58827923 397835992 234334117 269104586 994276247 623938003 506467296 986060353 192997182 295979042 526429630 528808842 38579017 698599252 327319712 8007541 832184058 251134393 234934258 531152660 212205602 21239143 916823589 613758402 753153049 516651324 459306418 269770280 151316154 346620902 369872925 170571567 670079853 547709139 630410990 685201160 408615454 153427768 545246907 816672310 42021449 456640792 18905627 705883768 660579301 80171069 779633842 574358494 532439164 161566003 854937130 530114489 265588252 523625559 774276404 439972262 713364058 740000453 303296139 969833100 911483735 404020073 870303218 741648277 924355767 59989486 884628275 595219252 74595497 68072914 631801631 637883945 970109666 122105171 991777424 999279730 577937315 208457848 517993836 741092962 232464046 922758162 717408666 448080778 373587031 214881467 818404876 899743176 771857518 633676240 89090493 509065277 211047764 656726652 517018289 754814553 679439091 436796080 617871086 244921549 332020147 206650912 903469450 333136534 605045132 438518608 454287262 846854138 71528192 461960328 667800399 775708548 999942163 450029270 277761219 216932105 583805776 480854804 768918317 631381668 460292816 85283554 576611273 754893243 756469554 614769576 117905622 952935928 531612829 669361558 762895010 237430352 346914748 142372004 880055937 298980864 878881481 757367189 63383495 175230862 362283135 983052525 158035161 445785538 211626276 781563903 924345890 486706868 497369995 492899810 476553493 285141694 241320452 360925815 19411754 385830276 56045426 834894183 78868711 100456181 587269688 994415392 888287952 856055875 764205384 354801116 610387581 127442664 932592404 472447133 636723590 594458542 593078430 441210407 283151500 464377757 949878888 396110859 836615741 629361419 707979143 709142949 792736326 90487955 377348745 357647121 153403494 795067418 711475345 399986746 928947549 108832717 614812231 278427599 619722743 47587103 968758994 961588297 39136258 292287948 156639473 797470440 536135004 854765786 594253276 546730675 249015016 204763540 224130654 122390396 907441038 486458510 329913280 260919002 880673089 444451494 232052959 891138351 549922811 192009214 876713744 229442211 408611005 628038915 956080962 427191331 173026965 927114600 887805663 191114859 746319760 261654830 458372831 436103928 951659983 919477140 384018108 970965783 833323116 867438633 226715523 648711891 487680664 694389182 81246909 134349831 13596802 595501429 749277570 977418067 592407142 517915052 971654003 692030751 282313095 852312340 727343537 747203738 643768106 202400160 374608365 232602817 652776360 914958731 19063132 193881420 711919447 561586265 875845567 854017484 962558874 335572441 865865817 428481164 790865370 512514332 440954106 628195750 206432911 243950977 735231737 510403066 202137645 475132329 360012338 202813999 509013046 310839938 152838671 266644918 261925435 786266178 938582649 618382795 899483335 754940261 751447274 600928358 552207480 218526122 427967838 321818967 23835375 329950500 991421278 502242090 889053654 638905125 9633015 694215227 265330147 246917449 117471167 85322149 714612169 12471408 313409492 736595541 175586640 243239887 752827612 527912441 651349059 112511442 579083015 956511753 772951919 584892730 479763465 945989828 41459633 148550667 469427232 594926134 10695916 797125775 495783188 303767854 473353482 216228443 757876532 185020994 467527933 497126220 164716118 143591638 372079039 255022726 900137173 45785102 743548755 420372853 449954458 716680669 303464899 676885199 936751124 362129914 535456798 810200973 684732727 896142568 300464005 273454580 163165314 697519339 72954387 761862292 263000061 580631319 213416438 17501501 259579955 284817984 221022819 307296269 979042109 738989578 664202382 830750822 107133368 245264349 506121916 890725368 755172299 723795430 27766075 904660918 55886883 818289699 919277398 785956572 773084918 261462863 32496238 705856492 278220036 152229364 185265379 156365239 966335637 760992098 366441756 345297997 665813619 907002547 945393294 780349963 515627764 251377605 278863029 378195605 569967866 446341696 445094417 70581211 995845867 166766742 464681773 881755405 496632752 568148734 757744537 448996262 415487431 105257083 487677171 622932081 154426409 591497680 777417689 522094196 379218269 844040850 406917881 965330951 121012337 205353496 991788549 812971973 610653180 620180098 250904244 945368977 776157982 583864759 284735948 50213271 660458619 80761960 147091477 159925068 417919297 658680591 669626723 814372974 582862375 608145642 864509325 634029056 766533228 643434755 110330745 440978257 434018516 26221353 376191502 574505199 876666032 240991474 51310403 727028667 285470934 513360580 326010637 665274838 672524451 661198019 129622640 244750769 726131451 609598944 692619383 860561147 438365008 638379220 909209908 798426548 476375193 540157215 364612803 61453087 464732753 531129865 107305536 695496390 188323198 682940323 831008990 225906050 106411441 874396610 247958728 72169581 154443774 207187722 448103997 524819947 179156487 915985378 281443964 729609895 655641836 326724988 844060371 28882069 439936609 872898766 661706639 653764597 363681691 592117656 674714895 791338057 281024085 449915234 270866611 268738909 458584536 724542080 103594469 347622466 810614770 641475847 714832153 765840988 376289784 6496214 982516934 113523787 808818123 675263384 994319474 800982777 832509135 15700924 83790244 785930396 178451699 974285180 213022962 674841523 856604589 988449492 511904501 643035647 911989496 435148691 843625293 447248268 586324066 976033347 511400869 266264497 761356275 205389119 468927663 609338888 133335362 813803430 274804009 149295478 879301744 920126051 860452047 103047463 40381728 344005922 73094000 585123728 807953794 984061279 413873631 560636780 91168591 531125078 402982642 139532481 800986815 830743319 704920717 569796056 486985116 725864811 826295964 555398730 387699252 664657642 136197135 124436465 553621598 699313402 23658466 316634606 231363190 784112319 268971029 37826482 595623524 9285163 996328629 785480176 239930517 934125813 851674322 971378082 172208385 858752926 1645960 607479569 183303205 467599470 970987257 699957442 641195014 134007413 771749197 161050768 17148214 512696973 396080568 501478036 928947656 882224211 547149684 805345845 194928733 524923698 138386116 359701786 548303126 756942681 260573683 324259901 868646057 239833792 353820751 451028183 154220868 862319657 598477111 387800938 549174188 179448859 23262986 684650184 81240098 580663782 476954676 69827843 256574328 976051363 197081128 636076663 307364868 537840688 20072543 67399366 193438370 172554808 866836314 468668895 494205883 344394538 879845286 661979380 411840058 539293504 198744789 432350085 455847065 264850808 186843774 196045396 284897234 874607260 977776966 677853292 761379951 925488698 680557014 441333795 19427709 646089133 830396899 74195476 512037265 270287634 266854690 873277476 671776202 453696597 744856666 794856577 686332111 537573411 434181717 996785818 873168847 987918069 280543459 683938355 782597500 476456973 873472990 560178760 401311003 628815473 571865130 828244523 608474476 595090931 975666352 379958382 516798400 614505003 968639333 803586030 403236076 700589433 619853886 413510351 149843026 137368068 104810050 439468925 235886292 948652222 654814843 26589612 873422819 647605854 649647352 159515995 18564210 973924453 863897047 765732297 711503875 718715421 465738806 113568391 187884441 93538192 384485698 226960486 48407236 486729375 505368879 15987845 765532827 226819043 253110835 181178694 631080122 20809673 294349715 700010326 945377355 509778814 463708825 474975402 214952694 461604860 186043799 139454335 220561398 134673154 382509286 640395606 949157643 675527194 579317226 366923775 775186807 317929874 300827151 448861834 59056905 68201350 205723585 707534425 162741017 444358866 739035009 274406923 977503618 735156768 275080397 782642831 728640943 501831906 556606257 994039831 380705674 342081614 451481918 427757857 950028940 918846053 360649105 58086257 417811636 656287980 551689673 892986130 513481092 140317307 67751824 93449052 121542415 74391907 856604061 724488681 762731750 286876358 273703590 410533275 103095085 8843662 36212335 255995809 122477958 536749931 343150784 148569710 50449953 35644373 333457007 112757439 15888565 682178827 303318098 566536344 208622461 348673300 389484623 412954692 104278083 633785540 148157004 146359642 894573396 530528434 785634625 839991733 793473157 691844159 41627684 685982841 425389110 936682128 264637689 793649424 129679948 838458776 251535304 459585075 638974774 352504590 174926246 108770521 48693995 16870260 288801708 800983883 189165542 722175249 767550973 290910227 183839283 693537525 312551617 527929604 742933595 640398840 622371117 932353085 278355060 366714301 694110331 312927009 775328033 891326887 165637354 109424988 249186948 724756971 698750665 989615074 962058061 481229438 549960551 761026033 761119155 875988517 316866078 209400843 411339890 432480099 683352403 860476157 136695251 121383305 702076782 438616283 477257377 685632434 77584355 30786051 480177973 673471420 640822825 187236886 417695850 103003474 315839174 466659588 158557357 526379745 742034498 563984895 94353637 555666083 373259313 390337156 313000331 323963286 75170859 267001687 821771676 124304519 521427155 818107778 408720290 780406530 731858132 564953951 944063145 145788512 494472672 532861829 929938757 512298691 959316401 825212888 903733398 720716817 702957832 137153673 844429125 430747900 591740083 358216969 66372221 102248955 235610754 167386389 473295602 290090575 599002702 434680238 206313961 353405185 567077115 31234087 633074723 547786206 567104369 889269006 684189423 305063554 326333863 322547522 286910245 977172813 528704912 474158312 770997795 370890853 258178612 839030379 195498700 440195771 753303711 38864767 922438803 746742024 824056028 268421153 802245228 340113101 759290122 208712085 313528277 431147855 118142026 13774694 852014036 106712224 116837833 311726186 664420856 664953499 528996789 915357629 978449751 620356572 935276617 465199555 564683663 691907277 26677450 64015656 92931014 185594014 58632833 279498720 696071596 700709962 715616702 138516008 695839348 459851148 310426847 501307270 8292321 496260081 462980931 600839618 383396149 313172422 967372886 729403891 25415232 940825382 49656458 187414900 993801304 299913454 38217818 86750955 967748956 599284170 348066119 628002114 973212336 76497192 657443035 552964784 9672261 858124864 528986026 515600815 146749839 335377171 137814605 581858820 314828430 236770664 339934309 754745787 662551238 657368530 669507487 712567336 22437448 102790823 917694123 550727913 658584235 689459462 66256965 626685662 603203080 370985437 190831148 936838971 437966858 632398548 890752558 507552362 609713374 302038378 79232797 867566897 58158139 908575709 7438291 105556878 890885724 596886068 612806703 542215633 777402122 918826305 618661919 520479115 804299922 573235098 421975698 591873688 31467725 497466530 392496263 44843040 854470678 53304705 158935035 36452236 127458903 902237734 851065594 507968402 605452281 712725064 946470554 224375599 177643764 646154859 622376433 844641956 579362763 485992148 945462048 918418051 334084221 777554580 943168086 226901657 715072925 929040516 835908291 97532164 339121984 439532100 749434784 386101038 986479621 747132221 728613680 299863228 880292881 799555485 45871553 972341417 613366803 521528668 762228895 423244842 837027905 433856318 822492967 27668424 354932568 132704713 235059645 744218193 167147936 241084493 756197063 729882579 490002920 566420451 302164924 972454063 70393989 866509928 466317842 732168839 245310037 941536139 573777488 167546696 297153469 338232246 218150653 703200296 109460910 201513764 199351211 834078370 418956956 248619735 180905974 391332217 994044294 369630098 753954430 484795 677621492 534026472 502315504 123403706 269787122 774931508 356783613 36924437 903551769 263449490 723323998 616784559 691846531 821117678 82094041 752221619 400061912 168600308 588644659 554090646 880986440 349896737 795848256 642928919 125984904 451695026 64748767 817095223 981497046 33842863 397038571 605269826 113834235 196384491 878913618 68142799 885982783 952190971 585821191 232166326 880025980 742159426 667172098 104037409 159834643 740297702 273336392 831381113 745999591 484457432 259384545 491193457 936782692 17861331 57500382 606666246 7852679 167345747 619728479 486679678 970446278 461641635 281908863 888438116 279493678 532921553 274027116 595163534 204894026 708015030 719186010 968574998 431070259 238535413 717760639 855877472 548687490 988938994 432070176 311377947 416663907 528165600 761472647 999619127 193094273 136777657 688763910 538285045 718520082 721804598 801648374 156828885 79729366 30619368 196278460 549552292 682841365 99563803 7452352 833403002 92406680 298169318 735633781 863816624 462011832 633334829 903695189 470760172 314237269 89776275 858183139 420024600 581321169 67398285 102771878 644582506 363709727 563594579 187666484 500877148 204795056 269010656 851484969 644413879 723886216 803275011 417177376 129489795 514977323 4797513 858059211 36645396 69411749 578764042 499220441 286882056 347898510 303217766 326821379 829553989 979687685 159998281 469446154 330346995 838501041 570626911 174095295 507822984 701244348 989426720 796540909 32617154 65350625 216627150 647484786 591712676 359714138 919340658 949256239 81919611 211206640 56535772 685732879 548118234 665617394 281223586 202060804 618955420 929145652 127929896 569167625 925590760 494698007 220728211 489665308 313133355 186789502 944190420 315414607 530633749 771561691 724624546 975178157 320533670 775061791 647808642 518891604 460998433 346414540 859453879 166242918 524204561 486603496 940885845 48177677 208292684 63809281 364696625 731421304 75865838 886235180 923851757 257781478 78905946 809600264 339572720 164834713 211832126 996509119 37394028 145052887 946381967 344799481 816469339 253032438 735256965 226904302 62655352 276581455 481813161 312208479 158059344 714496069 645753539 269146512 330739248 862022720 672305643 667908431 413655347 313436084 520614011 415675380 319514166 679893023 718087192 803329628 578238692 909555707 513760431 622011630 469069740 573347800 336989555 447301782 666424519 722575174 26765792 157248974 981974837 31577059 362020029 385384850 184713148 37857356 52758290 935352937 836468209 680975662 993729334 2415967 927928104 918476346 84866501 455844108 819133317 521595181 273940131 357197966 796432107 881597126 555641853 661681295 624080910 722222546 35327301 804302902 684425575 811046944 737392696 84888127 248544820 682175374 228164573 190014436 970576254 960630525 105130364 162073584 530606358 557885781 682558383 541680558 390686354 37421192 840777034 340085748 320513111 627612309 581397625 252698147 178246279 440738427 104296357 362006815 988476951 431142212 528496259 101854806 199592380 872340226 66183948 707091136 379590393 481177555 546522251 815788505 627855124 481793749 340803717 382047403 329698849 550081331 522188243 141150911 989630962 852930847 434531215 745043759 175567660 313964758 931966493 866225560 337672246 693203862 402509866 656776992 346955331 794083503 153682860 679908214 502608967 842146927 456636127 500868048 760480258 526916398 530764611 586549231 684889342 969001557 13629096 637821714 172182414 201493321 854585890 136003343 553311687 300140670 805482253 392846649 960395400 388059758 136986637 335355245 583777404 398847645 71185932 320755475 737189650 125532818 670146373 132890137 95973253 546305248 176632875 635769842 53556174 377800741 604739721 18965154 347698622 650298366 805999720 656480172 525877728 341453848 667515681 650651936 694429326 106266919 251736649 60043411 104647912 767754720 140773576 504847907 955687894 256153099 732212173 928423285 977791240 748740460 385340359 973546169 208819703 938082013 585607029 417258406 736504547 974496562 181039837 799282297 795019219 622226000 258291782 351624440 867480984 305610272 711003976 538595187 955263178 788923286 819677632 799196092 341029581 913638827 301136082 243557430 439565508 111029344 521634793 79068871 573548192 802050497 226456503 244681179 104408604 206449376 759666492 750277481 747407289 463579353 171983547 464488942 539267002 168580554 91625664 789648242 741714226 520477665 812635936 924247684 829230845 850607695 826930679 986979129 986978484 349567565 245652647 557368367 102118855 760329759 485341408 265152394 240374367 365805071 625186706 240241149 675401848 541811566 114594814 870058429 694388434 630083990 149010087 768043908 231055351 917375725 575816278 763134367 348383540 818981851 485425955 338606294 968693154 971951054 43666279 478607237 750891811 622501448 679746248 550264964 567902557 369756615 448074036 86232638 464635073 538921682 872802780 719038880 754364808 946033411 420841535 176592673 991183538 731432942 214637854 561111485 919854856 684144184 572849033 174106618 323131416 636034698 143698387 922431723 936266556 568955032 986607253 842716449 777585300 654334490 433993142 474003900 473402888 118598612 292507493 129381730 65485384 397091472 53120274 415840581 545123276 217200161 608517243 286011925 464801238 790168158 869285026 797313300 590925678 455056940 147076824 379355910 893341282 698878581 49608108 743909182 770241098 997403946 328402430 476628108 621450123 981018183 163743730 710271572 564397640 349162701 115698163 221388665 733994868 776782790 565396917 994769257 584690118 679192902 60781874 596587802 195506367 817743719 245979060 765901836 343749544 310677833 154328773 783687493 509146766 156384279 798381366 769508435 908849486 466828292 572460582 793028170 82804356 723563341 62568443 131893452 478766748 608639278 358419292 48851708 556321989 885751543 650243651 410648204 906149364 818760436 551394536 436866222 69367277 144647047 766294738 16059172 258574391 850161677 684288461 813458226 720938273 538755570 387465962 73190566 25045191 727284649 551815049 433759961 312717317 471325609 255479885 501082021 524164996 999491447 665136162 372105331 983992504 466984093 752854844 140802353 587504855 312455597 884902427 132997973 230149086 809884992 783003773 417113820 827018137 434695931 2428528 503798609 28518040 446635655 169077067 306824381 708524851 431661202 644803241 26237110 996161672 567556575 961608047 115069278 232761731 652473897 507759814 964999769 884630993 918689084 936214821 98059734 146885868 844814316 914643785 247251340 403790100 25785107 479146803 947272118 257917520 282086544 896872755 377521183 499171698 490610768 931397849 898230032 953705746 14377286 83786245 948007012 359196304 225010797 944661978 422500473 246480149 235803074 790437828 37935920 454112399 847217492 855350905 993332988 772595895 225670197 75370226 125936082 817600014 399662973 889735031 101522992 136002781 228718927 384109199 794346527 765679155 410582998 60233235 712627752 579651305 862656580 859291678 642084964 782384798 364042195 190224404 727193459 82619579 167853765 865185 586472313 136513393 397049701 462226361 586383650 654166198 556908805 689572760 716687531 365955407 589655806 968640964 170887882 269479358 656325047 204708105 620703693 767015766 335848339 778991483 161190527 937968947 445623816 970606451 933175604 735675695 852966034 62752411 258012364 900715767 718389169 374883545 857774510 805624054 506354671 987793254 969725130 45473130 581216479 759539133 615946898 558736721 713171482 913686177 408966151 420117874 421763140 560048416 567793071 965396320 961709065 562509708 311722133 294458992 534667030 540802181 82684757 593665733 40643881 713511917 289604873 394692676 219132164 58955246 927293017 157342114 705169265 128366081 129149040 916366163 949137985 644581340 69127178 708999321 346510159 271808650 842992738 466272380 974817148 826181458 931914815 793515212 324171190 586143436 77662956 845887267 472352237 4063189 622572869 471064031 224916504 969105546 284578468 152669993 544934720 794169184 443610608 377452528 519813226 56913414 26670744 942595312 196036522 543330936 904501650 459294631 861010714 772744703 590126687 107982170 78868444 481589794 211816958 727872543 862965021 809979832 897614340 930451914 404836107 771482590 943061895 846035710 864614370 707506423 573158944 647643680 96278244 619560365 678450426 347240037 52922716 359034360 934759361 299919042 140818844 771176978 75102636 699093751 342219263 147647872 136701050 787743372 686448615 902391311 109346160 391338965 576181946 595746002 116264030 337129703 659234547 642561319 456101017 826819745 120293122 667020206 594782717 318895535 919466611 945092952 908772340 990694270 427029193 354899542 713328235 724559688 81928345 249473833 262997718 154373389 228534396 949833103 697925944 84961428 841905686 877020057 107631890 246542449 556625171 854286998 232756854 144354038 996236321 325161000 282489595 54357833 634203133 953986355 8908986 850109521 7926375 774386398 188383071 948314555 905438508 756829602 718836501 825830658 45439772 767916091 570931601 610550886 398194451 53708456 103023381 587633649 587082992 473732925 41470823 282342511 503172259 350937481 80662736 829291131 676822297 670146411 794394925 450392948 990571854 959306754 26103001 143214726 683609413 668357314 299766201 995730332 94450440 638410331 889359935 185755761 934625193 870874057 46149212 675026820 307479105 197121360 798204562 856535328 271925493 865052542 703862504 132345426 387906026 591790119 738584554 828120052 606425176 612566886 144581553 158374823 388006777 177683616 258525910 625740497 979633548 100500355 434426757 268276642 34111708 411758335 573239400 153177108 363196093 828082260 940883897 630105833 191288455 270295044 710716467 377355429 641265823 894549725 507659293 994587291 587537772 31425778 637823558 342810082 440812643 192052897 976747781 32123483 267596541 803573643 901274932 992337838 488102843 306938271 466182977 77629516 163326762 330218513 386968083 844845676 117293275 966304347 59323940 53946641 46463590 445096772 470852209 674625791 876957811 391804886 52938113 908830150 221813157 407523945 65934432 134609604 290055605 367467927 366945704 657187860 586411607 999655232 304475253 827921827 36209234 721268630 831581036 567535131 177401966 983261708 398791102 47095800 539499648 654197342 125667361 284505724 885705311 56921489 47926736 764300460 682537196 229709039 868216213 126361689 613660438 559615756 980929725 858380570 34406606 187048137 932819997 989252436 835469834 486757444 691215125 162060586 932067794 658569709 612154506 681075598 903665452 68542327 110996971 546548027 499424302 937362657 451662893 10361260 870637806 934917483 319975121 844681774 574865043 277561506 156454107 208660174 76825666 512409949 526885336 774746983 527824433 761835190 404126434 866014359 992662680 956045075 721837973 16802502 611579579 88010015 135553815 324104998 460622821 968136398 202438422 523189424 757514340 963401821 805108426 405044512 203863703 699073358 251461104 563992581 742492126 69393779 606799313 763845032 798136741 835391450 108467253 839170086 335968347 456904162 803385976 754043998 91491452 353436206 192563831 810434807 84337036 945065388 866773396 215910755 532479251 369968785 600314821 721408218 476484517 664281943 525734008 476504410 913452505 204922819 484063666 708289710 223710549 708865503 981808374 899054950 373854144 476637442 544673363 120635867 167793614 733128906 695828830 511946539 102578235 100754967 58048567 724203580 329202374 676944920 320817795 829365956 747328315 114298689 562230385 172686393 436273261 73824845 277095862 32732888 734719794 990374720 460158612 259040943 204222323 875351145 978279629 694801546 431612692 662374233 975541425 750024963 753363722 229956078 571005973 757283195 615106640 409387853 730215768 176600343 93038825 414102750 794260579 363333067 524771035 255338332 297859998 535340363 242973500 459301823 408605959 941738524 966130981 238049867 367318294 51799682 650445497 948756366 774424020 467202451 707617824 429181786 464232911 572008992 16010894 57287118 439533852 889167823 75945790 342655565 593109083 879432709 583649907 25145475 354112945 283913972 760503413 398256997 533375438 58572947 734821013 719375919 769803495 315317667 687956017 252237155 1470904 93216940 281470375 786646481 501720715 723815678 777928549 613928842 524688940 620977586 141180637 27108076 209567989 734473385 851030407 417792411 768141759 504030600 108842471 428161925 664011505 262476994 175266437 228104667 121060733 62919311 760858871 324664345 161875414 739789295 769690834 14177542 270321403 840663976 154163903 898151854 549841266 805812047 386050915 618298981 872569932 562939449 727503984 326198214 109703709 113048711 295778726 440247223 291186176 895210526 380388800 966205025 261409955 871787956 871129486 259894075 463033133 12752830 178985694 976003072 251343959 411564415 450575758 287231417 216179039 267072507 577886334 103604651 289789708 371366661 195309209 567431789 25214124 773434418 194292175 947829981 16360724 332407273 146972191 544966941 198397861 407869514 542954116 698420634 473257794 622565965 807857169 936370696 603226460 676156581 392373459 906872935 572357863 484485330 34592994 699719669 599831394 963700768 475424615 645179456 160680916 929377438 353548166 592080928 40526796 887001123 465303926 813706927 668463199 119594830 221384559 149076560 621077289 921766538 336466098 624898992 722430804 528834313 371243146 887576260 698426508 919031230 866035021 428072390 939936264 867632237 511036241 544579646 465104775 22979226 240469494 66450422 260325966 985093789 137050287 100847107 796364332 15794311 475656164 895014334 692325497 612421946 17656855 995288017 893469455 608382817 548045510 699405603 935702870 523528297 357183870 330230250 592622396 475102092 757870799 122577061 243151931 643190475 21437268 319586068 540743757 751412202 146750640 717146950 941491960 759729534 467923597 930668687 31922254 371355103 953232797 318406794 237560802 416973867 76276376 304650269 576210386 334680394 981568836 103321712 298518473 455887087 32305515 85046782 318168046 899695246 741635035 231431551 26193917 572570733 417758067 746927350 543761970 232736399 807498770 228670643 645621330 568413126 332960676 948666952 25134256 949645994 228981532 92056467 161635100 869090462 191587187 878085045 575289849 579705545 830033066 577175069 513221418 587514646 207528655 937839486 615906592 378021189 538566383 735017172 454507472 55121875 381629481 374916711 935034809 720248070 793688732 48977085 126415583 810047987 714104436 573538222 75139027 704479084 715823844 583429462 737191080 213618454 180596516 960813851 425820159 698529371 177813369 7004324 574915582 296310629 507803179 35890410 2165587 681963568 702077581 911900456 842517044 194059644 20819961 595443170 449833823 211124690 961834193 502002146 733671194 34613378 978068351 946245440 378862133 423583395 38638966 616235609 63785733 973457940 875064880 442422477 298294374 421873281 18427440 563970185 206550210 635796057 356182016 100199107 175289606 326050768 487148848 408937720 442909608 25426924 208394590 197480938 533732262 417523572 255112490 918503591 520258950 422655991 623920448 404095873 903347289 291010252 927139151 328144150 317834416 962770455 620952340 333198154 395059629 305056700 61066577 610406986 329269238 358731374 163102925 989670280 283592888 503156389 895339870 479549124 543204012 493644193 61692127 234797310 465199373 242374763 489426478 15174532 360266402 233417425 735081017 237467373 813996218 752037482 120795376 486766608 23643181 10976669 950821457 472788245 867084372 729840780 836963673 802044518 494483994 875344426 731690773 676254139 762158317 925921583 147055508 945369357 773553600 940792089 697574646 337215391 977400340 18952501 654085722 199329025 940260080 613938060 885687533 826123268 255634398 736924671 214398172 796601798 871311866 98594086 591877733 26738348 567157471 225071985 862650057 731962721 844741041 546308619 325296978 267401176 119309347 956500461 961891924 73545297 726085479 992670935 714417193 469868109 905335103 606728787 239601201 236338584 376984302 846227118 563353559 347736904 769587781 777101830 522932111 798040763 931414169 513275702 569526225 114697872 148649926 646269672 902091810 782416313 696425270 233030798 434665480 660628068 255776983 129182559 213784090 198849298 850512412 625967448 806652145 395091334 15858951 712285253 338296365 951445455 726255388 348286135 745921403 510166330 676733545 405781251 86804874 471672683 889878662 332448330 595351319 88812352 600568209 757479286 407457251 959821802 590118700 279980086 464645561 647312861 409065357 554636292 583140715 820009937 513663586 407140126 756240339 230720462 773200368 493760909 268575443 900211742 433729018 711283744 892180054 272029273 284581582 336523634 575885646 37873750 443776068 908963555 860023989 440326975 163434168 269267352 798090893 247025787 432224789 933308292 190708448 836620992 374089922 747155550 576868035 952465162 25876666 608674985 357864781 112053664 709827194 312917672 10284705 281215245 190595081 57304945 139565802 56458531 429106165 433583577 835579739 941052414 857662037 646309760 141996331 397666055 894464453 662821327 165853857 937848294 158124650 574463222 475786242 190454160 837407481 829720302 584544933 955332930 551672738 305491065 928921057 559116161 194977060 599910426 757565465 233822486 497936841 129865508 357257654 59486233 421505117 279452851 282272814 330438373 475968818 53996704 580207867 794759965 715117871 36912282 132869274 558197423 72096946 800158989 917820827 934438605 985944238 124134450 587797388 683206903 902939547 674965259 596574731 740608492 761221745 953040479 950175160 71459005 819786680 742039486 160996157 193551804 251381378 395603073 156831821 773193095 281473381 981034694 581822626 956560382 545121146 561093241 194999039 171373906 509236075 114256457 536476717 345933046 563715175 574232235 74881022 283000998 732255010 671221987 256981071 151820133 354478300 554296312 672697343 951171200 227051098 172485051 646491642 407936653 854076651 671098306 50829362 893979748 618571621 101585521 666350755 210641454 191235366 983124461 751658570 310348884 118132500 996570406 409526838 694255756 159977631 905749720 642488952 487337682 914767035 405611137 182916906 175051371 322810600 511353703 282709872 795359969 973569578 759415197 604313201 261370633 371092498 561362171 539983969 451711999 550789046 110165025 293819770 889319464 239035059 813698933 148569343 502101554 560180271 928612906 610849849 587613711 774544854 69732155 557508476 859734522 472156901 30992992 81529121 779502461 542923541 431897384 439093385 350319709 427475373 303536098 384964384 802275248 446074 297757351 382546777 905934038 553041623 245570642 856864683 973808753 483407518 283096978 207130012 588874092 764793143 59247572 824840373 483950590 606383249 543110737 711654791 827670177 784925727 82164999 432606380 272727835 661136352 164523456 261119946 581302132 957903710 409846030 853449863 769581319 194713764 398776646 669486489 293499243 490094411 936200587 19268021 656149894 661550956 213487813 757687459 564045957 195783858 799279265 127399976 168656090 690341192 641329819 940981019 829242178 745316073 649357041 857864274 969511876 18919374 512879021 807765428 847659690 436086208 226211228 21142310 886937480 302278926 415330139 564608928 687383611 868630925 95910470 549269015 260876262 769882010 99101066 318651024 743645686 239135005 941475602 407540501 253363491 485676163 889451673 351413430 435723875 999724484 960017567 857232017 343112700 334058844 38942060 916223686 249707645 313091413 390162449 233557889 700776886 416800312 453099364 904858608 51388872 716295713 226712329 908500818 879244821 210111912 907113061 480907751 410305606 678486264 552517545 390621688 476802390 620350143 793938125 548770523 519310461 412272431 923210387 848525288 783628862 818113291 964830081 249177984 253984107 450531480 829848296 472610833 553951249 786138275 750893026 260125448 790221456 43758978 856223823 963557349 671729294 564421143 536870355 154895655 955534836 532134596 942390498 878847319 90891767 721803385 704273845 123079176 82214932 517214123 607734090 754877143 760406286 314958171 567252587 666897508 428201972 656569869 920827044 952329051 436735256 143303886 149661524 572710251 352023830 702670904 979017367 425187409 849051605 292306278 61854807 976107213 175986044 139544320 107992897 863106477 891345284 80796724 716415441 530905790 17361320 961419193 139344710 133014494 661745388 637275338 220025000 501692401 129773724 399136304 505165766 740795868 177719116 684231482 791707707 998098324 541344729 168300733 316325478 750893845 917435495 167104535 978911855 522923868 172594530 148090412 920673092 766482299 357617790 161610865 190626723 56015228 668120504 498513364 959842054 271057791 442688596 819576795 906012859 11350693 417619935 321733511 471235277 777981463 445443373 70002790 630639895 814672391 290376537 477944210 156292153 973992112 348988614 338604199 986266 400657750 387409957 910217931 872336749 313846593 358685540 706080172 228912040 634462403 46383302 659432066 500121356 447577656 688898506 321252107 621509409 803336448 991978559 64218763 59357751 177997448 79996728 723419347 279438438 54490946 830332947 992474423 11693200 515831207 45101938 754506134 363589979 909502774 754019906 357480792 660998712 796456833 355370169 264880232 900277858 734798099 243440462 228041793 203038164 708820104 54450125 499512541 397661274 137596295 426787900 260091329 384362117 773598132 54599667 273192704 310413483 151791556 825437322 656210991 53134829 583698546 180675818 441180008 99905841 900505472 583751229 980723286 266502699 40079543 886198519 929772838 627787856 803221226 788761045 651371407 576399330 467300594 641145562 935068108 416522986 312480949 198986836 268670377 431469625 600429593 96412633 8410479 244864098 333297168 592502079 607840500 455237325 65268632 194189231 923000475 7718042 431465651 337041556 964441159 608375744 622272870 690160803 126103141 357472242 522836683 320307417 434780399 622880695 59108852 872597879 302199391 560039759 504146699 79678730 440855230 805145553 103768117 898516842 412217501 591826449 722599 836014768 349907468 970538929 586083224 781668928 795677100 931428377 713285452 676572104 303417764 419703162 118020624 780379709 844600994 411800523 289820978 453682391 162325724 306096077 654926864 289636382 265055507 445648904 6984458 945285852 240280455 428511181 278981258 701558568 559929610 356252210 386190338 906881373 289206770 776123162 521491695 830406430 705399071 902830636 486584785 2417752 29939445 175230425 116944689 327985217 284135011 578137687 331974821 601300050 272756701 499034281 403368386 404189523 400178277 728228756 260690224 668269644 1369215 972508333 419111831 204118421 188422459 840648009 347815081 396807111 277176109 924005768 246938143 289410249 911001970 281534291 777018045 83064007 620529333 875747162 352334667 39169842 883443745 435547159 25220510 212434378 187448431 958722249 893654927 967133075 159077593 314331255 307952641 308224470 130054185 201598195 447258589 335387949 626940329 81838546 874489111 289473132 451899957 532437370 819402151 193501120 924462374 783034383 873874576 389599631 372018535 176259203 193815773 252958608 223324769 771971980 342654113 692693439 430184719 559085229 181463538 690505568 683188973 333631276 96908792 281883134 799453440 277283612 533380059 375534192 76480218 921966162 759724492 243380689 425676172 455323504 907111430 955880066 991724218 713764065 132709837 370895156 477780358 559349710 208419432 891361242 850145186 198473527 380150827 663381681 342900800 161055959 266665840 674137401 916192032 742136375 116575642 873897795 222893962 510860714 925344275 707288032 247139659 637173575 468302155 602322543 397267383 350010349 270912448 131014035 652740270 107618373 154903281 622989367 854805401 434112446 954862699 159127187 464579170 99995028 415552703 31604511 662846082 326915525 413524101 711775647 218010615 716639255 386881890 479148066 61264453 757319453 237007619 989648383 613399930 346366255 70436370 648101067 221088560 631127916 23595345 106106223 695628677 788050111 542087807 517093655 281425949 450218197 832054630 509848117 678841125 117932838 764773595 638607753 564926549 331995126 717033907 424252179 428929517 356456267 157364180 511536928 660774831 280799733 728493865 524393288 476602349 420862091 967718563 674264418 38865021 306054257 892231483 945322136 952935866 548008141 13330164 887497811 641368974 865320845 254202330 108604228 844446823 596589 930477823 171101295 792650809 746462189 351704953 125416977 960824706 715128914 986689903 726751931 684480074 284059312 375239946 243002431 172029726 53709277 636249466 585625272 848376342 717876089 737820671 331657101 387460561 311449327 230975701 860531819 72643698 300202602 870218823 187043907 787471017 776018409 699544491 968379472 592905898 929390118 919757912 898066717 43274552 17669039 858331315 820411760 440417943 256297937 418522402 573611873 401630099 979098019 474325276 481478473 445763715 84379399 737175577 758850255 558904393 173458852 846413467 612999647 472804166 486119407 427292461 886856618 537779818 272800793 59744 655246769 798701614 368297767 28630224 628584116 954608014 937519585 4903967 932821955 108205330 444498388 11500021 425811248 249178565 191421533 714275846 958646167 752914494 436829592 250256908 356647645 177888159 479534448 97850058 259267886 635786379 178727061 310869259 952615424 504479790 13640573 857188511 697853708 479523141 535082859 241157982 932236120 77870854 645981031 610762801 184743986 684224062 498611519 63201278 49798698 967368248 953010827 350603960 870664737 531698636 681732015 815276121 379189816 915503190 656598736 125434851 561497821 238651583 627028704 420272737 467683266 226238578 494817431 345682917 65861348 377788521 674790773 189676680 47107978 921878559 649867969 675504494 433435454 702635676 502705803 924618177 369753301 718474093 267049135 952407475 62870888 390778792 399794120 995829628 682586977 664753902 116314181 156843107 25842023 649698405 696408912 115739055 876667761 483469238 749218277 381835186 801214906 58757663 751038913 39935176 11573192 547196759 947614831 769903186 888872294 952496296 221250110 159503803 1770921 92083683 62163271 280869237 83386858 787282518 955000424 124717050 704712405 670683624 280140364 806450892 122157900 870017019 8856165 944293751 50052491 761215100 587549158 423814282 487501324 386153700 675864274 13136547 877914770 56273713 690963187 726456161 448560427 210821862 469800660 12320367 580324139 898213398 916622547 71553152 154427946 558156885 65503756 180314191 77457684 332662720 254578026 336233374 691740944 317500417 223890589 188771894 457282195 50684739 490971933 779125480 379418714 770600762 874321192 418698386 237483112 790462507 858699465 937052438 624407309 454121431 483026127 550825563 235352534 443679885 282094035 682020180 374693545 559089700 893386549 261918460 420631712 904248059 869164060 649428313 606342446 226665718 209799802 922419823 371212039 332337798 591106567 831616851 723278117 418061731 64212290 469754655 386115533 500466372 128337525 261664244 967024521 677940725 453213359 821596671 486681651 604501443 758612169 305278065 462603744 174775874 404669539 836136069 146135546 334635029 698516195 359514747 805001258 379325790 994954365 307518111 634140006 407546063 934456614 318812738 974189291 847636121 562138531 603351744 340699963 162534270 211206262 398318202 613547301 754682308 108287730 41705949 101939897 633189945 168590899 484842582 247013462 320589619 207788562 901578083 445906337 389745552 310323263 601881988 34401922 709618614 608544035 131464009 656160820 19815572 40295674 870456892 419948590 238526624 101506757 25702908 231778104 179032282 292978506 360633130 552268891 173583301 740837405 636753008 122644971 100372081 59864209 690938243 149239431 581062003 815074504 145756698 279861266 413226987 460346540 806334712 634421945 520946815 943289583 434119400 986266094 859404381 637535747 574169020 64361839 558859835 319686956 173976911 640683585 345269588 99398516 646833795 47830445 960025716 277539496 573245503 571490379 373356265 63234147 243499641 805441783 292893572 142579970 438506282 605200849 675611047 636883633 486786388 160110923 932226104 892652636 904075267 879544596 732746404 40619201 805674311 523855659 62395874 164716378 591164732 423298772 488486768 486553971 199656707 448475549 772239959 877030683 983553478 486231638 407123489 982433323 309600697 510374432 192026084 828798787 930066 131144029 479100738 876717770 463880986 925878457 644708193 727279600 415621398 916484134 588157421 856261042 492848475 490459109 378185245 113096650 836210241 717580662 525947311 365898181 691968298 751058088 824515049 397348336 588668292 969873553 561544344 781658726 916834238 135352968 936846615 994814981 767153748 929058100 913782081 71585654 984298695 607272323 419242619 641038890 206865056 922997669 143526071 182484313 387026037 787195930 816246118 978763520 191058143 824557220 756237962 955871981 181159293 576115539 491609002 107392940 16758269 383337333 284803283 617407382 707607310 174877357 255702937 95717324 164295023 198356952 983499295 602132280 885250781 666787368 941628420 976834439 584519460 577674768 52725119 800742963 517190425 72425548 126721601 617151867 670200722 149575902 811918985 225445224 521292406 865431574 432916508 672888522 591691181 204615559 918565197 394856506 997709863 615510796 190822380 148053273 333511904 976047049 42379354 665467022 292556763 824863533 98918528 673226889 942354209 901541353 484213448 78483649 270249925 303175419 297850157 346075577 587020514 730474150 894472230 387985337 387510936 416030585 996809153 966373838 793182485 173237572 392562823 770460373 776756614 109031976 824598670 201304171 699977002 521799046 599245434 298095609 653471808 703840525 488932972 428756911 709117719 576988076 327498515 900059013 645157626 852560038 952371878 599816253 643790153 328571003 526881253 272496221 239844451 308380151 571986706 825091895 456621236 598653744 69814529 88269794 726704558 604205186 253263362 627716672 274378956 928965009 545033465 972836343 727337616 772286024 813167687 621009272 41275266 947011551 60061407 908826876 745378102 320801228 626979635 329802116 417561929 350952666 637948996 797285846 677229655 147811859 386819736 140266372 896782 995219399 309544252 190609381 654335776 961011353 795540678 61082905 212620873 719645286 448611417 104120074 778078025 746703715 775284884 560427113 575111913 13568252 775188138 338647465 851012861 603558129 609804111 168178192 940686177 616639047 234424772 984479397 711965426 656642632 438585037 165761845 410078881 909098379 245234616 726185818 599265882 177490667 903941468 467538808 828111388 563272330 182210840 794649523 773957864 145997015 656903632 748026107 689204167 116241286 319142134 345473547 770561738 341971091 87310205 309965920 626892305 179453248 626027237 200478023 779945655 903545117 939982384 825505995 20165611 693952250 635869940 631152839 775021020 48275449 752470081 935488475 730234569 643606649 946998713 498592879 549952497 4713768 365833343 398568882 235434653 11934717 957131843 800571040 265874210 762920751 533440058 434386678 942185432 668172359 67445285 960476733 640312869 353936140 242344774 453303493 530889582 708745369 692191089 997028006 938255913 381156933 451304439 144417474 216580302 578278068 911446712 107780543 217501921 74684118 170645277 462057743 301020140 514376415 162795278 369937386 641019521 646703944 415430665 898558030 908811578 245851609 672711685 291552776 23827385 42994840 670245005 702243235 104002472 713494752 271726510 949772666 180087741 573390412 83732220 686624942 363212460 64179644 952479898 778817572 808361019 891091042 128845354 793195921 960614453 460220591 323331548 167704169 948204904 727988574 425063270 849849581 188345012 730054774 888497926 244609830 769629687 963813955 545009284 479444455 842386204 45986903 983445034 69366722 264300824 148836496 728024020 825247262 295156962 7004179 47699420 946977823 382742141 123851338 620488233 203006391 538780148 811955691 337065770 256784027 768565336 656577008 762365141 6501200 334368967 273780385 217455529 38433307 457659228 320871049 919907755 10344975 439108169 406504825 960671081 570500097 339114684 406568849 106279674 15173011 536104944 956642869 175312126 911957037 573749288 521056524 840502168 331819521 230423981 432974611 612041592 102203138 124620755 943993729 96611540 603047414 966828528 184080601 602019947 882283877 823814765 897978859 112262275 942153371 709872047 167099592 29002217 728172723 945776424 526861774 157072115 161510285 641651798 488006305 45003392 333247697 615067578 972918062 448020217 296851694 194562526 699964073 182105417 640594462 84209235 414767242 153413605 868436834 633959605 25103261 116738511 178079617 791275427 871565032 990294923 676610058 386678220 125304003 287304743 541641305 280212190 686215625 192887867 102225034 947015319 445390813 599851749 776728199 366878134 665203498 899924169 867691777 633912070 638951209 93588758 394880111 840762973 156030354 270792837 323395091 666067345 304156014 973022290 515946227 127907714 660103173 953577794 964845281 994062625 793203178 296719526 119080819 840643164 268785663 14503765 254698252 939952431 694200930 546244265 898501075 452001434 240823173 361385354 672800952 789238186 415950614 243881830 531714164 757432942 137508121 689795383 598081671 608076037 706415818 932188790 172872761 345919116 675015100 771539501 878276506 732248113 121022142 990382566 681068674 940521506 379422448 416115388 188742546 29565599 62816950 235730509 561215796 481882342 376269498 77685179 774788757 929454661 535388402 217345207 758906542 270508296 198507416 680300153 247972161 973004177 821044276 648863931 300181458 619587389 71573137 413284551 977450680 650744182 46518721 192930409 155241479 85898931 743564064 270474998 483154590 538392937 516433238 413971024 260153641 222859549 290891597 656544733 827823892 274557783 669399352 554149768 940899741 128473260 902001046 408629962 264229055 396116407 534678058 3571616 723795010 355301910 741161728 174422928 879788730 276313975 658762604 541383848 310559359 527526537 241364748 95510144 318932654 732424203 240518339 985986870 106995763 613042619 223918522 667128943 871943354 466318691 15031917 514773083 676505535 409018329 648146833 988931756 726552449 266656245 698530093 148774820 728553478 618774424 479157646 740098315 277797411 621767855 915347015 222799147 382088811 88340009 948292405 68046301 656403523 211205893 930370426 231525757 508079824 59361600 195018374 916350962 741747714 582483174 416119052 421141933 765525908 557139724 880310278 314636447 555797510 560536267 391987132 609143626 49513887 316103235 358018231 239515063 228415854 886232991 210207948 456734829 433337933 537815570 408934936 971252102 346959323 529917143 168038401 70755234 306948994 76846 220999214 814667492 130070384 235675236 359506841 929722879 474065825 801052873 520045434 112851747 776960720 415718584 218809432 227292947 967803786 188942996 127483133 349017616 91661598 194586822 488850816 491450606 813220514 826507971 656509498 426507778 911282168 339077633 520845011 761996841 31454920 716448005 603925298 613219273 395575172 497218649 296108178 881258961 944801888 13435278 8311402 787872439 29550689 4068928 341770112 474933113 229618252 367357713 525285088 698556061 899542962 225424040 44240606 937518386 777826284 320588477 857570329 382583246 151524635 823741701 657985649 325312913 107722020 704211525 689550868 910331678 757205690 778782022 967630967 747704229 458395221 183692253 844119895 891663834 321980213 462575585 698401716 120209665 394245218 796144180 6963934 801808859 222402476 363568067 284340587 974016438 356212394 159012479 421896243 838912365 258259393 108666465 699448666 261328985 819814677 933591661 867113297 47436130 773057943 734224813 398019528 907976185 396305407 599774258 16503486 228581649 802259406 561233432 135051637 276757033 441525836 793710209 469655418 355081799 491402120 155081364 267680162 540547834 444616543 56016520 96427785 870478680 282841709 893325461 321451027 263143681 368820505 651931647 855324010 918069528 103676054 290985483 369038601 797529421 231955933 144473360 120160035 96897238 942654122 120530792 173399362 719987057 849632395 2055284 619154227 957435492 484040140 60874656 961412103 795606398 659310726 167767389 334589724 934999062 725839771 126436899 887212822 466958856 14512048 204400502 672922851 890465470 379902011 462436578 904007859 863533603 591189614 441089273 859723525 663764908 419720268 810113618 694395293 619818842 764111775 874233490 203184265 706057907 583371506 283506019 774755097 688534468 641696930 746003319 412203757 176207396 407412174 625026953 102276327 963919346 95266143 284966232 184103988 748221141 388287235 229529779 491214154 772573943 897520692 543840873 494133474 964500498 567435059 296912213 395015941 633683557 915107845 132928344 390512121 901328817 608200061 927842910 478400855 594745419 973538355 185790298 66171129 640659972 727013255 875487559 82903044 509010237 329393825 77677090 371569125 993715162 388171633 83790843 537519951 179047501 498867630 943714273 781097276 400178313 499477980 972390126 851254775 420221198 176269377 132273478 904801287 579814880 69286380 668193044 629502784 821404048 179556281 566458758 828531137 843116083 323775300 144045533 14405356 975657062 795008503 289488981 657782385 426023506 345296899 776409914 783695166 870486179 365257567 495983073 862538388 65634705 413506253 402282400 115582711 393635288 830547666 451107549 341348144 18376641 379479233 42408449 728191831 700916246 492918194 831027324 677194182 29770547 204546437 938282956 318072354 941993458 980071395 278609008 351867480 28246715 610749241 823847157 626358171 736023162 734078402 718630122 707727721 765584296 839078015 333129708 930569347 944815938 770604086 27611292 40613879 99344849 173188219 875882406 133970970 196025439 477895328 946312891 118715785 976843139 817350859 885284755 238086180 696232029 784235233 348532468 368877596 832861587 995791765 156619686 964461284 933691475 898161498 228461948 509100600 235056976 336042872 932021328 364620058 778716622 864911088 114426117 167851739 272894608 351709079 134574724 773001738 405492967 636569858 693377217 560631686 543021476 466862484 186246579 191329652 143506473 427297140 597988448 406445119 488473947 858747285 733361105 910208923 726335658 981813928 780095511 785850757 995845898 920208948 62489420 686947137 962520570 708930430 547971220 925289051 482030211 405708952 361946395 733036966 507844654 10404186 388332814 202312258 556654101 478243429 423207084 622775439 661499349 232009247 211964212 796606268 377342101 558882742 270948851 715996221 259933186 316710442 722273592 109359567 344622932 262177076 15657825 102722930 85273671 577248865 638172111 970404599 316878884 601256959 501858793 651020142 785570487 56308262 599599653 317806648 730057046 923266998 532175100 975354358 576130531 42900315 83579889 228083607 630471615 675846784 348194958 295182156 591425754 852162145 307098981 587616659 580288174 524311290 875627279 59204656 834495284 948460056 356437294 400039726 29166583 819941450 383710065 339031524 460417280 30063078 60630661 89457645 125478376 754030094 662314278 345274412 978021070 807241645 126201111 452618191 275264856 973035629 65445408 39686985 274233781 895884747 295205657 748542805 952034200 806606852 229535957 489481723 696656707 408211237 444419897 438035845 84526712 715661816 44890672 550939526 319573385 191112986 358816940 196257244 39278668 739958764 898673064 122276781 998111516 476236691 132422436 304612960 212339172 825251326 339303212 670377649 776839439 237718761 944418516 755937684 448278675 447953106 24350515 268343634 144814832 488634372 74437226 108696183 548764715 446291853 278297256 578220756 437369556 755722820 456574237 429315722 719180031 528330701 289188098 504249595 653364554 284375436 47016092 327011793 631649247 853342645 182288434 223371269 268371304 919636540 568497432 714031311 202108446 817914854 845772968 587694773 695816383 27534649 195341127 654175877 909526926 887711108 713428827 508017231 52748126 403381730 498627158 351632499 688638082 345059378 39857079 978702997 793658331 439741466 777713658 373964959 217376203 23138319 625772462 722676677 638285124 518243396 632476262 60288391 462206650 639970751 325802425 410296996 731280687 934631746 393007689 750563886 123915042 257901667 144867523 457092727 431669161 987713653 395473113 182925337 281209174 753605018 631233088 226360058 525373257 296687038 147580354 653686087 438407719 147533198 901109284 624765043 331037470 286573441 691346235 523159098 867516647 223486170 792543457 778019746 323369660 129519776 659210740 152456695 18039144 180349091 310876004 380660683 74191924 354417787 600540449 917668347 746776570 435324554 362172709 762300076 552400408 913585399 3157619 761384012 741176692 186378928 692182035 572551820 625201531 945184882 737566747 792394091 746894117 645359035 615390368 263457322 135336429 232593363 700453579 638792792 65272029 177359049 574704063 326541514 546754944 72380022 793068469 350626459 208033520 99012988 408203490 610591277 274903241 25435714 630242443 555188271 348735538 290302968 867304955 528430738 959546584 595884953 708595073 88705432 217801714 815061217 986503033 137473728 429289790 38715225 95819590 81316827 157591043 934415699 572405842 744434167 949579790 369992422 564887311 267196021 823061687 120548084 644557303 625746936 722385882 922189859 541455500 664536429 235449055 388035044 111709272 829867271 611056053 519737715 513822704 872358209 191612880 542692552 645930475 343589858 94159662 469351861 756434412 215682806 370894680 52046017 112292254 848527313 907732058 38334027 133424050 926319117 173855181 634426224 503580388 216447121 194187724 372268312 898932983 318785158 195428863 200987383 246367152 491138660 40320658 33549441 682810342 493284583 553646911 85502966 882119797 673328144 484755521 545797475 573835066 952164910 518198623 342078868 466022433 458578646 230444777 116205859 288804894 571398625 868203186 111029616 869181995 275355765 369408285 439396770 54860873 397330431 906717196 901109165 205152896 519249713 532167153 676853571 353060327 151847178 779495613 647100138 508324246 589969357 590437107 182528743 549819825 536625157 525975190 908234317 565417054 231745928 291156535 423297521 136987347 874048627 129171434 7970677 803464265 36284454 549386833 777023553 65432323 733674066 30734733 566545542 580850504 337415146 349131855 697494587 625677937 426323497 683904716 262621728 362668497 867302293 751543237 541255360 672888270 941677302 394402174 633415016 834395346 362073702 366260423 734853427 487053905 314229311 785961970 880054271 341754816 572855844 917370338 884460405 347986341 588547075 936926973 716862468 743020170 476664079 401328173 190411239 845717505 23674052 467366892 258779164 803076004 190096872 361644857 930954093 170720790 357266823 705369750 429001577 356549632 935841266 686417173 506759016 744087317 353749961 82427722 668758412 189110542 924140270 810231895 372061115 915679920 743980944 149899997 899485862 594001092 444651808 771708941 212318919 416110875 78955868 307109532 657549149 620412305 274334537 972063692 123642735 604764423 330550321 133499999 32793294 814648935 448167595 43776933 449109267 805058467 187305359 371458675 12266654 623804086 444463367 649413674 247488407 825518756 545277304 325351340 656967407 725054583 764064926 245228652 300432220 859867709 664731248 999647583 66483808 410782741 856658487 33289216 686455108 521614622 78731640 232551769 518625816 131543684 648877839 865267956 229319346 83369082 665581586 739727341 915775412 256205113 488851177 670912478 988972937 254248451 196036670 838798318 391821658 876780576 70391304 274297292 976124455 663242728 410168451 323700398 965797803 578166705 895944495 671659605 44355952 421071582 277002716 147397633 612831174 627815130 500187039 328412548 238500039 965435417 596175825 323910198 579158352 800599312 363935513 337703410 654723596 54839110 239432291 808823329 653479019 911491653 664057313 717050543 506784165 865493147 441604112 464598800 725207993 520820966 591989941 638112073 902594158 746172104 972477404 131068635 907381848 42619370 51805404 233658327 74648015 984086784 347014989 826091984 300482544 35027138 891656725 160103656 13426087 220466421 533551712 577348290 803052705 723746144 545820322 764526991 996396630 835768535 511125403 834581765 48914186 769481269 396052297 47474527 262103234 268223834 42520058 594494055 592441424 431901746 368495943 653776488 486765131 93154737 356383493 237039930 762827285 3369165 560239198 86220607 904937684 555475338 233114301 671389783 150548601 943362036 708583635 127280368 697283773 270808347 897081249 528216839 208459296 954732570 793316711 946389268 308372202 521279253 277385397 935082784 869578796 988283442 265361757 982162362 827922620 774594216 167495547 535377142 265637949 263507886 159309427 123132788 990846487 845900169 853416437 96551769 41748086 317505664 603055344 532290389 933754200 102611945 162650275 453346202 304828283 128092440 318572435 450619627 959541094 844269175 199523466 317102988 208863341 61018221 854577054 723826253 94009251 992498280 508256555 978815875 213389547 520566763 201118933 627921931 324274156 790750576 213772425 945954892 992405275 472719751 751025017 82531639 291213481 936327613 145842979 184522047 728491931 135546800 350730827 316873570 624491705 177340419 724990972 9744936 837394321 632978269 343051918 374987936 420746621 255917427 585270425 22363999 427393692 715403773 73294341 760147843 232102617 475030462 950689017 322827696 855582944 34915203 599999726 640292634 919753516 485479707 19681182 55676019 715854078 500216416 159515150 76210426 79668063 912069686 533526925 615842678 887054874 794978183 457420971 912455989 345721035 778969669 723409477 322122506 23439314 527070312 481148542 499269723 242389849 708076793 200984006 113354758 917573197 164215544 174757328 968598911 915182438 422935681 870009494 273876921 907824168 917634984 189609825 797784115 358834649 708889490 82789817 242118131 965269127 929299818 869919347 163740808 95403535 609937246 161152682 871637768 163791119 131692462 261780678 209825555 839179757 808115096 15544688 966507466 813948893 603533417 175116446 434219234 70955988 85493361 946707084 631173517 994868117 895281673 625869503 63468938 258995367 257811096 292982529 297636385 392247131 342797188 788177510 695336220 135504838 470802243 829086286 916208086 734760140 965252171 165037402 518148138 908437271 509444640 21358198 806569856 875881488 464699470 196336090 68635591 229968630 174217575 613287935 787058291 546715591 629573122 588864681 207945605 531763274 955145157 513775076 472130174 349626129 786058841 506739464 894509427 161521779 470252655 655610796 59109876 528968593 111567040 338000570 797091365 831508307 408343826 327563098 73291689 85356393 555436846 275227648 992651437 366097228 38686183 944913260 512117995 848443197 494765589 589862303 346666652 986126657 333725083 980858599 776701836 308747820 631258213 957693653 768091657 304416914 119187299 434932554 966796259 603233240 256103823 34533223 524226942 44646693 430951148 584607385 476660926 922821735 545429382 422978453 285442067 904978775 866957934 809659222 641772400 58906743 111866558 655843363 485162326 682831372 600696984 129668740 911124941 380257067 992413736 924428369 441246046 842767017 664669855 143933858 513399842 559359015 292991284 563172320 285089976 240040714 676298287 551649973 654034759 521586569 75150297 150175508 789989496 108940182 682382718 155879999 496781449 326109686 474785923 935113907 986310194 65498415 507047232 82953023 565755836 722178190 695018533 990277622 299159029 61642035 996979874 338608953 806505779 914072823 419538996 524231846 682146387 254952327 555466074 537432623 816458174 135530318 970132128 678167299 301820000 214894218 10799513 514704032 438081712 17050683 109625821 320991695 59580332 725627171 905593358 445974933 486336476 268565720 775352538 661898315 175158861 80470704 543375344 361592971 403957138 538598092 713124109 36093496 547146446 764149524 937116399 124687747 195799719 84393019 471537763 546315228 105078854 737928882 828257594 787840768 557540968 752638915 904358225 769981430 378935369 443334765 471655814 482544648 787069101 467192965 369659081 630340040 720477923 143960483 112766215 170638873 806045634 228658727 204621884 25649431 710274219 368228408 702738794 642023733 850738302 259761354 678501276 654649378 141066927 313617041 609041125 696737246 534406194 657742606 693243228 854046122 122846341 442877834 27840039 419704598 567077038 21140502 432490094 180970743 295010362 180603019 501153892 381340258 154684997 594170247 818043461 964074434 104047206 266731891 254046030 909420995 793324488 160737150 339394767 536369748 42984472 288154274 662367510 692127159 332970635 905585822 439332483 537049452 759124193 293573887 138178673 395689282 91811934 852781069 909418575 637428302 376238293 80656359 67831948 260414442 584896406 589192553 141467556 264835259 451125378 785775934 798860572 909300140 396065027 813001430 655145594 403514611 506312448 531429736 970416722 876517645 180764148 878306037 447985982 319974331 738135006 143347524 71049955 632943373 429715521 917670632 291464932 220775507 848891693 558036535 978074619 696122670 603407417 552251473 985851614 202344574 768000385 140659233 626188624 931807603 378666156 579424594 8125727 781325438 583878635 158831458 915781398 998091359 757626096 630010511 49819157 576286486 607243773 743168736 174286842 347804912 392267477 678014759 799859892 472363396 835103175 47473147 560304435 221679279 350646442 594698942 219228273 7471504 893136350 105082007 886875761 215757718 142815559 31816052 939312955 928716662 743814996 101183248 138809827 777233453 9976826 640281068 834420611 335289341 152371642 96689745 297249854 380903283 103482519 245284682 720550460 535102050 903614752 614602676 59149493 477077738 230626159 483140911 664166619 37480044 10860061 342602017 142828279 745343127 231368530 303267258 993784654 927007835 716281790 78721781 594668343 639224056 563174295 154600848 842780683 330939120 593780121 127957525 936977960 828444432 620271114 566247891 878173183 522984302 750189501 874212323 772690685 279814244 451335939 896130085 620432030 712758679 629618365 146381375 569784676 248689906 883050318 67467940 428518877 900323245 641803176 841421197 723108244 329088319 985902147 137929208 1079336 481813617 766792215 498869423 248070716 454463052 876737966 23851329 170630264 376340772 206748183 612010245 135131278 988184987 813406182 778149407 363545147 984119693 606311994 930310770 89559101 646880045 640498107 520147637 309172577 391759851 896015764 421368152 432338298 587049346 839775359 457234852 712016992 62556924 227198390 948160669 610955000 88011682 570002946 13116433 413077033 989116937 600319154 180099483 944422376 293611789 244475546 83459997 228137518 621467344 872381211 828938299 468258812 962128320 874837272 600638567 676149856 314426773 310306817 574043867 299805032 32738373 596040397 361740564 931876657 463133462 204794102 18481758 251902685 988098455 862252937 792419526 203884948 283161241 775112719 609266726 243975051 751758139 474263456 763433758 256253690 79999455 169816538 28038167 212306213 773717299 774549989 883826238 943878998 748841770 146305901 50900112 917928927 469746177 554400680 889627339 348776731 638670653 705773143 314045557 90582632 91133095 997202623 379961312 626149175 397879638 259551405 537151270 271887860 484476582 649390455 669182247 908918046 989833018 278575356 515169928 253578295 751372800 549477026 268129978 294064325 404339501 534668891 319926522 732133727 448371514 360814486 995453250 10503835 511099886 76400728 941156192 918999582 114655059 101562404 384846302 135627155 803687615 668283657 907455770 970870185 774189518 490818717 707595314 717449501 341892965 519383804 201139212 147040176 937354925 81036240 691484253 976434477 274875421 190134599 337782937 348306023 874445936 863942935 465451776 832377909 656995244 417830778 292525983 980573309 374513181 650868794 651380546 531606311 761024852 549526950 278941826 848866085 832113971 306687378 215525570 752781683 487019224 324054111 538002215 616066578 250594741 285005296 97717155 491998988 70307961 672564916 282417130 340698486 199406115 635073188 389625988 237135463 259985143 787028028 227482035 349147650 361036674 453834114 674060427 275108979 403681175 636451077 715673057 448926441 822908755 188916954 805177687 786259105 641542682 376422816 652576853 309883868 369883033 460128640 600873741 53464807 313281217 389437220 124239730 8618766 906489042 864617668 493137482 640819123 860081231 162355998 379940380 606598449 733071364 13622905 709175350 398269943 988703238 417010595 14670258 258034550 106229424 268291314 819633265 572175656 258181033 42850116 234694680 317878160 166591704 823856894 883635483 378628407 311352695 7514898 356616622 555234225 276563199 749482485 979302102 492450452 313889843 476680354 155730777 303182985 394594339 916241826 749605062 644797492 829977376 842707970 986906233 429150028 79380938 770356826 874854031 245679496 870264834 925348806 529119471 547985323 249212404 650958577 912414284 170993281 481946902 236306691 800252703 3041755 91582247 982513845 232767654 471596433 503889701 820065605 720883690 84377225 661706846 350596987 579182780 888832427 816609128 698355874 294209202 949469419 867214624 190051218 438723633 105755201 372255144 648809386 843859802 611900591 435241839 746882000 613282597 842634051 124412964 748331379 251456581 454012940 637524939 478516612 69562426 746188069 490562977 433714568 899539025 632705968 686936886 655664770 822807703 493554905 737257820 613339138 982429411 982530768 356700467 786906908 462541783 24291792 824805660 255348079 844586461 490904349 325846469 796362275 327632416 194884092 276785953 803796194 268097950 624237255 283093867 534088422 32332820 192062419 859809322 513762799 432480524 432716419 535853867 22543677 875165909 171122241 39875455 67738786 375582087 734862719 27529347 790693238 367118851 47070392 996489949 883965332 350380785 253252976 627117431 770505829 670987201 922166576 527008391 809885139 657316781 654837899 349213321 173698904 279415475 168413206 517463873 263344883 503255706 912878459 941870779 150079015 800212470 283148895 204243018 647615237 629215006 99700598 384700303 87652129 207852338 754630522 815150441 41376921 708605211 809495599 806962950 221170454 744639622 751836509 508715227 195834565 600130799 45517269 778106275 638248794 301303444 619841141 583231330 878383384 879218559 642599197 103573608 576013251 27570815 219163574 310677060 928502695 687816235 74406199 690594006 653323931 339359718 824093845 32255297 432302846 971478232 259850709 403425521 59838648 725990638 207446784 594076315 633571383 571185637 135860522 324254009 692872558 959461434 660772203 358160658 988632287 486738487 51120102 939079856 85576845 972729578 114067145 806681066 990127369 724589869 751871807 855827162 311085671 740223134 217073798 336484583 62479686 659922090 668836578 403176376 513347533 811714428 359613084 309128263 39318184 782162192 520361735 722142156 905502227 209704486 794999674 308070094 383143620 10510147 397347931 812839961 271596808 395679162 72059408 672499134 832596906 879830691 759028240 463899677 605168387 518841308 522466259 212132057 517291501 601487632 213465051 50276317 789170384 776196784 979144370 725005408 857496221 321447152 356770797 87215581 832040391 585455317 414862112 148513558 71371596 991532325 638494964 630327578 811420085 478488431 831644691 396875324 189366799 431339788 850233896 950372122 906883310 695554078 497185014 927049111 985216372 93104269 516793146 433778142 324607556 115657478 957408192 354752356 372092561 549338630 613300824 514778088 887871242 859632841 667959520 411227755 849858291 64554075 226065977 816125496 858316048 855216265 567442765 495433193 953705649 623177451 982144522 896873045 528998571 370731493 604771954 181938594 855257179 698953628 458354051 805968956 440017579 904836867 440147527 26035671 818493699 985544910 337811150 340242032 33477215 986176642 526064952 918963021 871931964 376628068 909108389 176294389 237946782 420128134 838730302 415907137 560507926 455252158 288816182 332018763 733436601 228500400 258771654 94398841 762363684 333653696 905723698 941901686 240320127 334346019 677225157 374803510 876847224 274123724 261740495 76678132 392890949 463687295 73069226 330842169 885667749 564234435 379568826 417304269 450792412 344669929 909771113 154163399 84921530 150209799 698307881 143799678 263516055 950092798 921150068 210968476 284279372 140585595 434573516 386222092 795784260 975293415 426687932 379347201 591975789 663040894 771929044 147507959 859746107 617375553 442225075 835337139 312180140 483370742 73417976 730005314 317850698 548809006 386820940 230846711 113791775 807455298 903884645 432952430 941934533 600968018 113347577 779493517 955062870 903802694 322333900 201677438 432508539 295546831 604441003 455058617 999293538 948908644 554602853 752638452 69442497 120596295 586459860 938761786 573074646 874251901 666264029 306434002 551908712 498087642 721339497 629750357 892490692 757337330 164389224 862968731 183696835 184866346 369205207 113110731 104414656 827828648 526794678 748638542 718277027 46989660 947747090 986366428 732296153 593793281 674762492 271542129 821427801 997512464 314148494 418570829 702322592 472226776 176089068 994311936 576199097 912072808 305262396 641020767 397318443 723764121 953983413 2304388 144868370 967666440 151388814 422423250 661203211 818786334 539950602 431483131 68475961 890236687 276810868 253674733 269425231 672966094 213254943 159517670 72450945 688136480 918720867 979297900 970186378 694453643 848726947 725248330 443359671 633712220 873909834 419588245 853234131 522176179 931225802 367989416 222565682 163993705 996234908 426517801 150685364 762864938 166531652 899346435 922094785 392025957 366498892 63828072 552721479 551519570 575120454 799999451 620053432 825048565 466606540 536354073 925360663 317888527 428418434 686870833 933374950 657471286 642197007 191122552 845421113 238112448 61255975 857328011 97030562 999868110 901730436 408424010 118980417 100909897 637283561 712051430 890262970 799677665 547461407 637886162 632704060 299423244 924819704 591850443 212427137 122468877 695315024 832802000 861003971 607039464 575984138 933022517 524988105 567535475 198061325 549254024 687274721 508205122 273335629 158159528 859831779 120914616 719392453 796005563 671136045 533793020 459800692 699640360 441732515 589256705 930678120 110808745 257785012 670638712 985986483 799546423 805889880 782074344 460161388 333290006 725212430 773809046 237908411 835177940 482479321 638249877 556445123 830235205 851654728 28358075 382962619 473132165 86065269 883081896 23728604 284584183 174887673 957091527 580008297 699720263 328925436 219830597 834736045 268599914 950302253 607666458 908695799 624518560 543963074 761122825 645284259 341269865 136934779 682245531 624320787 892710288 156690074 789953563 134950578 310745900 448214259 532242854 9734386 659716506 324419543 21175067 285083726 940600701 588729125 299012899 741589575 998334913 235139654 240553261 373126246 521323163 873444646 780469361 645326144 62250117 421900093 200245487 349161839 880880455 498290825 619922033 429224084 633536744 502067853 180824966 786734171 64035523 177422171 781845126 640167282 175286894 244691080 10989715 147040407 243785939 955676722 452948629 940928909 474363160 161432576 887029305 901722651 936719286 39839776 411593979 489989908 362596199 909038151 89585944 714289493 715636785 467866293 323262108 317070014 505726046 237872430 371824212 335970105 146564997 393926661 506796762 284350394 714916734 223365898 426307984 961129272 358640499 471904929 485413275 663909306 181096140 232607914 696991979 612991302 353926719 866942362 743678779 115745520 460864710 182173027 537811719 904475091 20318377 684054146 387055260 735047185 747130480 146187522 538599177 22935506 313443826 143692654 92423461 49133642 537286477 18692063 511915153 522496692 110328289 428852463 889172660 370981712 912751450 934356166 435392448 327257194 618056882 65047572 765159341 639810390 744534816 146813198 7099706 304530795 609653547 70530675 890880240 816634634 837689246 460310663 588226080 124714147 866421900 836613656 839651298 916523939 534519893 924220291 90479126 736282503 903330459 584356764 651364962 326022353 594130760 718283987 843519803 484928520 13601683 426775567 228547284 75625666 214977785 322866635 243497522 734677145 459577402 385752833 521184795 496388654 698672744 4871226 838420510 905863212 528107477 501794948 494273429 493729860 536116506 788551799 455254176 972461106 367726625 443410220 646446886 489342135 647063824 781674830 610517467 438207135 119069536 438812171 525878578 445383608 546749132 203657751 21390447 353761249 335705688 71054513 802706584 733183483 515000144 425439391 625683839 816113902 951308873 413738288 485768379 872898223 487241756 944707898 95853231 481822007 598423282 958019612 554571647 777697671 349940023 70533307 954684444 422224556 919818394 125620358 567174467 441200311 606035228 693272178 223605870 433469378 247428097 290662400 182276330 553582830 974534868 495575605 405742788 609744232 102733928 53276829 58551767 622518112 216064476 121423953 644291264 711646994 771308946 589816557 952923626 465894848 916716601 798136217 105360516 687971507 633452993 640979970 113269640 840141885 111930474 624354656 265305781 728850107 492472759 306462065 543774608 467000202 839117684 657976186 898290798 66936859 41691829 547865416 406240615 696246492 831080150 163410999 528455001 981125705 642804862 629977628 416090860 587505121 203250838 871080039 571803538 314652979 851896661 29471489 578957955 93981901 244374836 35785567 125889468 734007628 501751288 880764802 887894796 376515665 517725105 482153201 600505596 220718471 983218094 920838583 18038251 342971806 946715534 110468460 376413428 537597781 786080822 701138991 167208192 468136555 817321681 206874533 227059650 998829739 986849237 950570492 492350129 474867428 703446010 302388972 282367499 433451509 867085638 381713586 287291355 757814719 653452810 295070999 201150704 928574506 259658197 279529061 920565219 737241643 82777219 99740275 672900117 91263162 779069243 766667168 696849066 824538589 836125032 498640340 136649113 330178459 552564160 78267771 148276373 394829060 492028220 118260876 677999647 647280952 722648099 293616518 758262398 406086228 137752831 727429740 543322313 899318406 191872935 58500563 824174033 919452417 777351733 834692043 143422776 301690618 871834637 63727346 186097768 156280502 374562525 313669490 391152018 730376323 982207896 366009337 540086954 779517869 90821499 740956348 470661749 650867091 504215307 623964280 775706488 446255253 758019856 246660468 538107140 755224861 278892964 735223424 565737523 755002013 740107552 696475123 89283811 762644624 555414315 551858342 473129148 498055547 904721837 127483138 946944560 427249634 267362780 126629369 669266807 971624799 731529015 672318972 859891088 112984454 119725695 523104779 773016388 442631930 21683393 41858733 379501093 319221352 62211665 743695088 352605065 665371522 842565579 72198507 331498385 89691648 18305301 987633464 188845093 960215206 401162330 153919235 548275699 243028029 196502287 866136569 890314104 392053401 594729198 213317325 191978992 412994449 738659583 121526974 729338470 244338186 594686090 397111447 556595882 186502894 175621673 329933728 628394067 797273137 430182064 428016306 628042691 81883593 764394061 839653165 171796254 539200186 913454434 348176885 744859995 692009999 15582124 914417785 250480941 62512602 539555619 655243180 21112341 120709687 205730573 939540243 127733596 678865986 513665778 786425775 876578069 880056111 616560557 446285072 176240914 603101478 297556052 67665996 835030521 291732073 260475727 306853632 643869745 591797302 680451912 686133335 978760422 226196955 524922935 870047225 411648790 99757988 373871701 973478687 593518207 532610547 614245159 764609415 931413672 796406309 945008247 636033144 701973986 185165221 867362652 276416448 13831239 390908134 554295603 613495989 405301941 787989603 805468318 973177143 636373973 641670557 681742988 838663335 239230231 372122653 70300975 278304504 601979317 354788985 443245315 520025505 786863020 180948297 64469452 841113756 766073542 420927532 8052120 970976115 449104276 215445204 529355706 979880499 195039343 815362029 474582990 255522417 271201909 723498549 825993403 941597770 513414287 115714920 943842219 600699242 598825068 749303641 968555793 148286459 489588103 379533013 880035244 756435891 896008734 212068020 676292990 566574802 842787899 758142687 453688532 386520349 915707053 352345405 338671428 437029602 288867851 654020284 692653224 364124155 809586616 938304095 884520997 765064384 981887197 570928670 29264166 824985373 282210149 895532044 740927585 780668285 650940175 635776312 145051347 307318231 842659412 814171325 935404732 152970920 409703298 345490107 166104239 295839225 482918824 355484509 923859066 772771925 988280221 823720406 989094461 838515671 917409025 917367649 278336346 176486166 680246079 69790783 635288958 941516352 387279490 374816953 297305503 853661694 895527624 859863076 614403828 520311433 359132369 445896155 529100296 183147167 498078495 259423804 34188197 489235076 379632904 682980788 593625053 663068937 338743202 844427190 950618894 868297856 706477774 594637243 445699802 510194126 841694773 266427972 601555251 461025108 246536775 752420318 470289222 621677570 275110712 93882394 920205972 393948236 499616271 483112595 568941025 140462390 431216017 295239657 970906678 693360448 624158028 17877702 579827181 427537786 258717 203312865 693098395 860702334 506740128 851606510 124622122 863080293 502126656 194182837 8382147 675528408 359097133 954970109 18330077 621344772 549100767 339577752 721192496 544682403 495217299 330010979 660657350 105017068 761534807 793539133 205938406 270257325 480496374 420655376 555854120 766215214 273174285 591420371 63955558 946957899 454361590 747400826 79598788 214447708 212407265 451196941 975254193 920455500 338990009 43651474 470441950 319402121 11806775 438903582 560166984 745774855 32008412 72810186 492571447 655976517 340197617 804105144 944073267 216769867 360838276 226557714 744052241 172734371 529808239 988458252 813541357 26139240 422706259 942021087 649362477 118957364 828448148 225087692 19465594 65198386 471472233 845454625 329412557 779553292 37384133 739097900 195316063 693363452 647808361 362774859 368905652 476533183 582908639 398633692 28748955 253448086 398444663 195978575 380765477 659925592 380965446 726507278 376297648 329660244 810486576 983669404 656499169 275707503 889626590 872646519 644609953 846655752 617916349 524521257 426883113 460101906 390336519 962963012 589324272 275988994 500749499 680059237 896733887 963656151 799863203 453783082 620650655 392806933 661678412 713400385 231702247 423390413 749949459 406996571 265418545 909564820 24401684 692828978 592449633 150652550 444123450 992717449 816716196 127461711 621493302 694873128 385994607 850680345 647835005 552476389 877937279 882397849 395155281 385430422 517164756 527542033 261475256 146787360 388804800 689579845 389123976 267392621 852117972 178125186 456056149 53901166 621691373 680250274 66329724 779202080 336093229 505631232 663564332 823900803 896526339 42748038 385904722 922117792 725183010 950197662 999851176 850608013 550996361 437859137 930047403 525845089 398388344 317968875 360508327 528510271 123788670 889430946 839980455 159031889 467945583 170670329 908646536 249751242 799190372 277659650 994877931 425860070 461379015 391687004 828025650 771799012 172870975 255360300 689005716 795238672 605248709 941845029 44152327 55954108 280296337 604400758 786232907 164570691 520642600 143807717 564211174 776812037 44541273 688690099 901857325 522745967 837963061 337102768 163083315 830562544 422711834 480944432 833149402 508166404 437390253 657895191 343828686 453894449 695530969 253250500 469757818 338809850 247700944 904252458 154393627 460906742 711642898 564954815 793470894 805935551 180282981 953229953 878060282 380626164 262717134 30239219 560340885 843701572 215377065 663760423 82108624 230953566 55695500 171072947 42343633 603942397 310776926 504491955 316354942 444941027 880915532 257005260 544210311 433361371 394391498 254172723 674015589 829290679 621435539 415513240 896985174 498266450 769237421 487758650 649039716 183330956 861426275 218642149 545066593 949409617 327482183 896005342 2803429 638230421 525245242 961601026 707921226 735160141 669598812 321313708 647406017 367031166 291584287 154487495 802074934 100177206 216377649 768287419 637162081 125051522 918720145 859782273 877830339 349016958 884073601 866142614 427398563 477335372 536444560 401925381 162923794 496099609 638856085 99018326 79959786 938601746 151633573 741189796 530836426 297655157 765062184 491323274 519415322 230947204 962640077 19387439 491553546 90366600 753354883 225961027 761620370 407524565 942477193 118970107 965691251 632842946 356738402 38337556 311663670 537969076 558349277 827413206 50807337 373402902 753134605 46874894 669504358 652230488 263467341 310401556 67928782 943524599 924592192 909362118 701915910 906167665 252666327 674962825 778663810 678256210 391366209 719370060 928379768 830370353 903865855 587277444 460720360 660444065 315423441 196423472 88795036 955177030 350464711 215941849 680097316 87060430 102222642 692961673 802650839 296426728 775767473 244792023 1553621 849490000 934779172 184578789 415691528 404979143 270423228 335219541 88419103 963025687 262183660 700297300 185734803 239482642 982554737 643156383 187556259 907727511 913693005 41804142 710866008 290039169 822786506 673906571 300443011 713489343 530063746 787123266 102905789 33263681 66998352 474466666 248306274 868655618 73624406 110092130 481350815 230740228 413361153 805900814 275177057 180619090 144020740 466230238 899231586 469284864 969923422 823320266 395558947 300740132 881868115 935802189 424055529 726152162 251538797 529993583 561734342 696456039 422042498 629614525 685349524 532326880 544209837 333067341 761347571 442145421 753808723 365863361 470026824 161549739 695788065 446242362 616131526 965329289 876864265 648234091 974804068 320577396 335267146 593951364 952506085 799199434 645131622 403967307 914828749 236517870 347638314 877212931 921290862 88191302 369207212 327271030 417429986 887690315 644470855 80089089 226050056 47335023 663392157 677709950 43870854 139356219 898405789 331684950 859918801 411312181 314751866 879044725 218715677 509146097 446882481 375854928 786561133 458141963 246701063 760001515 281035654 742631968 273056902 807645383 332110589 17338336 996060802 124458227 825156132 340847610 216242332 740758788 36167459 550567467 171973811 300257311 496616411 43350323 703670518 83074787 769992961 875903963 712752344 978442880 571858698 691811319 222181397 764896174 468946744 441720674 154397106 288605610 695723669 703488252 75049212 897235770 371661037 379297202 663947399 883412911 65568733 738533748 431319854 625339354 516150721 657510462 630172439 814088990 164601027 78630674 568705707 221295711 442592210 360822521 87183266 182042892 517897642 205041156 636212726 747299354 464880584 806455379 435100909 899530507 919969142 494587648 262323729 548993760 402570947 324373821 434761270 883384618 844984198 303857976 468705404 659526910 918405730 851906858 54184261 852719615 606353854 671338586 548238653 35633484 342407371 663172622 73259608 987129496 739684480 831565469 51201747 398202136 189578911 135090779 310038067 949447306 775657645 76508335 532731456 856839221 836988668 319913216 476621844 758356966 595435430 765400514 473864456 607281396 367211403 269822320 907631552 107078462 333304657 555712397 957518125 78225963 247872105 948566942 574521723 412459941 566565898 568227898 617505069 901135142 784974902 478627836 589558277 358516395 209086136 413078658 475079181 961740731 650099741 405239674 21557404 862022756 599898298 909312406 683676497 7108667 742385590 676672399 663490826 101571425 291870197 298320677 977992439 243309944 718872360 401687590 862730635 140574387 28813513 164528995 300651395 824460485 658090260 379158967 830404322 840197613 972851222 340904704 350157815 571772914 794228383 16681262 81829458 220568353 284449604 226044211 295313877 816119635 86608231 679233029 579028894 962343138 780057646 387241894 836971807 171293110 361723791 880747558 334862599 410947136 418522940 178801299 183767636 317707892 528000953 275304457 186582350 877114063 359839052 648893096 620486269 71221081 871136007 341038748 575435188 619250849 904189376 953851671 432411413 597596857 588503323 927725906 237530112 719121476 392956029 675844498 913750051 587435879 824438297 495749662 573840494 492796622 581152739 734898253 634437669 843267762 53699743 661502323 680222661 175033298 566313685 133672950 23026206 840568432 907986386 770595904 703781700 756139871 325917362 456164291 762660755 453376753 687463252 153985017 457912495 574810630 628690273 870868837 410672771 755899654 346124615 924297872 596934212 464644831 787072830 213493005 237114224 480293890 910300746 776093302 100651720 432635765 643165489 903289711 258594141 552382392 428546434 96920223 297108862 786074590 334115993 842975160 622760908 522065528 879874195 703154296 983185449 209460907 632955225 337183649 650291391 999535894 448868760 628879867 93348615 689252589 804957649 655054167 169085625 745887461 977597754 48933779 535575259 130246200 92208355 951146382 181180601 415099313 327680153 226195508 271729382 828118685 434715124 829690231 459156035 453154258 453038932 676408145 898660078 738325167 425030371 155601605 42904921 423294489 296989585 54299357 665711413 444323197 531087892 189935016 323919996 468733397 266525679 810569031 701303927 297476764 585106537 429571286 223140017 328205530 765692818 873466242 125194747 686373917 337044290 849923965 162093941 981437306 629165083 196301571 335469954 783507090 363028612 307575120 165568206 953419401 801109933 894047670 535853391 255845135 723206286 446136452 248127804 321961303 247536872 829337107 180475424 543317792 579872837 363577287 951160773 303765940 911157488 454826761 654744892 188729054 522263302 561522765 334294500 744028149 542421863 474175499 104801890 65366742 580793528 702885830 980918177 942478059 717089900 266647818 797459412 628211743 200440252 164403303 721985914 897739241 107562150 529136249 917086294 402552391 650818291 383583968 930759284 452899007 523722546 305322825 841451305 187845982 53152190 619823204 745863185 714072511 951774647 764857580 688852495 974612476 739696643 814456996 134327888 35600316 627468370 504795988 161012553 279035184 306910238 59467218 67988916 905384459 715636137 239980279 861266841 45272715 955307255 801927843 823982915 788131961 230520539 541014721 408998466 919222305 182593004 95071812 915383416 537170779 776962955 20989478 314363142 819918467 279640289 956440170 143493979 719155584 43408860 168674073 706888745 709597891 191218231 904222534 923592811 230006846 583384687 62052877 143738472 446438000 482366671 83487629 113198763 589815140 45710951 34632176 526719753 272424867 4578828 326136428 451238301 367356741 542862180 642870329 315365325 863421672 758664147 188387736 605212483 155978420 954987401 846254294 189222133 838568789 310994561 737769795 374935071 989914368 330206587 169602619 862181189 700388472 260006139 782376478 460006194 896940543 8752726 537959770 250887165 649596006 229627042 855557981 515211262 570170880 774756289 157772197 485113567 86858670 423635288 273652400 475344518 689743831 912050140 708344587 520526894 321170278 391811969 975817801 673226063 234280148 411439432 742161923 206601901 525153567 743645180 51731162 365760853 254382797 324007723 558963067 445893019 16766697 378408492 124480919 613037085 989792781 172452130 751637734 930236604 726618967 570942964 733302831 894765480 826923373 347317587 965105208 566081107 535720315 361111478 463846102 458847355 352486458 414835292 629418466 72745249 446185703 113811538 172464191 874275218 164553800 5925733 983730389 795273319 110938029 398379821 258849176 37801590 414118379 147144713 770651778 230750696 991680095 497127972 765359254 481381159 857764848 294491247 55330526 565283813 291776526 808447391 68987756 243647010 829031343 920394038 133578330 678867747 836376143 745021565 393552587 750861934 343237877 992772483 753528806 24500958 263323440 264465438 982482402 270628236 259757591 632780532 319216377 296336095 767366982 839376489 807303273 974082432 176898535 441997743 860718975 409294181 335197603 368642493 463831691 449143497 263895477 573555283 413027818 941152558 664735191 482390267 166441726 53366886 482783059 601669637 986302259 319949188 704958965 86208390 423472887 633185760 237181717 754590306 944404164 935177763 533357201 34743619 827102241 434383158 196890572 872183699 943356564 740926799 768851640 981075598 725217971 218433256 849050827 937231925 543981845 816872904 705114112 500376143 499953501 74103804 846586337 947834219 812508471 733679317 130510458 329400290 229106512 351499248 46884195 670578391 862144618 960639026 977062073 133090095 164117058 123583689 948134434 154223772 504802469 783061543 246140876 694952597 843892834 161820935 187870064 374857050 286009431 621679984 673862474 941254900 192564835 899724205 481514272 904312887 859368049 880802130 544729408 943433140 530153332 673988156 983037827 380760783 972177000 610359185 882393154 245142704 200065869 830938297 732082024 53189448 929083948 307758698 80173411 787888720 228675098 340796322 639967783 701460036 753817648 803920034 48685621 642196851 226479760 981363195 985344911 989413605 226519398 605475197 814209734 82485624 786428386 238663494 152425456 326407885 35147583 830671032 174297004 334342727 211982270 840309636 100187168 113475610 703505325 314925723 550879738 439512126 665340506 53715768 622977902 77876597 609680163 149217763 126736190 752652355 573892200 817139045 877969326 305351674 207376531 177820629 945884557 922225586 763132694 109825419 554439985 919997260 196156783 739113006 154322297 386508403 390866971 353852333 538150089 877350800 102348199 71960376 72311312 862096611 496313764 508242509 636820422 351175528 538514350 257432495 904961768 745852390 135803495 202611820 956642814 607675891 276834425 459478743 557442580 992019169 161280916 765321101 860710849 277011155 912346485 127879795 626495010 991688114 475612895 842506675 46845921 88444461 606349465 551058113 638687785 123908284 502999671 268377948 23745967 338733217 618053714 435704966 683829172 51257056 151157518 738551695 489442559 933265231 252818327 190904071 185950940 131451268 919754715 564395979 479153699 161979868 777171413 403564544 476673582 483696772 272100491 951162899 582547946 101329517 558050051 190457271 432774336 437731913 249394000 76645096 404793257 239188381 156675983 394446573 112478240 27779502 36242143 127473998 900131121 279890576 13741677 67428066 940266084 341053979 252783208 261621446 519491282 363553517 307281167 424472412 301880347 109778286 77127583 723512656 489887587 653855953 268848996 250406043 62820953 57407499 695054515 441825139 429557811 246128860 50637794 314230111 771357870 538107603 311456344 138787370 991740179 572861495 939340666 645728491 816569132 870494503 452439999 878786300 246280276 287719552 626973598 189078276 873052265 522967786 305071260 891052523 944202956 196280280 746654785 996523496 139926385 724250240 134671647 339398518 600739276 708649187 933439441 257355868 154115035 449485000 163201017 73147554 191242532 495218371 588968259 30027681 122705846 730653479 16501855 617726704 48332070 985186582 455147016 970701176 56946068 160862076 744886272 620705379 219692710 684687365 201841685 583323684 913879691 3778602 215079698 698978168 795839222 926144557 153120214 646933095 834140200 819055637 639118915 901449528 701720550 266710193 531405891 58734466 883212928 908342429 719418567 540298016 621492171 894345013 837955274 699563321 543111202 546949538 746575439 535351094 144702323 700124630 614345568 27581389 383219236 462774154 923029263 988146168 432133169 127761212 149694069 358758911 974013462 783621941 710429108 947327082 740125659 660768388 583853306 61170449 893643787 69414405 572352887 782816270 534020796 216338772 590127204 837142215 289452176 202075612 636081670 39332071 952012716 621963213 211268773 273850721 688827582 505565980 212333970 57500018 605767165 448297614 586438699 369105825 324231204 696787625 787741393 945691832 37134717 643666620 232912876 673310410 315739860 315214306 62856433 455950391 421422721 181683194 564216664 175207584 450158944 771928747 453416357 188353523 870581209 26317415 422953057 157555041 825088219 111786341 261890337 283410539 449536728 366809254 163272059 557390290 1125077 998514930 420639764 805685922 994456401 725357531 402023828 334186290 412069216 215301812 416521138 597954077 485550484 952006564 840637474 122364231 159032080 591705231 936397741 737478363 124685943 640372774 851102998 738091087 902700276 830548706 482763831 714679647 610633540 661421571 939073763 854403855 834163875 510161040 457658367 939468458 726420439 314209371 612124278 44388038 479847978 202038013 193380924 427383870 843077242 447363795 980963143 515139384 906642463 792506887 90073244 220135457 220155394 138820489 862995268 634594985 760419216 641720338 395382100 666302159 697028034 131470626 557252323 794584535 77595155 495954947 664524565 745882958 777092490 688790721 229678867 928744966 67059641 24536886 82258191 593691934 598584239 831000069 105257285 749644537 806024464 374600082 570247413 753867842 932349696 640805648 92297069 917967598 368576814 767218553 548017402 963765052 948022993 569153673 96510970 932720812 334743973 177066953 830795216 807576335 900653808 834087819 68419556 955662706 346467973 3433958 56973992 519435064 804056500 513521084 746471065 945488645 349774944 616312245 341507895 352549825 228751855 945665855 491542538 956122018 788509770 372615059 763994027 326813991 880706287 961375921 215074476 228404239 950854612 504762469 492653751 875109994 989398662 23424827 35388273 912882572 679424273 454711690 329475468 413758737 556071178 976306808 966937542 439303645 194265747 485940968 312925153 480850715 911035725 368529551 793787298 27610946 348008809 879763169 878176225 626690316 77108893 184777761 773384055 32467070 597851943 791963219 437561412 905297893 533539533 62621260 514531893 64441043 522575326 793837733 518096440 312994596 392472115 999852728 652960589 784738819 466626084 310972850 993065842 815681235 575933850 997142916 194183347 795085391 571508487 57379301 176095267 197594991 911998043 494130003 137105112 620290681 904291864 677433369 47115002 434294777 90050116 713131333 811787441 993874372 81161581 281052081 897158444 782607863 736358825 415768316 891631531 17915378 100613014 159866512 118780012 761493350 637244763 857080478 242787258 659487046 402850725 644319514 560703722 833603277 273757867 238449352 761545554 79714433 784938282 419577905 900226905 655098155 841886573 16654497 97598308 256040163 324179004 694351666 798440171 191003650 520831985 493011911 295544162 447425584 541608809 730304516 59817297 352431958 847396618 179735133 785570109 124165802 557590467 9894662 219573437 761478568 127376395 140285700 593192294 671387413 377112286 986271005 999378401 913266170 46629572 236794080 644666066 318850735 837747402 702988712 591418350 279806924 46060425 951098772 349485298 900473658 914672669 622522508 854666906 926415653 58244907 555478335 146436022 668478716 674343907 635554344 112224276 95854208 616152826 861207173 743620499 50540212 869825459 401994078 131553040 592499940 726485708 835979911 738566008 202156966 142771098 225906069 749987005 186384340 702555378 478003430 4509915 942253971 828954160 437556392 189158094 186069327 45134907 472784839 420170665 602426043 208827011 608270588 469503352 824097749 747314172 30690248 792501334 856294882 894496295 817463157 423214953 718815341 796355078 405076496 535559638 23241290 716125994 479523186 688093141 965922455 619129514 961513533 815523739 530032053 832293412 508838617 619081837 285882962 214359741 182182514 531830163 619675748 734946850 859975174 618676579 291618854 942064526 241871187 910740532 579723549 268492474 554268129 866048361 480361744 913500912 260366335 713775215 373604635 739473917 578418118 293760947 294262423 415409972 807062040 34914739 825469989 141206649 62822813 149889008 342373558 199151919 463448002 662244342 921559677 365509957 551602117 282737749 713403380 530169393 110562208 55032232 119132386 319569903 167587614 25578898 188319570 215752714 795273937 290969021 475482265 988782220 313753358 463115995 318703184 719017231 120879352 190327205 458842977 272342958 998781815 701558751 739389685 417398288 151793720 456261459 22269824 927671399 993725111 726074577 362847678 561214563 181511986 106947894 554378676 949102149 779151282 900776036 296275374 953030101 604018952 435374149 948495171 184235871 963065805 609421259 40261707 920203451 784691549 328036334 758342634 152409156 318792420 704246964 958847888 476599269 883087955 77349926 100038126 431844871 856756062 544296276 62204421 369718436 556268168 411278172 431020051 304207419 760015386 184332382 414459048 572346574 716735781 183158405 303928729 431415024 449519228 382995714 937292543 138260661 712062406 620848401 427371585 890331835 970798183 445662962 368405256 862363942 590803088 248024307 684841037 387857067 366080569 840025698 590449993 725041017 700021797 824743580 289372286 503215187 493791446 787515907 456535742 181514618 181393829 220921599 475162650 876718531 729578403 869601028 404987632 503716225 722134194 761218445 812123362 737439121 735974013 217488666 578865629 793485915 981875571 472265785 939051285 492003533 210644936 761442422 14949383 777322845 220100226 73229170 674160503 507863305 918716521 272518604 613791857 674200663 568277257 291616816 180282186 593870934 706115004 704475212 749897372 938846621 123807396 469734369 958816337 488721224 700887464 318967210 423771788 358780415 602500473 97036405 793484490 374356720 67703951 758528021 479262914 587333328 531218983 990640226 794357117 426648801 423436622 229340225 462763072 872168420 33385938 286809753 490784679 766903082 272293709 336996702 419435144 897252746 312858138 98229901 913174283 182689889 807100521 778193699 686825883 444462741 854837029 785984044 479335404 196330900 480394502 142697403 53330428 632218199 646025105 205749227 296611597 989010009 325812232 866030557 209667757 961870497 401686656 112641724 676558766 393777342 5645007 466179768 257607982 944303559 864712087 938198544 754797458 25408856 393858876 932700674 199860613 730280091 692788981 227243483 754602747 727602488 524075956 981180394 813851696 595670125 188924221 112578700 359254698 749261297 840117014 115325730 937852980 445659406 772246930 894793495 643810786 924622739 233926854 126707420 252153106 638303957 50221460 622061804 908693607 867069616 45054630 310417099 93916874 245101198 87939432 329630721 525516406 143745118 354291479 958264609 862289378 92709267 316516782 465982661 279833813 687304746 646221562 906090638 730485593 308131757 588548488 730856490 80768197 372412968 416773554 849928777 341039283 28710707 120358553 34455459 160335367 796409579 803190562 862565885 21969902 905668342 266176771 873204512 402574557 893154691 502206892 249476065 855366033 351400008 651859301 982015255 378084874 116091267 365386291 999707812 160244891 698866427 136941797 686188663 663284434 912037631 462841877 915585405 52036751 190499681 731614496 982857905 833749235 490758277 26618677 62768662 294289772 820015180 93176383 429188025 582293169 543773481 41745401 591930024 504547771 336533774 575802079 124544513 83024079 901505661 492196159 479665635 81514104 358203770 715488291 368541819 152340621 680330901 331380328 19628281 135374630 138472416 818502062 976321687 689968557 6275070 643555674 290573722 480219593 78390549 521021857 74682443 303827059 80281551 25731703 598703098 485593314 230388327 960293022 333832196 87204255 298412440 687471775 421015754 810311026 348185514 230943688 581016759 90168947 584250731 378614067 584958268 86706429 134439728 422994623 789422551 34594482 959289304 159064599 840182533 81018243 975335885 234008999 803107154 779808415 343768055 614750123 329627731 47378821 969488590 388300067 185823646 679953147 421825363 901236434 298620891 425073672 311402506 490229840 138049964 356908807 753219586 209711345 652526795 247072399 271915984 74735828 99398383 123955845 807943829 408626663 794496217 765874966 839772917 945523923 995779412 373682617 404237855 440986133 616827445 942535204 662988487 890127594 427920723 697659747 993462318 286575197 55514513 906539709 69379866 914909758 548494811 527192775 147233498 766620709 889577504 516897372 960159296 747895409 960607327 566131106 441475249 885697355 193510293 681113865 208879373 962506659 554843854 569710655 292856519 587341360 872620062 627445570 969763536 441736822 749294494 153486168 210929835 890560955 752508018 511721995 31167837 595550734 171145664 954359859 766956146 876651338 520798143 357424358 751112450 96773647 480830630 263703182 163609261 55086787 108431289 367408599 287275158 162642071 284473921 351262385 644704367 271849603 427103378 568571226 266395496 610683975 188446981 295220568 446076230 400294767 685639418 551037048 256019276 994148933 27711969 181268427 102159691 684098278 987986982 492661934 493830805 119196210 205352519 356514246 750920459 710641871 770907591 500140545 450510353 561836078 943348269 610123152 290316183 958459273 536128525 76685552 685614866 324688093 309689345 100308967 333209221 772341748 517261228 160295552 176529777 687843169 689869495 191440912 183925220 376566646 630807510 120813107 850773878 72431449 856527808 235835850 105728071 898762225 935469117 485151751 715414522 57310443 535473937 435296090 738767041 457540034 117787921 472494723 903458895 187956919 905051926 451199874 428285154 279495633 431765767 533085348 83430978 423278046 38894791 610768769 542565052 526218621 24993100 397189619 361855017 87496198 903756178 724232477 36057828 906068134 148576154 169864299 983262423 785971020 153554796 732304019 48497259 868846515 370524189 88690321 507326361 100011606 577815237 779231912 455907552 350209920 247359369 459553127 90977348 199855170 896644753 218979489 817857110 229175669 394628879 247625838 461176620 724096694 604661308 990315577 127570786 271520113 293940832 708393387 208511776 109749202 719044033 970258871 930458901 754327508 521668529 506985373 404083572 772082745 644490125 662094301 920314622 254386052 351867314 707643204 387643385 363260170 313635472 420701675 578036530 752276962 330295702 105690152 630570753 75452909 126723137 740657571 32119362 855427278 610291471 532988998 653132124 432237309 546227342 204316488 159786304 796666540 682658383 402273317 737115233 113613537 970520555 815402397 580448701 653594206 135082503 795975360 924887004 58728120 247336266 317627875 710996940 735746373 230590825 61736351 967105061 523309606 345323037 773569497 582810112 333934915 873943078 378817217 67393032 573007180 831878228 870947783 530086762 674730171 668991092 895381161 436023005 741743308 799961186 882077800 731331485 18388621 673285891 630267990 815815282 115462600 134671677 198893317 862455464 398872092 880453890 588064592 256170265 633652708 337164881 429562716 332064 512404811 959181862 247602069 361170854 827379518 239542162 619361201 381715478 642542714 705698467 709652393 71298923 927619197 252530035 914442434 621893916 705198223 601786662 619116683 344522295 949130430 87947495 833159126 627083844 893304038 742944485 726249406 918925407 558894503 549221724 466588332 407809057 63924071 272120208 439319367 924554930 917739351 599187145 708758919 277668291 152562800 935763800 124797861 415187078 651512434 321992093 971679016 880956606 795757797 691876082 990730202 566599596 117555736 438113993 390144722 256033570 778093607 438152081 655294315 705446004 226163695 220741570 70307399 629187971 563400216 657881825 855375959 601653169 844197397 82040 919325128 713851121 685942554 368730392 900269854 377697460 275869997 785402717 761593370 610585342 554825232 309402345 956910792 304649042 381108312 439286117 701697660 39986623 992164442 74137474 547572947 722622427 949485882 51750398 168634544 221723074 351712220 726890139 115007296 50362144 967572980 792945951 827739897 801885214 346565369 616302176 522573973 76061812 565166890 19496759 359817240 238087264 547123344 764540806 101205456 652039081 210195963 772842809 223377233 165536413 221785604 534810431 116782711 337303313 306536970 396987028 713142885 305377636 854228791 699675965 574920841 45784959 267108218 611411262 610600852 50791884 729581708 220891569 457368198 280228930 11269869 289871272 342976420 441547619 996528357 459719501 111732599 397796657 304807299 863857349 606173650 976496186 810664865 513510213 112909527 602208921 771911903 181440004 73173478 845705446 553413285 795543366 554147501 878277967 265557285 574243160 698989084 720185467 587749458 292691336 984584055 853222050 182902003 219686709 53526330 312475268 62679948 618441403 250673720 288116841 241822062 661820043 996741763 703750424 797809587 789720081 682512500 982217969 513424953 197949131 406731188 693247691 106384553 218082619 157865516 429685006 66980211 627377129 41045267 860329 517087951 347703915 452650979 986638867 969665982 966145110 555176287 767607368 491856137 865250899 595694230 704313809 605576766 679557894 801039836 475278777 599549112 600410663 493674446 768230552 395392662 420757355 205224526 85447566 619133377 328702871 269930377 900996415 919968485 24536435 7820020 549978329 464437376 375079637 895471691 800677139 575670223 349653907 209261713 995090730 841130971 1870482 470271250 63261161 264273525 942663357 543484517 283116185 275466548 620280837 443087204 954085392 165685880 61752931 532694069 47023537 882462317 257343706 935619907 336925279 756769788 800937077 934248002 19343752 775863780 295206727 463503151 720340005 78101410 752793447 148687692 605964206 209702529 949918202 595623467 894245171 290550415 628624426 149108889 447744056 240547235 321937963 263370167 790240731 137550942 877108786 153574376 291673526 827309356 696068487 947111385 324327664 167817017 883003761 317571965 380595513 889225599 554606656 540288270 214392261 303358908 66598996 952829975 119503957 893316989 625573132 449623646 481651754 558464781 37341651 225720570 393130777 440732295 584349977 780926279 49668724 47936714 331091292 340768744 70790171 261131392 695670298 933652939 657484147 298466072 624452322 305864483 935850090 745329613 687690821 176549484 521028214 356388507 609729241 13911917 913748377 206862155 570756164 549508655 708610901 343489135 988898866 835691014 750146491 17752670 585720657 211723923 64791647 299124283 753843804 660510388 427990880 611550955 161904408 778334618 65758821 253791263 691834702 976905143 571478426 141847374 199978960 135305159 440167610 876756157 797237623 651209679 202249215 697712751 771443238 892132380 771986225 240068919 754029000 553942592 142766748 292763052 989825873 329661978 510120985 136741167 833920439 404748492 207501319 143333097 392659199 98124229 969259079 606345929 962485043 478127030 618118476 911262343 390178148 535071135 994971404 376062115 937111213 637097407 664022020 597422439 506991920 3466918 267378746 441043938 593477403 345179174 431305279 708686573 219715480 561394270 820020260 751573033 138820587 244341938 176130700 313942266 562138190 689877196 117003674 652102038 482367246 594704290 835091966 397415920 262640001 326130800 776682992 336121038 380522748 691191738 851450923 806998194 156404196 500597836 269880055 275266803 247388834 378739259 830004513 708056738 544633515 637062625 231666433 547068836 535220084 539703013 112995699 217702817 841053061 870554418 210027743 545534729 660494693 388167676 840150578 851600400 389490855 913535681 515765732 345418685 407860451 395374147 499664626 226850004 631562430 633518478 662210019 627729638 873573093 46531832 786630085 353900365 102435589 612818718 532425004 621091879 388931288 226312675 482266427 132388189 827466020 54899571 602815635 5678494 818837682 205570880 575373414 760249191 484438869 892810509 345403753 816465392 897499363 271844822 171549914 573359178 130152514 903477487 825605502 506421313 258494046 868267749 803587753 407649645 358297895 22000793 764161321 344961581 306595989 994584111 603343459 685870765 98136492 774195216 974607672 504551386 255963000 500100595 844479770 141613678 652994059 583462868 564559102 203593194 565544314 823787256 671681635 398178708 340828913 505357033 356935244 792953726 365670800 948699773 836037197 238348159 634841489 619257553 769658231 124489785 876491049 145251909 740581739 357521936 771030941 713094538 512313676 919871547 107590711 666398866 209880270 981020077 48503112 265131930 240122658 220752934 511084332 174117924 259295242 293778739 866525508 78575105 158490827 257761056 116400378 964194370 903013681 792109062 182751426 869487682 535950996 716925639 757909270 900015785 736872659 988649994 35581303 569596513 339573075 213999934 569014639 883148700 791199235 950549407 930449809 100075227 691573337 388036392 707220087 628920800 462006355 376151975 306991043 957544119 927030648 954000294 506117918 677211315 276433878 232848259 509943614 653687155 110759170 774733403 272221914 785374168 492345117 374278422 353331128 582396178 729794505 988128105 717382558 369624981 200602425 891608772 811008350 569387545 789742881 928898927 577331670 963371175 18535869 446944622 284972264 781867910 923883735 299915154 927739515 685766737 199784123 847590516 832123267 377062110 419151680 662093683 896299768 663982678 365626055 231850937 580253923 609892898 639769905 439618869 643738438 866416377 311193326 195961249 304235832 845604308 505627127 158787960 413803474 75548409 422182087 965793034 557100854 177954036 442018151 774348130 958410126 207272858 720400482 810719576 543544335 64740617 66386896 797723792 946966513 79323807 456722000 642379375 198412660 747031566 775983625 987609382 502486246 681981000 393298340 19824303 371154328 111428746 956979038 890959817 486099684 974998873 227184114 156102395 720389420 509916030 546906022 277502359 389385436 277230355 336741704 589727922 774247269 490086509 4834608 631047217 828273215 96033077 604239419 160741306 544957422 535978326 412649681 219188671 946818303 844643334 673755100 541382770 600097025 288173758 226480086 25178332 449213328 563078212 966108093 34622911 883814221 549135271 274231831 77738158 725343969 512867124 579384814 875511041 214531585 369827215 639314913 636438742 548132967 314956441 561586951 687981594 816601299 571798652 87119368 885902200 898893840 247678638 869325330 186937709 661785587 916072175 309804511 113199925 61877331 582350398 440260265 947494872 163928597 7017448 690444598 733030700 345936415 442610821 729713367 121559237 490199143 375763180 371390561 338482947 580518119 34050887 322033458 107392526 688482462 433847804 746643504 358523608 51544731 163173573 288603339 969759768 918401260 883956635 203150841 480167249 693542321 459307459 258021172 450969031 566440965 53924040 660199814 794632589 260282134 419470720 721487487 93425274 716779287 274781448 596251954 26934065 195313214 182101443 684774719 281219606 886599125 509594715 336213450 704899676 479673118 905629896 105106564 122403578 370068080 708472132 351749792 315876786 293872164 670746453 660966369 365083658 203430301 430700229 337177992 132571730 543016516 630823082 667612520 787855527 596374157 801634399 175594197 1007589 69227761 159934602 942742443 254700722 367367408 188109332 422553429 105558148 264586776 675437366 727656892 619330192 823732474 104974954 415934043 477372630 460417587 478035314 465353518 477528352 292415838 671132765 611839418 457319422 846540844 281153151 834011665 431486918 29123405 414226802 916870086 134597020 696989560 75746846 103995640 231683684 11798647 344349101 123974991 698343888 572701708 164350611 284353782 428394842 408492814 734050189 732583845 804385088 207154262 392905885 698098075 935971213 794801097 218615826 991219870 743816972 346551116 442172289 34727163 720552540 332679124 79916226 913612424 131728600 441561691 994258174 434924454 251995563 964725476 59316129 544224312 457431747 249751416 696322906 13156529 791222747 175632683 374395690 787735809 46679408 831198999 872555861 857947560 59489229 375779674 841415780 836690097 405455873 127758373 685676591 934517925 831629029 404441252 52775633 645634973 329774105 823593494 13259693 347778613 753982213 846611130 878047345 639959189 855968217 621091549 486182414 886562667 827522701 284338128 800119748 219761388 920059362 233005804 925259800 940434393 195187809 211485332 810827218 855661684 338165081 384601909 903537929 27870096 436283875 246543933 11832345 680331137 376134111 505360169 532968102 323810595 503162099 993359483 438506141 988459233 705920403 936166075 279135024 820195748 163150837 710184828 652013533 662877160 617625370 162134108 513784680 429690023 227132363 139930105 572509405 17884776 442079126 339664638 320501905 119338555 56498132 882831647 886532383 291394228 701838505 866762261 740513388 314536179 543742966 741314211 78147748 662015389 90077811 106434449 136997693 649422305 666091667 741504690 874657264 37759092 742261143 858906595 683770821 814803607 402841736 926421509 618243589 726579468 248647478 105736193 524174148 920843558 348673852 341225417 35030624 241456568 357897974 71492952 591857534 450631714 338158223 294392754 653843211 546410826 1831156 391197151 30386871 156832413 625292515 589344241 129425536 108504336 258083286 878061573 374200236 869071911 863308058 656747321 665863625 715419875 89476797 960954043 968336805 655529170 986613910 370628795 600575584 139600143 937246537 501444981 95324767 975889714 710783802 997922346 818832460 936912486 279299484 756470821 336628765 69057625 142856552 351136185 390374414 709980735 154455132 160677181 747622306 587586518 89550848 101121559 298691753 990707304 34976935 342534062 341584945 532430271 297468006 16241270 568944539 544570164 533722657 853004010 263394187 165224100 943172733 217824394 103857899 374383988 182731499 249277156 857076208 344573847 186347682 162390662 336158488 905886333 537254310 160322574 582756901 377880105 69885884 318251802 189771044 527396895 793843063 82747736 792245099 541363309 304380715 692302714 624384659 181580459 62914045 233692729 965963651 896762100 39233744 95931221 61562726 732682994 597992795 307429020 208339632 560383698 481427217 830754526 119761950 587887691 801480757 802277625 228680628 35790234 800706252 928019657 549381567 919584388 749343144 160406077 976437201 197840731 581470564 949326407 558986696 357063664 549863773 766171103 381698760 572862119 462852795 495447815 857105981 623620450 276204401 63291341 560318684 929571984 689801012 616801087 475992480 810535978 933406855 39950458 982366926 205465773 971383216 916505502 508053746 128985117 291728320 589148888 912091618 597396745 758995857 678510938 247005113 34771337 103114432 314866268 733805016 302341176 999031480 127170083 176339441 76417856 997178794 144085748 673720052 967273296 757110666 727384105 742496798 222586522 583769372 885512469 473138679 316954078 213762792 469364767 705677126 165546851 71778876 567830958 628108832 910104566 146012210 986539831 254301927 349052913 148187307 341257267 748289334 229432877 195922252 328015140 914064129 701307152 97381512 75067543 761606009 911380366 318064278 937646617 269753370 601985050 698644600 305853257 945579435 305642417 140779767 225194693 344014132 534317275 874947485 278433085 989137676 96252070 684767689 490371677 953372110 384482217 814704537 180388323 111334240 694926591 973795061 653657232 721230830 168030547 774072459 30741295 976141546 994396622 143743705 455276434 139589138 686089514 973466904 282454420 978736235 529644196 292568150 779298324 575738686 46836996 975208547 168115713 452301605 959780247 87092437 912754506 111699191 584582449 610059786 373383659 947760345 858586418 764573744 198790884 764611896 81117315 513851443 286239555 829064137 46139022 958926029 599754516 785167495 626203211 403450749 967666809 277625016 399749432 496536972 608326286 236375526 777488476 926973709 624500353 442747624 793430854 164482515 716553345 728382680 894203658 163266176 338963146 916536858 599080774 764964224 579631264 474071902 498434853 325384190 280962381 8930450 786678863 537452279 738913054 490471929 399931388 158837798 364644980 201401106 445666798 473943321 493587630 904613802 315080550 162075163 449642807 293254360 964879927 248025414 351689344 301919225 289990069 532863356 462823173 572639659 954406844 525220196 463285319 683066081 494928822 110708334 628877263 992618442 605901199 760908245 467740211 49457894 264476351 124155796 684581899 405121528 856483139 258094966 653912312 654447372 670995617 239061004 86085287 445937015 438368489 215985070 176903110 655666899 7110575 418070397 767026966 639418377 974505744 189333599 931078741 492515390 991823544 24488964 349977418 490785262 729916113 683867110 702831822 816307153 608298256 333274182 414733240 29265386 978059193 282404139 720620011 992858760 408144523 770678116 437630287 352691521 133652442 534675341 38080726 225827309 114915192 256697601 384462721 91169201 360869831 387186412 19090251 303738362 111254187 617253695 575070270 209999742 169324179 600370094 335413618 624901943 365246324 178163389 526796286 799763306 422335438 399687859 21012997 454065826 399370663 864199841 407816623 749202103 795321228 757600604 420564016 309025729 943735701 517639818 4950210 216394023 487863901 163204494 438204328 334638227 514948622 95232156 433447725 959550203 813325140 511434664 622266527 648047002 726401640 926178169 806143836 708923636 603891716 807190159 171631046 778565081 28707443 78147649 201286727 13652569 603032191 111962018 966873680 458747090 966053505 248017558 250282844 969733353 942916436 487682756 7078895 77763207 727846243 521717918 598893712 991461090 901640600 853772376 688118484 106948472 873895532 497663223 746891861 964831501 792013532 827886401 792897971 744487085 287545198 193118405 620903321 299141288 112244530 863118044 768837563 471706529 175985852 385871272 901301200 886369655 90460971 728059152 973295775 589310040 28437798 668967877 598583022 178716088 817011163 880818750 842141843 800823637 722878465 422540730 954323301 541494835 414042834 635435334 322296903 376765850 346790171 668062383 338990627 135526437 990983204 77947276 684356332 266653354 972579017 287101503 450678940 941667153 737769571 917105905 572857911 506992773 341230554 908027536 126767301 326035962 107002526 196518871 523549272 496692654 274511780 878238276 198736652 19789538 579887211 586254113 407555075 11703079 582503416 671432829 454773348 891453260 903333337 838678575 932917863 319970929 126216486 238233306 161290305 657494777 751346556 356758245 294100280 18471822 797475841 40429441 245219987 694902312 375918692 346352548 740720806 659058434 278370778 276262160 26977741 877283233 374207525 1709903 382056295 212676559 808522375 396758702 145557217 252682401 565891279 719705414 989359787 232943989 701963349 612454904 871167806 360768237 943569653 564843887 6033441 310376437 187442710 899695380 137113819 616834244 217117096 287855142 849868287 989441492 288075552 421867682 528852519 728082666 60352636 341413971 986750708 215531027 323188036 533985732 364873235 217699490 99451267 297889618 868734517 119156789 967847634 94946332 168474133 300936108 487238991 329028363 782062963 995000889 312037533 581937102 227012635 329948747 337243375 214851548 648599774 384130723 449336311 917750648 945646232 572606272 784737783 338239147 285758763 846411892 328748210 606137408 943774846 485665233 37254777 640538837 722710920 852073264 596602657 176680900 567361347 597872568 592222982 434511420 510700972 289966809 644185621 17232427 152894674 828458814 983852213 615786313 28941766 637637100 816793823 714469394 338007459 519799588 318261520 938405079 727818377 195226994 431564625 710016160 327258789 850927274 807457327 196536904 232893220 260515560 305475520 949487475 54731593 278023058 352048291 106949509 775637839 225886291 78465787 580165293 589670787 669995041 883747707 228737767 599348023 47618613 904955991 566588658 745237956 744334100 652230219 176173398 943509903 102326669 50353056 412672868 396276993 791040432 108028711 254195251 228310922 456697311 677142833 252164004 963597478 635375033 809522845 420464990 658373339 36019501 57671634 862159316 969923245 108639596 828497856 881602362 545942449 378656246 481381087 690668183 320481664 109406609 769013798 536048813 624708799 664146755 854012960 60954380 235170838 121600869 681793500 770005777 767201080 104004753 77917168 213368024 531005919 435422379 390247800 641152591 828283599 181055968 839190811 141312542 245046478 669039014 592573960 914413764 9268659 488267191 359860982 330747774 243867988 545166617 858918178 506899797 822254230 40463126 384113491 869892635 803939940 974130757 712419541 879831909 364633775 972213630 490713216 207585173 862664047 264973035 413569972 572711122 775518634 212102386 88871252 474418190 358952041 318602061 342008528 339214337 780726716 269592564 223730462 58722859 205388737 780856879 120079807 213519826 716947862 367087495 260401586 902639883 633373803 641944785 485866637 116638635 916400749 166993705 974987107 160023635 588504537 779527924 233520081 354317163 470802926 765337824 962393342 616916003 888354299 454690527 567597721 275311987 470214734 537732908 595907033 968928028 947139909 342414158 355277435 180743335 785555008 395303186 12395972 856359011 808857256 666488712 438687110 149754470 624142067 783654416 934756116 81354134 318717336 161542477 498480716 813169302 226544155 412951082 678047896 895879898 656293383 175345887 17216483 907306904 85961195 542169570 416053667 607611088 347296354 553969916 811877846 344946252 252116240 374434875 536179719 644143773 806207392 233089263 970104894 5614102 170519234 737747124 451121174 162609119 218861875 604914289 814894507 890573017 700421809 97987408 55488163 219460278 931342088 15195593 258119467 678989043 488715022 324655765 298941692 768614347 223563161 478211512 328531028 10081608 454018699 979607424 546054904 740717627 233232337 389847425 49237304 214073149 374981723 560403348 393280233 160179627 425847589 697929442 894227561 688973487 593464367 886757076 100558237 468390969 953412485 117650976 998233333 185087490 1703995 409381827 62524521 112199307 216192870 197168126 666521715 205980697 364722989 547141472 241330460 632686526 727945656 970058174 535768307 861332052 485544507 483234096 166254093 119812986 833928687 416344350 57896710 56821401 253848340 894200628 593134088 337612766 861828091 862359654 780125120 711968581 476734958 62337518 753978980 750732684 740292685 90334802 644414129 716691261 367774585 630523487 427477233 475774375 910120411 592957992 40229357 595545571 469678308 430725642 782735871 902314961 719792658 264085417 104947717 282779927 226119653 794050800 913311332 936888361 269332199 454381335 401710603 980529468 992755885 881173910 420025712 8216405 669658828 67256627 310622608 118204214 929273835 44769018 453163253 496874101 96621747 306859328 213659305 718910564 883083989 522116769 693044549 98579755 728625165 638119680 566585317 42454187 644997404 474837642 778989361 252486553 613163212 401009844 58564694 6583402 891830001 343776059 212536332 754689120 549406052 535003422 817734033 256021125 844330247 655601585 370572713 366859941 145394373 937586050 194807204 615391324 218709646 880912754 47119449 483876873 598614624 108972450 483473189 164013522 943376188 391269502 779485420 907465386 398563371 505876414 67128611 524066122 149860161 229418843 217867961 297423664 410582164 771459224 35269936 585379751 957734218 199644933 644370318 315202747 21052046 812948341 774149985 950373958 930406034 471512832 641965503 262493419 749002126 465910803 468344388 761702670 147601092 88570704 106206234 343183842 547728771 471413940 525539567 575173728 159503894 146251382 554670582 394754118 911382236 92867102 873238257 525304604 260668217 67576693 470801186 514832692 557524627 302210448 409941597 230059175 308613468 136795084 563587058 994463827 862993427 847718095 597780421 515196128 324260406 26305409 715360568 320149952 415247184 452768790 236908091 553629738 652555764 153410321 859433541 605540385 181889215 735712817 615610194 710228841 812335950 52018050 816267498 161490581 3446607 118449755 440432410 100532730 843554672 653776980 17828730 607003327 755094129 296471638 821622311 211049412 565698574 400076171 687729351 760882369 65632792 584949863 972132745 876163369 342157149 797985702 738893346 895942462 115031225 235152206 984436947 765273352 935202315 750748075 517395297 363284822 796854593 579626575 230698521 526331589 263953229 312045849 379362001 33801902 725950758 217929514 294941160 180834367 377794771 635735538 582410566 307998055 240562265 321607202 108754263 902259676 96463052 236690616 471951378 276320800 753055051 497927162 92499957 477415549 866375155 146774641 777878279 738562046 609244911 420424691 185678294 631247233 976428913 170376857 403352697 684724898 459812020 869030861 688920459 144201934 433154300 273462070 527229236 948040753 145003664 813325259 878707237 720116930 850212039 523224264 783543440 188977478 147329781 329648816 657170745 959745605 35072897 377312339 101613150 3852554 939163859 202176961 498099413 746111667 867107423 863234391 175031534 575625501 736095645 654363835 510776205 498161649 132731150 989529046 100039444 70012319 454503747 358218721 4161653 242366046 527108551 180945493 217832481 166144818 14180408 856288758 983187226 922051298 923114297 948089809 596736486 564828412 218642801 376877629 977746325 919101144 890758803 818226128 659124409 879385754 319937115 164436597 75989105 558159400 115885450 90516051 430297445 349523506 333638381 9183970 736166596 584975153 852864080 528512476 668056898 916115042 624817556 404288071 898115615 828161746 560531865 370660205 409203744 921367121 864168263 205702115 891540114 242807413 929646736 14402694 432164432 154257821 464648562 884335994 498612405 987174900 451104495 215390509 571769511 537077865 468288015 874751825 100627346 741740469 297780451 323084256 583679090 411495256 533473672 712053282 732114114 813706392 988046625 825937828 99128713 690550666 875410133 553659191 964875349 68067842 186847449 496185336 312375354 864778916 458479460 418780238 302527704 538130388 489848250 362414307 463399766 631432901 358586153 935446954 796243812 871925359 288693247 597216482 340565556 816556176 864460436 56211980 315772295 233323189 312490065 582475512 601032355 110257961 555692187 727657657 628752725 207519751 352384999 844229800 678018290 170808367 9583789 844051822 542532958 272992841 525462641 647577588 170350584 259056580 851638461 365728881 821314229 688202717 642073632 740479838 274291462 744193167 421131579 336579203 879421677 31897506 88825771 101080040 432363501 552682410 99557147 530593508 761680916 539294974 776629823 489283860 930343678 408391358 172720078 570299226 214640834 334421459 445180302 200725220 96154892 656456170 219338056 90029093 461164551 40767614 575901645 956416473 601978729 733158352 943701497 823361030 671035763 266431462 54996909 919507190 862855654 289133970 974587090 301261375 666561815 282876780 367073887 520814012 252129496 867632850 253625160 844100243 237348744 743641329 341719445 258740783 765489423 789312437 965582668 793155397 285853656 487274198 223221121 305881808 98874845 936175318 716877135 238221077 534966169 401967615 355166934 870668960 753033490 751384926 837693507 896139076 824642777 272294860 451079878 593810211 878713602 695677165 506755995 32879512 753483311 515878946 794383106 358146646 351763587 696672163 63758153 769790033 656122026 566298976 23952319 911829186 915636959 346774050 489913789 743730737 29399006 691865707 714758568 357193063 495498734 197943182 427306477 620845176 621117404 40949923 794398711 416838083 389227006 703820680 96902982 45244139 938513718 574840296 159196251 278544861 895296999 410012212 912811453 521816010 742185214 166320289 706639106 263861299 625812211 986074673 902252484 585131481 496496837 531853229 771261092 865216457 550050554 194431138 11472461 542423126 737214111 374093933 42690160 895952416 804669515 439197483 450131144 954938633 475352860 368590020 42811929 76436285 616662459 824101866 84215594 278202929 998669136 331876630 613096912 493542815 226003609 791859591 944421349 878827660 808953548 13258818 492403273 925282889 57133751 701087517 627731430 279206242 278949795 496434092 658699954 556471995 189792361 122672208 535080613 792969332 221965412 395052340 810794178 957246203 556979327 558827334 538364945 74701315 684734501 750037823 207717031 506882439 590403149 554072735 82061468 703378126 160851061 615712941 955302677 42227043 213290917 823393658 381471545 462844954 397289318 692665054 375830845 204525074 823476436 511417724 741464922 301452202 204688269 838091193 971145938 141324693 911457461 271132870 853908208 680781249 188381689 687343516 764865542 971322477 671915154 602934266 249523308 609591068 332733500 730255211 573606282 975759260 522746945 306628157 826511556 480857344 447025260 984704135 764418192 559706788 249844243 175458091 232786791 434050863 237636887 722109651 414119114 663669643 717892314 324038379 210047559 230097386 867149647 36970159 505511533 588926156 447207912 397639196 72421334 740754423 554766503 561143038 349082663 692325232 364780815 279580643 284543753 575905425 918474032 773311778 406015789 37479669 804476577 191540191 965541708 992332670 203461503 107938558 354663725 449922397 672576880 949724724 618884246 929281794 660743844 354198260 504546397 311438123 285655758 210572163 891356504 732595165 399135281 71962086 378047853 555312481 205258894 268513006 623731332 609433934 515015222 195639605 29405073 859061121 1161984 297934359 542377354 943324957 606476104 558972609 962102390 247758220 286101751 349704993 588030558 26171782 232459386 274480880 539976276 753289734 948617670 968177836 314083186 333953358 315366235 884422307 21617115 306148847 51302205 269598174 207249848 301651897 773251069 104613688 903026748 777471690 686324655 719973461 877584033 727146118 851289330 334046360 443284777 852625048 161784814 245999666 990204447 368859639 423915345 929737502 678779605 889914845 14731596 145170972 679423141 865662671 662543012 945183155 792070130 654298521 785449372 543848242 946382628 162990161 273100547 489747378 674516400 814746447 304031534 575250710 744742673 235911738 304527615 967162114 453228997 488363264 39654102 851415019 677639769 805961428 873707943 165465090 396346974 577434417 568543716 684972625 321109361 152761051 891802256 215541656 946105905 799206112 520907821 779931498 444881739 676843411 978673611 323969825 820375663 258230673 232414718 536127195 610921304 399763647 746422761 209081474 535001801 643080007 376489007 54067397 31993738 23177373 12103167 124850716 150288241 751415937 900300815 634485193 158229589 732974069 683103642 557290704 298018072 289652803 53208428 858974472 422964905 398846466 685474002 24489989 754867957 119393294 156245153 928530982 631777785 126612109 430409781 585964951 772606644 549184999 538658937 393686852 258182708 144518098 102693079 151333353 212436618 147515468 560343110 52478212 962082769 407211672 184077895 903887838 913253161 226013250 577320414 185197704 52708799 160704543 792427162 592198874 323991490 698968906 876685200 91965812 88628593 176487977 136699490 191220414 132335112 630287717 602084913 815875048 143397591 598991095 285290158 678227947 383361068 511400215 550302481 107768455 626048102 930419530 7866132 134263107 983963362 191027039 998600704 573347440 900565263 199595624 649666978 429259302 460007771 835775937 312960850 909463881 123229248 103410192 629004014 974782586 462455622 231630400 155213787 992196912 123756019 622410885 844767241 281030304 521871577 206686045 978593003 105097418 111867027 311678601 634112129 265076088 90523845 859108374 689072723 839653690 795449620 681687901 549596780 200110182 995989049 391405557 769494117 27776545 724726507 288518852 20533340 376180556 566092011 816588023 230647285 592070557 690491911 813436161 188561761 561015947 109788429 794874271 659549268 672802389 648096984 893146323 902994702 645098245 117136717 307944172 860753237 156566888 768244309 640509822 325960566 70284828 723499745 400511077 309364041 296948860 1921005 852703941 969511209 901253042 32206201 95116298 985486593 222919598 895911826 664618728 674436923 904084010 392470345 586936924 719827920 21902756 789985207 371758250 127896893 545484901 64119041 390695006 550002056 356280189 480582989 461303629 854385473 104897476 624121810 353652114 973237370 19749085 623699399 769304210 955680729 136042540 595912561 111797755 73152893 511030757 343493911 89201853 935673876 795509756 194868236 529652247 818493915 550748982 845106095 857968271 891049867 246591000 702297178 344066796 140591980 854312437 935395967 11315017 630364746 48307171 606561675 490063867 620134526 242387395 310330106 816787117 856646887 274421562 473934 506844486 27258345 744345279 700756757 92874494 30294640 258214021 768592347 528231758 732333814 4692879 203482429 908613374 864515707 837351074 47531999 831786774 829539201 162138451 595044966 60881903 391542550 273374964 450739853 768077345 287065555 563753900 442601479 431125395 662799062 402234207 659227542 370048110 759068869 282928830 820138504 449425451 366464716 728211523 261165360 883426434 826339236 811376426 535151845 942379643 275331722 341258880 823193611 803072350 770233924 832747539 173208968 545391554 984020003 831375229 985089366 427248771 930380025 994983707 504028523 148108228 403116070 192741143 454316231 522870772 833808528 747395683 272953976 992558276 822477225 923146674 601366158 433046578 457912928 740845707 826827045 865614213 457133115 196060210 213971807 995261507 5575736 122129592 150146660 486812994 65980399 490743799 36670568 303455138 834492013 130558605 720117159 358076357 912541015 962690274 702000479 273866326 767164879 925035049 946616543 253268812 720357252 406205273 888029813 949016800 859542959 329443376 402605695 627609240 446964747 560839736 432017499 923949122 673481694 494642114 116240247 653669102 643495674 424238311 832640579 636282879 585551539 457101444 411079994 35669009 137725670 868205381 280114656 499813908 92485373 315848343 563532220 739609662 666560737 886691251 628217189 530180362 931985933 221122714 820812655 264279098 244330107 315120404 246582145 303389662 611296692 435126707 128476994 605198664 454464457 772230858 699083623 175015444 316250696 444024705 738667176 924825384 340346200 717722809 281842379 21199792 516577434 828680231 856205716 423437342 394798655 172915520 962096092 159022385 595133434 440709705 651575928 155196139 68465676 883582277 622461774 717833625 207588412 614738692 41942598 800557774 782816468 599228453 280485971 818203243 92573104 601040385 831698543 239292815 437224234 171780034 814447772 473355686 426209065 467073884 373570277 443179882 959561756 211563140 544385116 423199187 53638136 304063418 436046363 508346660 459496254 800108360 578361412 191673326 949318131 581321276 237204227 630931457 384183459 573770097 632681351 997161850 828987751 962923652 732964621 928968638 772488924 704808162 424979926 490908282 996594473 954874038 170713134 628860579 387025147 993267706 568277349 913480560 347850377 105303408 564276951 383957869 712565905 728322977 427324130 751438177 262472538 996650456 341668343 959888735 21705651 936997682 987958661 346555337 971672047 503748494 931811588 307218492 147048686 341515413 665795323 821164202 944041241 313628340 501613551 484150854 986064730 529601063 644758902 924190860 916805160 262304236 912093480 711061568 792211589 276922062 743549355 35991662 20070643 596169306 336903076 928310634 816831104 442875368 81216202 759169489 297101254 490871197 512886996 99072391 150561763 953429853 900201605 127732921 738102649 527354329 581170857 372743897 863594424 410072456 700003089 283192229 252825433 256094636 91649941 222717473 653789593 740926286 272322331 386083739 882351930 46293566 950383755 610462371 28256145 417138708 253719512 853763097 454566256 892253487 340149500 569873950 561809463 564129208 742337784 871590178 411464394 900907679 76985050 709515478 523905689 938786461 501863090 390088507 531673755 387374899 837014681 750087567 999068237 546109861 798303667 267766112 134395572 795692041 382875945 430831495 455177056 367014450 877784366 411555098 863291753 718395590 373433340 670230659 420344426 123013673 237619414 227405417 374081931 662371722 149782788 877537472 712729721 499522534 979381980 946792394 647094892 823482619 735319223 358616840 788686624 440370256 113585650 580090437 236303838 520401462 439858688 960905367 609994867 278165703 864574797 275229530 446873650 750233825 592135764 246890800 345523454 443884845 5257883 575628043 561717308 273223963 887958441 408075545 677926875 686367716 778524177 837835737 73289039 16259976 370985066 442037518 534342294 607657422 929396317 538565319 561405240 654532425 66987918 14547541 276448066 277751374 334932660 722157911 509309004 30816769 264467079 567633071 91411061 966668102 739280073 374513032 979829087 950272465 627285316 609279581 643534652 435587351 639812299 97158115 658095041 779145562 907129400 800422944 35420971 152804514 200881519 744858467 787657027 8340929 655363671 885854015 771808341 19974989 838852580 246799759 328728121 803198116 807873297 851830647 913126730 316939509 58473951 705546853 974738803 936658475 594564696 485859085 329892127 937224702 827529105 860719720 344758339 136195312 873066142 100842689 889330017 9361738 658869672 887371932 762377855 338098204 85587671 114917333 632430118 638354493 185979741 811295362 455540338 612248398 51373683 434364428 440548352 677783735 880878684 815860764 93844724 223862952 487659364 545517481 757300224 497611544 554668764 413743085 755118934 585068749 990970910 667093355 277217209 888719432 376900493 722340595 836410729 602298588 680204689 603053206 738604346 912237986 804902815 818898613 764433278 323000954 854624047 7864047 239240983 918167310 869690052 790186288 629511784 129107914 338175723 931986097 837561443 909234921 392825139 642882283 614905722 930986860 275806005 200676003 784953519 318722073 470808470 315252966 638477444 971720832 532183298 911259655 469187597 77480957 244926759 855975586 952588762 622253228 247624643 466046620 610083087 404988024 40959381 556673571 588626510 352113168 674519400 239258279 217691334 564532207 648054030 952684518 421277487 896518992 181672549 320129768 969818822 249003327 96905291 199693556 508757587 848527242 684540845 815635106 676712736 415965133 232866937 312611532 373536264 715450979 375495854 954925462 231535718 723508088 369167180 888459119 395267875 531409404 852769630 494880264 858520490 326201511 159738613 157063520 621970677 926301945 602319405 232920249 810583167 281519672 402847783 491346849 713434446 463246969 497988111 483207915 759790324 865318287 647264789 707631538 661898373 120863262 883445363 266919519 229516191 17847948 372946541 167237528 580977000 948269068 686152525 224582487 941670799 140553109 716502884 57998293 91808074 807989988 827350287 101816470 314243671 817618310 522807724 994387304 967764989 445533130 824529065 260563295 411922952 854579655 444401783 16633815 131303379 955163228 652435857 152384370 728401719 450209846 203024758 976889119 218955166 316228289 562907572 705817875 307452149 886731574 985857243 7394247 691785905 355231639 529794950 530884865 95998673 216268202 438848856 327533773 662676186 381094912 81644540 736968320 31669470 999510770 661753890 777089974 466295408 525758369 196202628 34296146 164924336 612786931 755503846 137299074 2423365 472967323 202290451 702780858 220246105 661342220 88892891 21489589 826035622 920165773 817832473 219302007 26035818 860674850 799240110 340201551 615018600 209498012 156531848 243788494 91519989 535107989 434383766 959885779 979541728 149953642 35057619 837414526 562901899 888458052 111740736 815617091 9319899 481369111 589557739 948016589 68499519 827743384 381071586 166747166 989747885 64347974 878574403 67409274 650725284 969710703 477333806 16160365 325176105 407182620 210928333 418943688 499858378 570721833 488913747 250390698 159137695 785558327 343304186 475783033 951686981 809357228 101744388 982192351 210926307 770629048 716906684 999182287 988515622 929771351 106485876 874331015 687998020 323418438 248821127 141174923 877684479 480760847 28015188 52717990 28930969 39701249 204524363 214918895 856245472 815143219 10174934 410517184 88494895 188699272 472784248 789458622 449865569 129245350 382192302 261510870 275728859 387056640 805895684 8979515 165545357 941102794 919213836 442602603 861040365 17846283 451932513 57533991 556639481 53073028 691910052 282897532 873733177 565684680 251444862 23028675 106842553 198373681 773316517 282279570 217817102 326281949 290531025 454127825 603252827 844316854 711504578 588200619 39767874 265965418 788061767 285441940 797115892 670385525 755725102 705310538 446407973 646695954 828392788 601162447 166615061 460972108 167270813 755064689 848823177 883054583 541677293 942637506 188671696 768780965 723019067 298709152 454376129 664583864 592974976 786168881 359250614 230307418 527416766 927188701 578972059 600853626 69073921 468033114 13295325 169381841 897968472 111970983 561960302 336507870 129266656 926935300 205763793 26589163 224319677 414540033 784644619 967296006 699678483 95569263 203558569 235303435 614198041 595866986 802320320 178562711 482760456 272328538 52904691 127873554 861077538 548879850 410147684 407867823 278710709 478685965 151557828 177263203 645707788 186062078 586502216 49170417 800244102 857013573 258495405 333650399 350605188 333856685 492075069 340673151 542771059 893202247 474583489 783265254 339932608 714791282 133263251 642575098 393974507 607993042 674723216 319237727 156868209 683036244 432532767 633773958 903346143 990474285 416726060 240430505 519427527 686744789 608291890 18750149 724839619 85427733 544086826 137436325 672631414 954181109 519592095 423066073 82137224 321639885 708861083 415623351 874667953 504402230 196106420 721025123 337296035 891227415 663927052 110928833 44907815 100354717 550014793 718295683 997650691 315387447 714757526 896486434 272206090 395782310 769882028 638789342 994704921 464001519 525544393 62620352 270714896 405061723 466347952 965035161 11855064 851192702 674052019 601851132 871504233 982230326 478893480 855042894 955350708 305207977 216319466 412179126 859261124 316229950 352362596 474901796 247343519 125173678 643186561 723527763 651542615 70152948 548809015 920224447 688092166 724567381 69236743 142326448 812290770 416237402 966519283 392632634 126870243 129489116 431670670 717714228 293862248 538932722 487105771 406472767 120685984 231808516 619269289 527659969 404418506 295848638 845897967 443149290 369356851 387316500 875681386 4711092 474495021 387750464 353718611 307268320 687481102 689575113 649716836 572319990 87577404 727764347 751097318 962069058 694540578 279934567 772237481 502234595 204692017 36130284 455773439 394808756 517795810 963271599 649071561 336182113 640435386 954426266 67562859 217812820 436685121 908134117 1855703 526260684 377456393 381477641 373901439 907257800 455916972 411285192 263208292 954479118 629057488 262146868 907622922 239204912 612285469 127517342 699871109 970796421 86601794 783740322 8597603 228992047 862043646 614837286 474777031 503772691 189977104 223277652 472690263 951858148 186396487 197340578 661428544 622860827 460139375 894428109 505030970 354737652 950153828 881933781 740881282 140476541 609893645 702283018 666591456 299406208 228359759 154366978 947893918 150508188 352668701 786669460 968590233 754995757 723046515 47297000 905809703 429166682 915004497 231253866 841645109 416211481 334206148 999982028 575068204 747592730 637337565 693405453 827797512 172975588 342765493 184976495 931699010 831089343 305515889 426486654 673238245 904537271 999946809 238404883 562840186 562154918 355031102 941179458 918667549 68075567 962631102 72195960 557005927 940139190 591637499 178893147 945993091 61654129 876462651 154085346 537846811 883090512 312148690 483913544 166995302 146640410 43742750 373072149 718332708 534359893 346988413 904438543 435293339 911924304 384460379 777608783 167889816 967610663 925825322 284592687 562173298 360284342 7447140 619646292 835022344 890421673 388311946 42627754 383726273 409091437 870251562 999964775 79182727 45200698 767787218 814567683 47386581 73181461 739278878 271638599 456079781 364975809 905086386 302596156 541427328 104547537 794998583 246668856 840337524 950319514 107380060 188645334 632047384 163876419 897059041 76084220 824977035 50966444 279433605 525137365 529855087 122610572 296964883 848893397 167972085 783629145 741391450 573565624 282914770 967688018 916823097 105552005 161735495 478773632 886423185 430915461 572411158 486412978 665489739 305301836 183994258 333983109 492195673 579066811 313726606 256061778 168469431 343629297 444676202 60576071 374679142 882185564 727472396 687185234 503754610 652732080 792965347 402064684 324430315 309189357 824114657 741966165 215402732 751931984 502394504 884169237 492328598 157228394 487380702 585187451 684544279 412146704 664923505 501832032 61592479 12328539 91048535 24152678 762618215 483353010 771446831 756472055 532720304 3753409 79564573 614288188 823968202 930868088 886044624 443762995 97206275 978447899 745340545 909841819 225174710 507546152 402187755 887824636 707549767 415454829 685626966 667117223 308942621 303980287 445846672 426336178 237366954 11827769 711772398 41592832 468714604 819827137 379245137 284592440 29175013 777470848 841920285 507685835 132193946 382604463 982166079 419377134 749976868 48545991 643834416 227073702 700942363 113524364 33209327 844588219 640983580 807649034 274481663 898957752 590434264 718066843 540772206 617574649 272098049 354631634 524001495 490343583 912076621 700996763 532934485 510613648 232708992 753659677 961882509 710129534 232374885 922552529 464986287 111434209 906808271 754121070 416958832 845885687 646130069 589927932 221295890 913810891 310851229 374215623 78655062 652383277 456904142 883424096 840433295 652502452 716893982 461000617 438691471 867693249 815581317 692219585 744426937 869038460 100030212 514790167 193746669 679799508 73316774 971559519 486239647 304291205 716570753 819659922 588962499 505650445 154511274 980291320 177518550 248590512 47808069 46212894 347425761 438732935 80017276 203121622 775511150 306202211 403758469 438885949 338375320 550235880 161348245 450618036 39263740 915810428 632957425 684312044 146106815 865067088 817114850 684907993 19445134 17196382 167310779 275656884 460889250 906454884 285075158 899642883 633714875 451363821 628693398 242612115 237308696 740090181 536324453 144449142 783151503 197755270 234799285 111589387 539228018 590171539 960783871 283994869 703789217 36696593 25726663 114116638 546996864 221643889 974208661 862416830 501773056 84501996 956531711 570007633 636526484 689788547 94786973 115127704 262444094 396499962 40616719 436192674 968474244 914790118 744640516 901013957 289875057 762712479 741591339 174965143 819852189 267234626 293635391 387048961 677373479 388879035 78645251 793951790 782642611 688441783 473046848 685234835 395458672 989823406 116215242 88581098 911991832 473458916 460115064 146480701 995400933 803384159 865991984 209068496 174861471 551268847 258817501 934334013 438416275 49595693 365791083 375710046 853216663 666848375 312131289 251435098 842206476 791332089 628046888 967468697 482290134 274455712 383838565 255927507 510869090 204892455 922266014 682703875 901097643 161892107 412290033 116896875 321628459 46960790 311733373 667952794 741797353 560352475 183147373 564520034 519863156 711682221 859718642 255487461 333970914 362833329 857032013 50835582 417646034 185820490 188016568 62725088 926177641 52255663 787260800 498302206 689659222 573599953 840107515 979736853 757118927 89502071 278518910 829847206 206142353 475632677 859749743 51342464 798496997 779503659 424289589 21350071 970743446 544071330 964987205 331342757 713769726 403501932 243624726 30819056 385579257 615880243 701807406 690740358 530060524 768526688 81231895 755621784 244443081 441741107 975859553 682488740 914762242 51706023 988005543 594960750 768970393 699034244 735444618 483432963 142604816 916254815 789555638 788805045 525879163 993987980 664229343 340270883 545846123 375193646 327003322 435644974 237596416 409418797 733448975 540734727 524317920 655566391 778203556 208061726 903159356 361632454 548603983 698685488 814946246 59316507 730796772 602201411 261016257 464852027 173133391 772335011 203455982 2711545 438019441 371720160 14515358 160367084 349357632 938151133 80518054 48832116 677040310 885184698 480805480 506271165 966992342 492276197 159192518 900232370 279239338 3618832 320158001 739489294 422902596 870650169 317158300 399682898 35731902 607044772 976307848 428965828 630246202 732835806 837519098 967197047 566611171 311595449 253739651 652732478 232959211 383618901 741428788 12306624 835586443 973888273 682366896 642038112 360729094 831094174 730697754 758825811 656243625 756908782 888898340 482803084 541898947 595290943 209101825 728846287 59274671 366145043 967538801 251302307 321217998 595638582 860503992 41441113 163726478 734214078 994354086 518478598 657261660 530461446 878947218 928939407 110615993 257841076 567368025 116721050 735927329 998475444 278150752 55277719 662261536 257071673 803806360 226490303 789448522 482365631 945652598 274273553 931935544 851843597 296079611 616373335 540145293 710063147 85051046 508193823 203914480 224747630 115018893 557003970 295532313 218915958 747739201 789040482 453487038 601558822 863287779 454903015 121195683 537717671 731821848 472889089 595048336 766499440 544247823 428611876 742907738 945230910 436016767 348240791 119406298 919270162 769494690 147135071 155512307 172318523 439760965 812828235 12509837 926145100 557848498 422962165 29890461 536538147 810051263 865876156 651989021 177981923 717558221 646826441 648505357 616341750 266679486 345978124 318532473 381940757 52102660 309086272 155324786 570783800 28833685 147414497 166997268 168025509 220792300 668660283 364001408 498077416 447962901 468847707 549811680 642309079 929608089 510128921 934560872 263727245 683155854 481843224 149476178 974051437 60548503 239727809 181090014 789663522 221968854 921494334 252914521 380542884 740282619 925207953 98093074 126301486 745550652 849257072 551290470 221192772 96198489 800535658 763103414 963313074 408234389 397559503 814879598 708413838 522900671 938048691 22018558 671189552 302817071 210584059 816686561 178793283 316587457 636154955 478827930 82814634 784569055 216943127 569974194 661409698 589852531 439085461 643212220 642834338 193223156 219688389 934945618 486716784 354467682 858670449 646660887 914122778 621884996 818519078 851314611 824721392 403631527 63225665 126826202 736505234 849647647 425015009 731711560 932028133 823299789 316969195 763764412 937196048 579846743 727329297 391389955 780994187 394769384 633351372 786908397 41219090 265194556 749542493 507984471 886532011 324016782 921023944 766829087 488391324 383331237 304780517 300798256 693690753 701555404 566073668 502035841 152474416 513672415 689586507 750857480 778706 914417465 220115742 768002249 528720336 93803710 350246320 683321806 627865312 903305440 558539704 359966248 825607423 236778135 435185848 503806450 228077423 862558043 717363702 769437262 946702781 457090102 454307719 516440169 625723068 571211447 982308154 572246129 822081932 151325169 186569144 609189537 957358735 9503620 721379175 698126398 897146990 2720921 310078324 456856209 754574117 709961434 720070874 433717227 947475177 666006911 810420059 118357159 263036737 5125190 886025338 387103271 150870008 500194935 787331213 229908950 27415078 249261535 700405159 891867686 637885219 457952211 747181 120491922 938007958 265610289 795008066 423799707 414067819 387972707 709175261 590286282 612229075 768678483 584923825 457555127 800762446 238031224 319159998 147886325 38652319 213197268 262573009 471441961 128942547 647642857 55008374 482785278 386356282 576121031 872932614 166653223 906451062 576607493 532766884 708965469 228033898 457894335 595568181 881491808 839939648 324218524 689163624 761083902 646140782 604438477 97345979 727301897 148260273 166312196 549181288 137074522 376806664 770552962 986816124 870743251 62330310 5338636 798130118 973118303 38667645 414273521 282341852 740407279 148831751 9346567 258047520 21378430 543216779 489682604 795423674 422743054 753793140 243960262 38473883 758698410 647001718 284743110 787510395 622139236 252318095 937603231 652112857 327440472 804995072 686481104 102119165 339550884 257864281 215341151 686794488 578838647 13093483 670345178 905498276 310117631 563278420 777679707 555333024 732024184 544423288 926287227 68061524 408925733 501811589 326551138 209933296 473768273 977311082 753843904 916324206 992521291 872645736 461859019 178282122 664762478 866701060 369145663 412021203 234346017 258437126 997008994 595858067 292124102 151366023 190649607 176600547 341249753 897132510 501684606 648484775 71406283 645681330 972375722 967305604 718288933 564662256 942318831 575467499 213045101 493175501 672553786 853445911 946989622 469323457 188118535 545796611 538377759 220187797 97642573 800260474 287558594 425199440 115399831 768640271 874480081 299985228 65910768 472145429 189931000 659141923 682201842 525411504 789089783 43413176 205856440 698076871 643218573 365369912 961121259 71904523 958852739 910551833 672023991 772864498 450081196 68049173 225175250 647318207 748552679 500531504 118367869 656240249 61891599 515505337 372532602 539548911 110792467 681867840 736803101 786037693 793630434 80843431 709419575 337241919 550718842 503421965 996327465 366508958 283690460 288960223 157305817 877792207 243819793 645707474 145353907 701304450 420679979 143461349 685531057 998570302 115001926 788427099 915229773 584917834 540563331 507355325 102456721 268826293 33254412 827804897 656287496 861729110 859620375 639528165 3476429 90070993 554067414 37298987 258275705 730507402 506907796 110393953 87998773 440028854 89764247 143186555 940672174 252968776 788192051 786885043 447566108 102865413 773871038 50993038 285815869 613237361 267082400 45674460 533415766 515291358 215470400 465742767 447603766 409061223 405025809 539030624 316507186 262278377 752212877 812039830 80408363 50962956 771907895 121776959 637882498 368826435 221076119 327293068 390742573 648705219 860257345 475175676 18899355 201597326 497932496 382506064 752310479 930144876 772458468 228478616 756246861 830380526 579405098 976785190 195705122 395185259 9438036 533418391 930485224 457998085 583178522 275680975 748212155 232175264 413674047 162279418 38190145 24149746 996689551 96988556 649319339 530315121 791115481 772047427 338609578 239866460 203563515 391866400 778367104 772446652 734290899 612073842 793083378 601277536 446353486 221209549 824283729 572941541 363617 507197197 269917550 721938084 591122177 967499860 582392749 429932234 64940081 775471888 939039985 482982217 271526910 97949688 869608870 908304340 989368697 767304709 581581768 204781295 447798717 667503482 458423762 134698208 356665064 326834921 595880394 575594168 392978731 784473630 89844286 151718736 18261941 330014012 319607622 84396104 126739902 272749989 862905214 176870667 366317965 867455749 772218128 583144899 758737254 529889872 649078951 698681452 652625059 903812804 368668281 350518726 689161367 981959394 934645572 285048409 867891113 334576507 528195411 84439412 825939520 295525020 145511276 912755250 581933521 235017387 487747567 657933427 177562581 84005187 517650355 296954332 546883278 876249686 231452961 271388896 851976520 886716183 998812452 40722873 970404051 231722239 242310201 250077024 73039115 547686614 518281048 365787303 639190673 891132329 839169290 693629719 286269966 890066376 307031644 293076488 92861751 694648789 574451686 138088864 29195717 764115372 34454725 981745605 768539258 427794819 843418528 368816420 165389859 513453766 149292965 480945209 254739597 743146294 666703241 127902785 832333207 362336727 734815882 119185479 533579806 96300020 739141490 273115162 602778388 540915233 406586765 992202069 81801317 829129018 342274990 183588434 185994252 418573668 51238200 26345280 362814223 908494093 221712656 67829003 178147957 68892132 978912933 892855405 575126607 855343596 993937643 761013478 642567867 982190180 894558558 716112831 916101848 355182299 492804362 244149508 447711698 40675877 948659581 821986962 20313051 722441052 846610376 75840266 959999788 589999336 758512524 593240273 836575498 827756403 335361522 345610006 344163007 949067502 550399141 441890007 798745755 388669853 743449306 672693711 33702646 930709759 89592405 14572936 999697721 888080606 901871188 817422419 929458376 360450645 852823725 864986694 390495771 340297917 377108658 138308165 925197734 107501751 127685186 119518453 659597553 711997748 594091717 864225737 816190851 2080870 508307495 32722420 384190956 635795147 486819292 334342013 545171660 399667748 145187816 948130343 526713795 443120769 102644175 933830789 350057593 225458995 459867550 164630254 836058531 96522712 426212077 117608580 373899768 502765397 35160024 751104047 899374398 248152274 285540870 662505885 964374332 272154826 775116711 115421254 355416777 62145013 130237553 818321519 125645498 97890902 314255519 430731802 955991284 684404284 496137210 191074332 255282016 112772413 926895313 854346509 270329075 879470384 61727990 292234824 330809507 179988284 981159628 399715581 577534069 556725454 441496632 155560727 392919152 411952794 601035176 553986126 60201901 925888410 437438739 328531748 170578752 914110999 958511349 919864803 412846926 556058775 706199381 602432409 42403841 864322802 600102083 697994013 407265418 741037381 644077906 684060690 501698084 751513842 621766053 695620574 427280658 564263334 964457948 239739572 26596255 148237910 137465003 610249867 266726168 145310271 161535558 975888929 211182303 923603424 75998059 179786240 625765200 419992077 829324897 107268984 184121563 398088917 812140533 164760483 642280682 81864342 509520511 524677726 804214528 886307572 388327130 927101782 868982170 707559387 43757424 537407222 177393987 765607551 328027950 363185018 104028558 650326621 359733898 357986784 30649366 371612217 859620483 242695921 409074044 108406048 361763228 77637693 261454443 360268644 193405673 194650908 211465876 909192100 469254906 710032817 900470707 717891523 741099250 32375777 235804808 898183661 875069813 914980444 102576097 399195541 733313971 584352158 395692940 492103800 793639006 842283749 144907110 880946079 886017210 723623222 707203665 63675982 873219465 697119335 208757557 44686113 891517469 712691212 540606982 854245615 669500230 286079110 444315839 921779165 366537835 56691201 521229921 822649432 271466602 158858089 529601014 409952790 539398839 864632695 630432146 71056658 614872131 738710956 188202830 824380558 54035091 853015888 175891021 251046426 459746983 950682228 759694263 896995465 800377872 301294 397495232 187843317 751948772 371605859 855280804 22219204 102215106 267764276 694179235 928030626 916506831 739604121 226230278 58176133 513372859 311933317 367189025 567929511 275745465 92340921 294439503 903155597 181541002 258931647 520786928 406077186 208339828 621805799 748603507 403074589 649760581 184510535 100238917 729327161 25382227 296201410 297379809 312624121 744246138 10892031 135882443 785393225 944278309 370386029 573649548 806486368 922367551 325980230 295211448 182957496 483351615 14776459 240515304 858027798 236470050 541359875 236554174 489072007 661875826 722532413 698064869 263616606 646558779 76635794 77513743 611774776 204008977 861733157 808893175 99049208 942080532 955167964 376231004 431251149 51783147 911863142 405937165 885790505 810546116 417765948 98307800 34252487 541392212 377403297 489896346 838660012 212922588 553969562 454068788 782781480 142116384 120576761 380588177 211995597 552324462 581931092 309196194 321709684 249468063 749670670 897329765 572419396 224961551 698198092 630061782 272730541 981337507 748630531 115880197 766078556 194753483 613442025 406468096 649136208 34907260 942708860 116923108 835388369 562282551 327006214 241101266 266378598 554187008 809709465 956061943 540796646 235025253 368672264 755833729 222066796 618647935 784690939 293170346 201751390 157040105 581162965 401843384 330496873 80411848 65008837 662261748 314445692 483099345 303891912 339545009 942091993 109726260 539015579 145969479 977196545 757777840 572323527 288962331 683035584 790030223 695647388 61887378 46211117 596840605 787288115 248507428 254139811 159030062 810193773 897655882 816375749 684408354 996172783 15934596 440392832 884334048 601427501 816382303 605426440 563041624 668824668 507076715 506027740 638678268 899225983 770984771 223805117 687322060 82623069 64328329 12428214 415394382 878487684 132421353 276168737 386240915 49813841 629979155 719981716 362532911 682546914 308459968 439350519 670153022 789138719 397239992 149564789 867161963 361368246 190435264 766592898 764714974 284988452 144915116 860475100 162392917 556270758 31528279 454537861 409107209 889685316 774284961 421708235 807826369 777248211 928414582 997502785 994116299 339167205 453521864 272675267 531102975 277381597 732213137 868352375 911776699 458674147 632481748 117283527 625484258 545492199 301146522 151639913 224399590 252903329 923129078 891708248 224216509 813521298 541792770 890163674 20788197 591306757 958344160 905826426 58793569 612371717 905543612 290088460 867840707 958475882 573296070 931942317 433711649 831525595 434860090 951056321 255022615 787036859 513746520 589842165 415047116 858793786 191097197 617136955 674005742 443211090 292627913 361265360 169420470 49065157 989782470 939516220 828153568 309460758 354959051 568117318 919756978 150326938 986095675 905554181 387853820 439115623 333698700 592046293 999503379 961349215 873217082 425461849 332010706 520511014 976240324 882717311 198987687 38562354 360695737 470555002 696975993 764113336 654928293 427407815 142354625 165824696 223062309 35301162 492707967 830452989 462527450 562233775 932364084 916752661 154684275 501237930 758067957 862106966 531528348 17200568 705432405 624759015 543344148 764118972 705188465 261558953 511942554 294771174 453820913 706281552 880019195 41366693 496681474 805736275 996213513 303384761 265594971 406201330 289668763 108039716 212393274 168967225 804809109 830998836 470038118 859718388 541470691 799715709 355780142 534999741 413414517 61147864 298649702 929548530 994610759 104832622 935079278 505041598 540196185 740155817 813632810 248416784 651284921 538694973 80908813 760768162 958571637 817168934 26074118 652451058 954125480 51861674 626924441 549439817 334035575 788905300 200795851 533629622 568650250 791744506 582027817 233703957 607856788 831274676 684583370 382827778 736194897 285921005 95134797 874158313 509825152 785144904 870929366 459206647 789164652 669727683 963979030 337296935 853994089 400220819 373775939 749922868 916985295 449733439 18711576 262679214 134744323 832009364 754035422 534417633 842641516 46421156 850524515 78557154 503480702 919353806 140731390 591807384 921536437 807046068 777105803 906270120 797281679 415605316 789816435 607344769 655185305 861004467 578418080 839115870 236057447 289611386 829468046 519998524 861766287 127854687 470367543 714405095 328219575 649528686 803414819 159787500 739876741 233812477 237058142 37364901 971081649 254122148 713336195 63998770 487157743 732804428 69299626 847760763 93186822 726140959 923966846 703969841 527253438 684024465 546809388 39397322 132067820 104595551 373401195 251149705 474423655 23366284 472682871 361433717 54724369 893404260 919534102 206271581 209500119 114539649 949907354 20501213 250474922 12336055 820154582 195434064 922357378 264580654 80470314 608565986 698492775 459493461 502990202 497044868 722659677 987042266 404113721 8826603 635830907 787525310 850402647 682639001 829823190 854464068 94183766 302837207 619300758 321192441 56854077 899724979 21395425 793935536 659552663 454477062 865346541 722633605 659182717 492982130 931687920 844208350 25642635 190383710 428655406 992159591 518872808 96960253 800298228 171819792 822207300 652400193 741781393 653753372 192438484 505852910 601358175 392146955 498728790 264330636 103987650 333959337 94841874 422131564 975049764 680615692 597304018 426129830 368510711 506202257 90711282 482115355 805747381 354921946 154042442 998816369 323761889 485702100 262604358 844383513 382059779 754801332 987526354 556873290 933853104 330420981 121067875 696578057 528763264 359288925 504931320 140342296 22215192 439747318 294763545 392870156 989687584 429986326 777445328 267354938 714140491 859179352 416064696 497184710 219224403 937581986 293187821 582230422 821176058 242381343 61762068 615287897 163131403 223524163 887982687 354601353 862602071 295992778 118720896 789150567 496063931 80551867 262537147 437555192 182307095 462744415 451852495 52619791 94101333 854613581 263680783 550439493 888195431 394650716 769137743 131806710 945477705 828875959 696366318 204221007 454502908 186078406 385096405 198283582 837943435 737611582 200977004 514635389 313128713 481281822 995585456 186756745 858685069 993367719 753720092 966720429 21300541 394840677 580172981 18236662 564987201 26512430 11340045 738184000 327079371 525635102 874933814 529582124 232465430 226632601 735581904 981373727 346808422 436959818 430372099 227857481 278288130 356085032 249814906 744840100 791822656 805971821 568311409 824559600 224926839 687715742 929501342 407941044 909527307 686137991 665886285 225300035 237350244 866941500 555053131 334117043 799352568 314649371 92526319 60779236 898151231 162399431 222362389 466892416 81653433 204591403 140350242 813876214 516506100 888987517 741977099 633246081 64905859 732327737 675239489 161199643 968967674 966988067 419265729 180229267 642327298 16053318 13464085 901134964 611826754 749135609 932296010 830865176 933730668 348612564 563461367 215924899 127662141 74183361 978964022 127898361 213151093 951299560 852119475 25596618 737710559 172010174 124437659 670228625 995574603 660125440 688173984 74242954 374203798 875716531 628017157 659102402 576810914 903515681 886250127 681202185 127700057 560543454 77604491 349998837 180362666 489882315 12472526 293650917 96251799 796519942 7661242 819716869 848677656 944860417 277814068 28875584 472081729 939203948 573218730 159220052 300688412 510488389 975953680 558220993 927219146 823702991 485946088 674351307 522474858 388578456 154285110 178080643 358826534 781902965 656628875 509949123 461459507 987380351 368326393 301197613 907163590 98300698 434627358 551499556 9186855 973519094 857471527 901567453 824199835 400104967 19096506 730294351 119439224 731840135 695509778 480260665 989569303 652910072 36203500 707435301 667969243 861649452 135825809 270814048 924787757 400623157 693556683 137268999 549549952 119175021 313252850 63488759 465878351 159997563 606921700 152430553 730439963 196039752 871418120 149785887 249248879 630078220 604460875 219866108 260558811 332970306 308776484 510445687 692849148 168644271 85052307 921945683 621456500 37676892 412988699 662730277 750081261 101676706 102668492 294218302 678945305 676282904 404234300 333630407 747589809 610159270 757972361 715887010 536024697 618728825 499665498 783623554 120112442 186606848 241716444 864587999 169002951 448795645 729587398 525508088 298052859 430617714 386488409 178118871 888149174 312049323 333731668 789961291 133166308 607884858 816204300 438366956 414513784 310903041 933085271 393391642 119794283 595583009 364885647 706724096 844983999 215732484 895132317 795137420 893441918 811172449 800782062 59307383 15265210 103178548 42430843 600679743 564859024 451950017 926628542 273295151 350860320 476233877 269463745 280733783 685967509 514084227 584392209 462230412 233906465 142848166 455681731 441214069 512124669 806647652 101364597 334020210 857912940 675420012 453923409 751700411 918998970 895801261 443320832 704957506 930533944 506215271 660509374 282603722 287847233 828880156 164683589 899192285 376639794 305110426 804602845 193501382 654205054 264660725 646822226 62868130 434608275 497643399 124483581 804602705 777216744 396855031 87451836 941010555 883247108 799079217 479724020 824757389 132393584 504631654 144989844 23753667 716066748 95452438 322893075 859583770 515152775 74004740 929256556 289417053 386815598 809204796 65600808 376819227 554399518 589701396 749733460 520309421 106028363 132130852 897189515 887056691 240482476 218158420 402256610 145510804 963037188 729667793 810804745 942985346 466411549 599100941 86909735 315024502 330519242 254403779 872639734 807452334 147948006 312267256 790096050 318331442 385746002 646053629 660103973 884332757 625869561 411113054 548027800 355474988 688863181 763460350 816807142 701034648 723213512 171657473 902543978 149397572 280577772 661158095 676335373 381745183 684457795 61638174 557853755 156372703 466764768 1828075 43952874 758208519 916850398 763939451 490989210 288382173 689641823 949434456 334703187 98430835 848563340 68778838 712935325 844380574 746229399 273605783 913021844 24880644 80304061 712286838 225980370 710326024 63692605 953696681 763581314 116312031 10916962 199248925 118533712 3737981 668321664 233015824 791959921 26339235 241726193 83884808 365816997 708392410 673464341 61305041 207555374 644790900 663529047 468923516 492808930 290093959 410322475 429388137 513280272 615215093 492714504 49767994 239708573 302354531 115880308 565438431 804857320 141079618 182742520 917838470 399235045 394683087 301175334 47203507 528212231 146303492 716692633 542041122 238752076 291773870 803133681 142887653 722607167 223458395 790676187 377434701 703298023 19306594 367795463 665763321 330053600 905593575 666544174 872330956 114121284 425425104 186904599 478355440 982486718 410599885 252774025 595810782 367769466 810553684 446034518 318472528 489627180 419941803 623120986 103248969 631206166 413356758 711151735 543857430 432987133 636096422 440651927 979531595 985644333 255388340 783647658 406942916 175073919 224922976 326452396 687484073 751235150 86562513 463888801 407581793 426264199 742696698 151694993 418059939 987292049 585416080 378747534 684513387 686552421 705244950 273933493 337486845 810883712 649334738 437918500 365224930 847662826 374818518 521579530 503585781 657924915 762133240 306804375 410377807 386134894 840795613 872998402 79318099 537889850 839994601 774974612 959636909 851623869 567585867 667319442 611432787 670148263 881808896 746981713 857202304 200292650 431068356 292510249 810348986 430770187 52987683 77088636 168061901 921372042 841357930 350491063 59187917 743502458 660462003 886438986 586547986 330445613 985985758 375618739 474404425 863613061 238225299 266311023 301719125 602734821 459200066 640786186 314428016 800123709 109162277 739990297 401370133 450861059 176792888 771979059 863387654 256724023 995350857 79265274 906398037 972695130 966026466 291219484 341421647 221170561 819108705 553381705 92549012 871482430 290760932 712335162 240318218 835542960 431963475 677128370 436533467 62598268 528470365 353785469 226624122 524941268 417181564 500626027 633188261 934697580 458081009 652651095 332428640 146002307 489139392 65175330 25811190 25130461 363619009 745116603 11550462 845383368 472140421 400360462 891559507 353823519 300784239 550681626 735959832 236484667 549780646 438843103 875485116 426782982 261049885 404178791 438327281 207095532 357400456 700035525 963883953 762667749 466205805 569774099 211309124 366912622 862486033 860003189 476777271 53891724 356412547 399080720 798419290 825779921 280031642 411611420 180290511 629809233 828972541 687482323 844244212 526381224 1566223 998333555 532680568 673330943 450553601 515341385 26659666 587251461 413953994 459154342 993058490 648178159 372326447 132439272 137871671 385419130 181394355 686505324 912676498 57623278 358141609 596213920 388622821 884522520 847767846 371704564 854711430 580971601 843413009 461819618 803389212 674727796 25116682 126152688 906715284 614890728 280303240 980628388 68976417 237204127 697032385 969828498 504714560 134525961 418755763 630629204 358426293 224845607 620977705 229470094 313278861 703212417 387515827 734480103 370013464 331710754 184822182 919325202 785981688 838295973 397992744 382247885 854084112 229207330 609651484 791461847 355501450 69580613 142087991 861694456 446287324 749152823 613471978 600078599 941401027 133785010 622137983 445792218 193543487 144027637 231700468 969537624 853138080 341152451 371742242 666601063 500921722 947988588 193132956 572703994 981552554 283449542 883066308 430420238 196420176 518118960 764891586 80379044 598630110 394602638 448549254 95197124 768070148 121496144 317075146 853871490 637349057 732039534 655608333 164943097 682829142 906637411 589902229 645674570 113773650 937790775 339468404 478653855 735004552 859888247 788430213 711983148 217824534 978150970 984436837 540333864 77250654 602409246 431637629 538217690 620410126 475111243 976485884 208748425 454977560 549203820 544894686 966015623 796423867 500199353 700826591 532970289 130283387 47145200 432371595 550717412 515236641 469743963 565523758 920980241 897518532 66598849 837442531 939396645 529974208 55263357 752916363 309009564 159312057 783612012 882515917 620529913 4411547 928215031 522583319 969351110 74953882 724908038 243522982 773329045 41584691 380573972 959235191 238011646 728874539 91942433 266819155 603982761 554167178 100167086 854240971 524546875 602601643 320448204 797742900 179128167 667755045 746692625 925170612 237741032 7486430 867416221 312869422 526751105 345986050 872812306 190366550 428962557 304199687 253586594 914857891 647297579 404886951 464992771 198581330 561262822 537051623 716849264 28426865 445853205 768055314 339072690 662221773 204811420 968710335 127001625 648043004 956150896 112881352 668595574 723031906 842563981 207525459 163011628 869714982 776885489 45077448 771729182 887148347 851328939 303339745 752696766 544890707 386331081 578694041 851252990 339490290 173516134 82230064 744953952 369746531 140373417 52864311 701080809 113185457 846274999 966167678 374259237 935979191 217687491 265468967 96312106 573246229 643333640 802336400 535774108 425516083 586883531 610288234 974371485 258156354 341458512 430466473 836592090 148654905 759444462 940592772 833430668 612123096 935599360 7691908 716311153 825843369 290036964 335605111 315854540 970991611 986801417 222978668 192049521 97383911 282437598 283675331 527971248 697678156 268168669 801457949 746148716 23230676 756864139 362199144 486560266 604709870 718228848 855303899 605633399 868607442 727238942 378589422 696838442 607042179 323125808 586580582 864693026 65917892 408770123 286074707 597013219 452643883 192174357 711028485 3342462 908111882 231771457 55894299 344500614 382941321 808292235 927995508 172722719 592844427 836496820 126412869 82030056 97632190 524686727 763656954 831563029 548816289 366409686 695964501 869172568 88081008 308273530 117516631 247983347 156978229 57806937 774297420 310835114 172961212 258935896 922799307 81144269 228439972 777617005 393222063 508799791 80084809 26142608 125084442 351178801 247562706 20136391 745841274 937584311 467356468 953995031 479282311 757265203 655597860 369125015 844408886 744709529 593093155 385633116 458793424 395316325 895915129 935137166 405406690 344586657 858165557 112600916 227956284 81291227 637775153 324041185 422880511 596651301 515442703 67827313 554997130 796784163 946116914 194713409 707471759 59142902 205287631 575309473 210957823 551500369 979121372 559593951 510873111 745962086 208545306 391609432 556547673 65681912 454000913 824599661 246446485 717098313 808185104 896903816 319424476 519778600 508666674 146673695 36754828 798392813 248587606 580855462 167983688 684049012 63454500 795704996 250614272 467668262 524155660 511897248 513003493 157754608 26489161 852599856 578774384 297619014 970196181 970460906 564989804 847750187 738203262 604877172 981313762 686631201 451461074 943428215 549773862 864475705 661714984 14096805 466811351 606040068 94716836 770379959 75293140 168772009 530275373 382582385 193737805 148870087 151437425 698821531 522869429 589305743 761617640 629362698 196326601 987617209 717255381 755564951 396550028 154698111 476762945 827688229 667685966 961523112 538778103 70848925 578253726 342067078 598364821 655592179 445312093 517598191 61657975 951983391 223455403 789300796 852951241 995225381 857710327 775726424 47463286 675982860 691016946 380057774 867537469 577693677 738191007 72889145 772347546 165069531 24103226 288326259 37887446 756020733 520174676 786966882 35833857 764556922 837070530 41818007 836126962 453058697 727780255 823600679 932810575 670297695 45700431 25686193 356728696 610990913 326801532 448193112 578778275 60936824 108884766 978135761 240127942 485722710 271821166 158954314 235862690 271621944 207084277 421835142 347509953 365326975 370779515 536483020 37784174 845915538 56679955 120530665 973552583 118754534 554826271 880267057 984231337 272878328 294133822 182423429 553336508 840664900 434300254 547392330 437206133 799315291 549419444 895108721 846376965 853982155 360332732 154895981 677083504 388912428 576454459 352405308 559127167 548688678 99215931 228964454 181219266 401488224 933909520 756566521 782321038 229321359 564090458 847840138 136422152 537418088 174411259 558629179 133791511 834760114 395306012 154747564 723719528 267629878 783878457 742858770 128624502 78111430 209161223 75582239 588203906 961603899 150821517 486986256 557592978 498838649 353691414 749247665 31151737 182934632 136956730 666339146 763620045 1167871 941419730 403935159 992877037 944009778 865490179 848414801 945254149 418772233 558250296 586484992 716873731 996136075 412365353 190884404 35779231 151318987 668114637 104209378 883536729 431160800 648589677 652116105 282155643 565637874 182190736 745984045 950372629 25869611 672787472 175828317 81452541 804293046 985122311 718985776 71435990 876344278 546737625 493945159 927482119 961201097 981335857 681100997 765644480 837026775 371665157 231240535 844539899 457222487 298465425 185414964 706358132 657586592 297540697 612405535 540900792 413038870 893070118 642215768 706359828 769165858 553484050 79973553 586321827 488440377 945607801 761653116 421603394 421530321 454276858 493751966 216215454 68615279 872521348 455605880 779463715 391710108 805830733 770078200 262027275 160774125 986025936 48657304 676830805 552931063 186147792 388951636 759804360 692442977 495310170 262999732 333721592 155293653 31088834 942259138 640971837 857757187 99123367 825042457 627830965 20521892 81051881 365040852 210410312 561239934 895713207 82342045 210548393 567980122 193191554 521683100 225917263 783842313 455695116 318960526 807302265 394573927 522386004 5892781 910767407 306342996 460581288 775455424 567260994 198852798 627590559 583206167 292928076 206944148 778426129 180687494 867027628 398718161 391954978 195138668 217356936 392192375 591436610 625680817 233286869 54609040 776748581 486423489 88413254 274675249 86378693 603558803 213633121 318026863 784088676 802797220 460739177 340082 722417812 746655229 846012016 595506529 886512678 382970154 609719375 253294447 886710839 495425859 268568230 648431829 353503530 892123621 116760540 920430807 933424556 588574263 387030308 62287039 730346931 137362404 326001013 801628383 45596537 890077224 257678989 729633168 109425282 938971325 946926071 990424630 358717596 575078123 928298499 43199034 783726299 107595903 444366023 625528849 728212123 875247824 144760103 386672690 391214207 923848639 768750535 278331937 676986229 618238636 615661080 375211367 813241775 39798154 591753559 886780054 953772458 483432911 828352382 912074312 708467501 384386422 467647579 293783588 21182530 716318728 551982201 459169743 961406524 592441749 725412402 125447164 629698747 971522478 560847017 748125031 515239583 862032503 66938565 588287442 808916759 125008787 341537843 924207364 422679191 444929326 659182188 366590421 48967640 826131717 298210229 503346970 369384164 17821520 988185106 933965499 776599043 655386585 752160853 552455323 365141707 666963178 396259092 656067505 824415510 95374431 724256691 84664052 591847949 921213072 565460822 18744941 823563031 225130344 732247536 647285279 296663786 690362197 369100089 384811805 651100290 952801356 878943665 354441349 403589671 554525386 161250206 813420664 138263648 343297750 800701461 268974878 440500484 960766721 726283752 812890029 53376559 764988765 925506239 595582301 886037828 900853387 902937596 320491631 843121139 531683504 906217938 922055983 321280299 695246973 636738105 706860782 107645995 819969570 931678702 969154312 361934199 964933733 200792447 119623647 305278426 258865031 383233081 665643484 799379818 577109078 486394674 192862834 685528709 798899500 565586001 270240027 864825546 984617191 211369782 563008088 804211242 667996137 999399512 488665270 621551062 828090147 649892844 409342406 895993678 173675275 652078323 229212965 658390355 824447136 415919156 595628399 394934001 763949158 301571393 515125585 155362430 886900590 220987761 706360447 133150358 311636556 920008422 506241203 530751773 233245728 596450695 308888237 257600574 216461200 570948098 649000760 887276913 763754442 52899029 225435688 870757486 268223875 777770811 915428183 685145659 959331835 482718270 676830631 642841125 66720247 16475054 790084095 772806335 905730759 547016996 814734421 301627109 930531134 914020097 21957794 651184829 713445564 857999210 915139560 345670321 611889195 280929619 722321202 254786679 782424819 985996656 785188498 55483403 970907149 97482566 453906469 959946416 57707255 957089821 893190406 33328629 487418041 601354753 588508261 739965099 956204255 601920715 171904116 591772654 959181438 585926430 615411050 775503398 72105785 51612003 612086927 50480638 222880307 2541767 62468902 704193385 753137947 59308098 819310470 629638818 883911463 917107096 185918984 178812723 556806165 259133007 413047310 520663265 220655914 48808118 554697989 268334274 434830902 13967079 744415578 712355383 683749009 205204418 337118092 633993183 873406486 427242478 757358362 63670953 932752940 23475935 635241361 509990088 75135171 243349449 720929664 321416889 428836688 767133358 913155974 641780288 440743888 464375636 236235072 270470504 289644492 238504529 559332444 516542345 74572113 250764278 510271883 512825914 769633266 433328490 758454660 13437026 751807443 242137488 156148241 912782640 72060054 617293340 314888948 797086996 111508588 872246403 179651845 843955402 16806154 199214345 999777050 109795931 360987311 908221873 910853403 569417743 81312031 128002897 938459884 449505658 580950698 209666685 840201603 872933498 62186279 952252054 474114006 416333877 683766513 558710983 520060399 730855954 439709171 42942204 431360464 892878541 408951958 591485171 381453456 507174234 434597077 916598566 555801930 247297025 242204461 48596960 493173788 506826576 450271139 168978484 630946101 171800856 925610693 135131380 677082562 127513463 378389673 806340551 842025218 308277715 956959216 217148944 514111285 763579346 204465341 828698114 976422565 193929840 22952896 166196119 544212134 366558436 353400625 796994952 191472785 79317429 543438794 828148327 773892806 674360751 481122772 357335421 351186869 936562915 812833822 460408802 435729611 266752944 517564669 190521212 663555973 405387709 951478606 523941872 50766948 229264624 556056953 239873452 601021938 617459841 528435820 785630446 27221442 522571757 966236829 864223408 78015345 866107893 654850827 267530174 650228634 928978856 65753144 81474472 415907054 780469083 63477563 533866948 674611485 349815207 597794465 300810295 4771297 302513779 462768015 665568482 478538748 855235049 797711015 882444924 242633273 455977342 641427736 431252347 896847465 660191472 467475865 51644700 373276263 257743171 505693032 659785837 802290967 20319680 653587278 380626234 845457761 161735422 977824916 951200540 571748151 974465497 212477463 493364340 537098901 199970932 359303981 523557738 246921853 177991998 257581250 2944240 350692343 361459177 651817027 944106939 305403671 949419633 336539815 434133325 413264376 769840155 314764650 451068142 402940346 605826674 909339027 704515247 560629642 814133838 532740787 542077542 60720024 412297417 833914331 46403766 527293984 101478468 807000239 292493318 492118629 289598320 899802705 421697928 576321453 349729342 586752112 758676016 377381967 623094510 571277381 310307266 425223840 29430528 587363723 575727044 386217993 967624258 494278025 219007624 855738861 755890123 466123790 741512230 245075140 337793779 50314352 937550207 129015559 483654752 17268878 542109497 74653236 808232703 426952143 479004869 815768029 312194306 640387612 853641562 849537164 147649255 730306291 493515004 501916898 407685234 964270666 716969328 736863868 946301872 291938734 319628617 524025096 933705716 429760811 777469147 452110649 252763354 399648854 875997515 293225413 430691656 509700944 405029247 15351918 423615592 529238973 672789796 280069380 423375025 529202635 755101624 524189780 932590813 425823025 668563323 624459067 569173232 779396141 493090417 146836378 448682296 251764871 55589226 420228445 382286154 836670089 140764932 940740980 465798910 126064143 819526811 867844827 283648380 392822642 202919256 450729873 538838576 220174491 813888810 969644965 991292364 840406520 115545036 931286053 130357072 917603198 978290620 44541999 92535549 509862318 166476101 247590881 522311007 442749068 40431475 657402728 717732429 62157479 305367329 252640248 7232481 845028884 898223600 450026696 358147966 514071412 358842695 40620058 974571221 834478314 411531093 13321276 504022742 657504551 498921493 42910332 143951038 132481118 780084292 577516089 228851989 902497105 970539628 674539472 902388384 147474501 210805214 550319022 935205755 183592966 135032242 221721924 298831356 697762028 510264265 65470991 112190412 862294486 465380296 243247246 921539797 241117994 21431330 984143183 711517770 201277397 169611537 571706846 559352747 662390351 96886670 898485725 945318329 804742037 79933035 841062375 995880833 568066605 565044016 698687147 555518294 809678116 575251257 134248922 148319190 47393556 915133606 759487279 783396071 637271834 539883872 641516394 665822386 185003482 148903447 705703767 651958957 931689604 906735424 817946824 632952466 131531214 208906271 110426521 551058280 29936888 104415676 42131623 509793403 167268549 489901028 932684513 391784543 850348677 651061300 569607225 697469932 824424718 650873096 167856294 46449996 810995647 439398029 940576046 958305515 488863611 317667757 570968281 82152571 979761076 652417829 338851771 662379511 804546912 697570932 862536684 61375142 688671229 241947363 26477710 934837267 854986382 552464511 357901008 504979731 966102692 105652514 319056606 258735297 492248919 566602609 797243126 971807104 430402114 745899469 922317914 502870529 142768781 884361065 806871125 975439924 431470053 287820095 663993141 693855833 804835202 366851341 229003609 605417966 835923232 32879197 943206944 161651911 111218697 465917309 768172791 471034866 127907847 931760262 726060622 334753998 910243952 749250138 446315681 21786624 954479911 441541025 813841777 654575219 619599247 666265034 2247750 973180508 107312535 490512909 663004088 835785268 180104372 804846187 295547487 76981700 199538916 878810282 233655258 686961943 700158898 559990625 111755734 886278528 147869990 799390430 957863172 179593883 713258203 876648010 165583394 79805260 269566189 206081674 60847853 357956803 552377089 384914766 486023474 9191791 327685960 660251662 13945284 303869969 704594294 607604492 819154812 854597288 208197578 11911758 855516219 420831620 444549645 537615526 354275822 66572857 166837896 64441517 532600196 33394339 872204055 804725183 178959357 597102055 217487379 970388233 406891349 276367214 668907877 375167609 281161111 533161454 672247675 506988999 422160857 723536486 882254921 141668211 126158643 942850326 731941457 231929287 326212550 598473359 450153880 676016595 983179198 369873569 436356266 950283372 762945615 552828265 683679649 559627064 582389423 550556235 737384729 141562779 757153059 597721335 651107127 938433479 664844277 386371677 134275757 536458674 53380212 818326456 557047725 524760606 999155712 620168595 987511544 532606357 897935096 550112948 618899666 843685730 283760583 505501491 196134925 613618850 581471199 332292968 112416508 784202548 328679096 821733629 156746366 841895107 177240792 945686490 409179386 961365433 862102728 843116852 960480606 317613650 146689050 470076040 500033569 529034127 955913321 721733274 350292542 223764021 460309077 965623926 133673535 578846166 251553416 459574898 117351729 397477836 566427321 679047462 777888681 953407542 402465436 331561083 902079174 278595324 145937145 506005147 850566447 829785807 755738775 156815611 886706195 878719014 187308872 307890517 938333733 284248131 617767144 187850414 888747174 494459435 394858584 88633943 61843549 578869168 607148674 381277916 356978325 397522540 456453467 320297760 18362406 237769919 996076249 920703814 539543662 915581644 45406721 155830200 773299796 736727434 130723292 672843820 195887431 295364527 448152702 457674396 61764666 928844987 847822848 113653328 907001007 575116789 227275652 644283602 330571176 749499246 472363572 299184887 952881337 113056511 823533125 581487064 718724338 408143688 756804588 246243806 948143606 523525808 664341105 81453490 956410602 487018602 713734426 722334538 274325882 595151725 713375293 91942115 950701280 213711737 47938608 581897215 610056919 962035730 134196825 454561386 88087719 110361489 82561569 549261627 719367196 555062791 332519927 792656843 353442961 922457688 189951579 599679680 606507486 870160170 626675915 287580425 962903921 434422767 507044562 696734420 870604593 417121759 850054917 430632612 443688087 621448441 617501179 990172217 875338145 848882438 402665303 892732319 382532565 308479126 511022786 479139373 570868035 5666819 590949107 504126330 632402303 759054444 406544544 423665778 538894505 200589497 315964301 673325629 89463398 496218776 157671298 721683277 219822821 785662341 261496149 476814434 377726429 493787070 653561309 463356798 476823944 670885199 548817660 793021168 520217010 801291523 725052062 325345352 626594472 418748276 198568374 656632166 827399230 252154372 667085119 611492718 110570194 298499546 172426551 963603402 950392396 872194791 653128106 669193009 725514011 568978144 848776109 532119708 451985715 479584842 185438806 951872594 458577682 686955883 927089099 39721181 355485378 861577554 639961651 450271762 795431118 466839768 218097347 445069328 765665100 365386145 559533748 482093624 114517725 546127632 168981576 635380279 6090148 37252952 319673802 15296256 900998737 495244401 665004685 169557971 909169434 378707224 34526185 503432496 748746942 853497818 417746496 870992361 259114370 339245063 70625280 498691595 592266292 792882867 355538585 507944439 66872109 598666179 232408451 451313487 177836359 124401883 768759108 316370431 688725740 431164527 566264932 769997631 832269577 350754996 34764407 239468679 171155475 864519340 963653397 802374301 741312264 605710112 337705185 387517071 208104050 925689247 701107846 441920684 669547869 27000704 828951990 42401174 798004829 701920488 663147563 344678192 785187986 974383034 108557478 12899748 899700900 720534696 535117302 903768680 90105281 403128877 220421097 563937079 259152539 487437188 363934808 360068375 111932021 642791866 586329129 333528401 664586258 918594716 572814405 797598332 774318276 477558213 938630301 744163702 347615580 399969682 261222699 11424351 808712511 516810286 909041396 530576807 663768397 799207049 926111488 999988478 991998201 953171288 521362787 999986275 787840820 753257504 871438901 125666586 189695873 789699624 57578648 299067057 643640037 723402622 945665978 534031353 222530797 630302715 929848267 421231120 812223151 407862336 5721346 805974363 329629643 503314615 806168233 348443781 98937702 851045516 695556099 660350337 125291312 335964346 499231588 606435980 137607263 401207042 449037608 963945772 170984621 180366570 386021042 728193325 715716964 869397188 996243816 216784802 323389525 196149926 568176064 373125096 711787216 895437685 538978357 949794466 618270905 666323922 992912965 871828670 201373552 387728180 680523134 707185774 237316841 492929232 877092465 285866034 428485271 660903593 331801015 449825738 512311930 320417408 467432179 963350342 960864793 429832430 76980177 976290806 883791743 41478214 733755649 617381754 174262338 311626669 564480831 306330806 386835076 889963525 60175947 46173908 242204651 94270722 967998960 338474058 830835875 284453403 956584707 91293140 741479010 139653523 944927836 42826613 336103784 821158253 336474588 762170235 982315899 760508030 135904625 242248569 883952359 537526108 598599177 716254029 451889540 740560744 911260833 21265431 987566002 990741450 548129592 280276296 392754006 485993586 410765789 811646867 623023325 368351515 255881120 999801843 402265149 460239424 13946267 893637293 50723831 450241068 136528367 961898060 52630541 667724275 586857673 81247398 780888848 359906405 438123865 674478552 245568280 585167657 158983898 618026820 36409537 647089572 158027662 159531673 64108080 82770440 515071939 466930374 128857110 77439054 564975813 457217294 873792169 836681011 161182704 638633456 537219748 467638594 916028842 196268091 954328657 526797258 528279641 105010690 215059069 175766499 950042994 386038691 440181116 313144686 645102190 317471422 52270129 440371221 241174479 877769029 230735613 968353860 645863966 202041961 404526291 705046070 996721394 572077477 249977380 663821034 373575649 843695040 750034930 986958122 140917644 931716549 709055172 352372358 601373859 252110344 402449830 266445909 796540626 279759656 501268272 451203769 479807448 762492676 118944383 556351383 184578166 884217805 39416889 601872802 206143348 635350260 148452237 80979282 371729063 331580985 486069040 662819815 343960040 751409820 452750947 908263529 469892120 291824492 304620010 904001705 161581092 90325821 632106770 143221308 440794620 709719274 8507572 550077831 10563997 409117848 665082927 994023087 656785927 441871538 153063527 38508199 711418435 679987951 742057673 730506274 726785639 14592330 14973006 781390502 64523400 566109959 490074226 521635706 406674380 464432048 726662207 768508076 636299102 466691100 697386815 328744982 419791217 708409705 552832651 738574424 80195643 862139895 387333566 357455834 194494718 525739636 501240322 522844623 718663947 9510614 26313476 669350696 841346221 87015254 547348474 746346413 958982208 77558650 701322405 750643937 414798123 746001681 826395205 274530072 76296402 789652778 944258732 385867879 363729835 347022117 309964080 340894128 479368238 844098466 957113264 264692124 289605600 572243346 722513809 646281115 440731209 987847976 118336706 721457379 218394107 336400097 25697465 335625079 957518739 276486270 364480372 463332636 650330801 308821516 939192955 415217766 502268668 732456674 534736857 746392491 325189935 689565853 127672615 377344524 96222716 320916507 837072001 800945778 212943144 905024655 303951249 722237066 637031040 788162153 748633217 94954449 386762450 907135079 726072072 823268997 437925117 322065036 559803238 368004781 276730589 217017126 156375392 212894489 176967265 710238153 219796295 411170917 990455419 3410001 899240173 654101485 657180707 441642465 975814323 224859357 624079707 726588903 676668543 572661536 926332464 831393045 130148031 858699381 133278642 621835369 192850279 777232214 671441663 453031462 643111161 653820944 527180853 89200860 69436793 321178033 102386047 765403226 896267637 347704080 628742159 982762689 160204548 833656787 777161505 34988403 105843908 894145370 674340086 233464345 641877727 674280923 596105176 156401068 11972093 609101 47332637 121088360 129560663 816785006 862429721 516744142 598229163 915821513 861553458 729757103 814647616 691253933 551324883 305928474 511419620 621393458 461416044 758255214 883048941 553818171 362624888 938049358 177962809 941717613 885985912 816065450 488410414 104776505 678209530 547863219 449863867 182603992 280578444 702474723 843139670 850511945 744840397 531730947 401828095 254680151 255039578 388338716 17353016 462319759 74057953 840999044 326392851 693724233 624158224 962527705 2531365 288161704 547308966 52649979 186773133 908758676 695411812 297369366 720376814 788448189 738038037 534626979 871119227 717597593 171955591 80374363 626162150 512254825 453181336 85079365 396952689 784748089 897733163 2175144 945028577 16835538 581555238 107398428 902122882 790625748 44777342 478603646 181135404 274886811 149499950 423666673 888612158 763752016 122334520 480467169 139425183 803368418 767323559 520619009 773677754 328340492 908861833 305440593 999253897 319544911 766159613 284848144 23626116 192074735 522425635 655638993 112928698 993597692 90053924 794870624 981947314 554367827 844678965 835087840 294348422 328179603 545392528 66416053 145573333 944376865 334077300 416479111 87020224 744537647 275779632 720821580 922660091 60257974 199489044 443952960 304204728 710643575 160530297 587724011 167389882 590139896 124390339 450765332 56315714 483694730 835293275 674635219 120803107 800011079 8457140 335367552 755920816 916811020 966691401 425803716 793184457 225909892 22185371 434473865 316707282 315461408 34165556 884241155 756013244 532587029 305784742 868192942 17796346 762783077 973398927 133147217 948035215 471989465 900200077 629942772 156028668 579288831 628108875 533857518 233970773 976270895 413575037 352507100 274278955 65878413 455312091 321204384 894050463 834535422 129741865 277716326 72471893 858237236 93624110 278086566 644312700 350770343 437390019 454316056 853509582 986960534 965551548 838553794 935588229 393898250 504106494 834522611 181754217 522257108 955729779 463831864 57565639 593242765 921185036 439135349 154921589 662587280 389053381 577680073 686872020 245219084 747389854 223077795 185174982 883641583 789956261 21760439 906543295 377794286 610757094 833563646 174768305 109443469 665751682 183617730 112885274 776875282 141738649 77766794 396880642 94192273 870955091 994521902 367669753 924625628 814636773 660616904 180349712 642416026 857526662 849117886 169700587 973556270 76869757 109717178 719758762 756097740 595140113 49949106 366374915 67017067 994885524 601298147 886651429 24457417 871692897 668244174 959890641 952190320 422442202 453573697 371128911 573124272 371849068 933514576 10556778 612303779 491394948 895971931 440020093 881819689 987758243 621236993 616916064 266079207 182436164 686562094 239500671 109283662 288537076 168216092 371843269 430120602 851780168 506724675 331504809 425948360 434487256 104518503 694669864 21005984 944383815 78412693 566887371 623077301 449698621 668379168 492725406 741246303 442392942 141808553 400420152 824586169 888965012 994675214 585484985 230755505 312008306 11004289 575848898 562113270 87696083 105582961 910546825 65314559 151547526 400716702 817902268 680704524 882247528 644433162 351682209 961394470 278557786 642156291 730614263 392384031 650702918 368372253 819204627 583019660 200022305 501706035 287566789 506207441 340020449 864852585 230980720 386589969 506994314 237459500 242419449 317226049 813534505 208259123 497660109 472088854 30485709 359260278 237859554 69367060 542338449 401449018 19741369 366227328 729859734 328039182 379756372 843434092 941936392 546231749 694609991 889720240 302423323 502197624 973312162 979278314 124094727 699920016 531987464 266566023 225940492 884395447 372650396 213843888 879549817 15879904 782536464 168908645 649314715 527613003 465015190 31340643 734692560 61244280 669023472 571280430 435572346 684952118 873577058 829012766 575537157 437625753 262920123 359976263 979377630 540420860 70406737 198049675 362407555 707685124 619058177 794290831 463837045 334568606 896690226 785415108 344295998 670813180 697043669 850073190 99608434 476069789 222241628 804706419 145345962 781673795 912685001 855641522 413874824 226826493 760256928 162614453 992946617 334875675 945782000 611418580 64146408 238377020 568407886 311272494 414702040 952211012 157012187 958352045 225136966 671785824 297057592 785801470 142841854 438045189 511395995 191874205 472020178 32958699 330082996 819988424 638927517 981261851 52903874 604728459 862398783 573401053 669977998 987355057 608644773 337306569 793310309 104949716 323524541 345835960 598243357 531688023 808957318 985034450 764271381 799985758 512281601 630370432 525207345 805843421 30793526 24108921 943325921 799459464 954634299 610280628 333006875 361154788 902442023 241286781 391005 42504503 698143516 883562331 908170926 83394193 726440265 92910371 334443165 659834827 38291930 460359153 868049725 255915138 171988493 197986090 996255535 775896613 40966179 981807228 40726168 318066398 462926950 914088152 611931174 324527784 777674795 578438013 579136019 399575619 978474184 935492844 521388824 508088375 433916069 461641717 959622015 386590677 901089829 568897192 574028307 167975475 41581247 301106023 397609772 912852277 691854317 364917713 573686184 596182654 856876590 454969812 692634608 553568388 88868369 942717604 468308206 460394365 264542500 169758656 106822426 994701927 787229445 69797352 59541362 383789069 559465554 622796842 664742527 238685181 635555258 345016541 376761160 557342611 910352109 749431448 675793004 546969834 275640738 637796674 405145860 977019887 731267747 562957064 752557497 328580431 660078258 481643870 711916981 550204293 626780583 293415936 593598899 328980942 961349465 282904049 609329390 561860918 549590698 440013951 850205231 902943114 243066505 952954941 281389249 127198308 4996834 392052230 152746364 322924068 853974962 274327555 167320513 839563506 738536447 493194394 894554737 360658366 137441997 791492485 775885052 543721280 532743728 750489277 41795676 77521658 398079044 6584711 219140618 795541556 62392363 348279663 986694414 227415292 403673358 129605960 186261753 11085101 889772833 932546096 878815454 710834531 586123420 655134860 436899933 983066634 570459331 512154376 737773210 212735058 918828255 35284886 486506311 491062067 564800835 899141238 80317845 961529452 450807369 744690472 526942022 633111943 627693908 332662139 29537696 158455507 415285709 136266881 964351091 772370023 590554152 483233689 916282128 942696230 937322204 672734565 60824921 340133814 845292913 208283859 298720436 731941770 292593003 942929430 229652238 544674265 346925407 515964843 527632351 660591779 37143526 365100887 470683428 600228271 87540388 980824867 345816162 442257804 343172420 752473702 426313130 307425433 69490807 48980156 598346386 23813102 853748982 197946123 326464310 754393720 230091909 936775803 420324671 484178920 729289966 6632834 656790745 381655475 161566466 814873821 673344443 326061596 555959708 818926737 463880737 712753449 732960926 632831208 925897687 772610477 848885749 545221497 477241636 180850748 59757198 944719389 560037349 791195195 896205673 789438458 694613108 754271951 452448387 459624061 6062776 891325929 784403946 492191835 254550307 82214210 789803183 278323853 14141349 131479387 84957674 120922457 288014014 209859704 554322883 762383179 59262584 891335601 19185757 253551159 128817503 28209623 109945072 844202043 538928008 125949579 889307827 447577785 718385043 677464376 780423146 273790812 930501028 805629966 778151135 84521247 380351085 76533511 243932899 844021559 53000737 876334813 300724563 918945834 477218686 949368350 748108429 147714249 627377357 733030424 96435966 814635808 127618779 382657507 670096408 195394451 385845245 229823328 854209879 487892419 165187857 669768248 54485817 967725467 740727937 387480795 70001228 781453903 179657015 540863871 740180512 47682399 194802604 248165668 646173264 564748682 779529948 645195926 449636736 762309602 919338321 477305189 576887895 451893944 255592981 596198118 635652747 428007592 162058176 97916730 336332755 2346904 587927920 557383754 589562096 772815795 878431693 700000457 718276784 937283693 42835458 664961323 332757735 349557635 727532233 64455857 717903209 754851832 212848988 66874469 835800349 744841498 614096004 705574935 372230376 270809469 389520784 207156572 924893893 730759675 125000021 286632089 548971687 583063738 965504817 64778226 734530961 609257512 51720715 957719645 834241167 777513463 654964047 778820235 343952309 916215842 115907061 555822594 984411417 699864561 846761853 307123718 860799969 2453740 146869483 91433643 545123125 573341165 19634124 481496521 199743815 7620618 62565179 536130044 610645587 684181419 714207440 597496753 375369624 344044411 44123062 769228820 520983142 181188461 638584731 897622048 208182539 248681408 842761651 458171287 886017507 873813495 476791741 918993916 107596364 117432287 29133568 305274278 963039159 397390473 201513289 349139623 984942225 717452117 540040688 765461987 599213910 325375207 246868179 710423552 585029003 1644073 661278548 46317168 478789301 35976017 844869993 921657962 683053418 233576153 105827456 882804721 430445123 766484104 796969631 15619272 253397730 193623658 458167110 758889860 813878002 212037586 634513542 916043900 801041189 375884892 143137782 467842767 750062133 883981550 936944563 221092199 455303653 170843827 7243107 627450352 614416381 573044255 538997044 980320233 65199954 990290927 24881375 853907343 553069244 211521062 974670497 805375721 873797153 50541330 316465724 677912262 298972006 572726344 970387973 1620932 19003776 619129761 764974540 896815422 258046826 377290307 646660084 476989536 417982247 692656538 768943715 557810966 874534588 898111066 928422787 900497693 48517442 703094146 659099983 424801008 913455054 458456914 392030275 643432668 94154375 30620248 539043429 345969647 308367762 59634283 465698371 510108931 506932773 164122018 492381684 878501812 746815865 206467429 39661079 959384431 337039825 249161055 657288913 599184481 106284406 978634884 727310035 171515013 369383867 268233232 968061518 485676696 284844027 120873098 822767109 136644389 796886165 615439034 884774459 267503483 184360439 73562808 518508992 615164083 173132690 141692638 737116908 368668845 841795297 288216786 351404186 51075344 457999461 21281918 928732464 273778255 680724646 265241880 158132640 604560544 507883837 676813852 964667486 641854211 441071036 218302542 101295718 703695938 801292493 358616763 43372610 73275885 137340180 890911669 120727296 696180058 473020489 589407704 176397621 345432235 217393697 87913228 269772285 337720264 240689503 538839421 915874818 702832483 452805328 666866330 94873201 516658672 123035719 409729573 277242367 668688051 157073304 675161375 389926891 400709301 620730285 85944532 616728317 72163776 517920618 531871708 336670849 991071604 262836934 790764814 964568396 276831789 901516216 761540244 206792896 729297428 849450819 606802132 491787203 288575513 456231027 824489864 512970177 9271028 990237017 901881512 305467823 932447273 972290572 632898941 919397134 102337275 833471924 346801549 554612965 564606330 13752184 65796529 651741377 708563332 584955276 720718083 620294071 513978805 462586920 629901798 959333732 218815092 76272273 263790858 487021301 956874997 211121677 715380323 464696849 574384687 738990323 317934635 738180592 284525537 894700443 636505573 765549652 707308948 649733989 164170081 678636158 148252568 302477249 929511857 743565377 836741639 663185178 64300081 420221680 216011198 233609712 718574983 798826602 384598889 699330500 882175135 636301335 734639222 490291233 786125738 928010721 661436444 922016151 45776168 771684162 820971102 854456511 18965210 679354937 127603972 782092094 636681936 635582025 19358364 296745150 110057567 382326147 183928193 657068018 382861597 16813435 764329166 529316754 354751474 264517711 750099315 597157730 173891596 546304425 345294107 417800492 346877917 451432883 542836030 519770049 800996899 768251941 318429728 684547069 998272223 252568895 805534663 41748417 86648415 142081221 787915523 47564535 875187769 28060421 473780332 148586643 720502852 760593365 579983715 420112781 174495149 332757397 113222417 967363561 611114968 579087914 167011172 43316145 256044413 623845381 133062166 670905335 391484313 360847129 332324775 577445842 989581421 811018212 492925023 691314538 945642632 909595758 149950287 900714727 226360255 382415174 620260686 594849146 892942891 578302592 295665661 279723103 12157233 968003771 729280706 350424534 462202497 592686111 465433554 811565100 163901707 560589654 653228323 197878451 653197835 985983645 363439987 953953474 313247753 167180459 817281868 688253118 89311182 466087882 502582270 138888465 198082928 87134921 751322275 295392044 892993355 366561277 311884571 708881035 735564547 64928835 337825035 237383086 702883460 384346114 911712485 176744738 15292674 69877803 899408098 795678839 953552379 506078000 967262722 680964936 938129968 414053395 302333197 519141433 93857968 861971799 806467989 227594226 792383952 115262989 342285551 705046053 697059881 98094792 561904954 333373070 505448866 678847659 528477284 174977519 630975077 299457111 639264029 322374417 305290216 980997372 227775446 347439045 125955558 62884692 268254679 31576553 928420708 639458456 673877026 533491292 822140336 804206483 550322317 958629901 206742875 979110287 131956909 440403175 435281731 775204197 527079651 16049387 562433421 94354033 225142101 94942998 908352162 105939866 698540791 704290422 371899451 151941713 23000191 706111770 804485199 550104969 339442543 139074848 646104614 597280448 629035276 217316776 138420045 349309697 93955435 365485534 46958741 630938069 64973408 594807795 784067867 68687442 39175309 16732702 14906692 491153947 382339162 586072999 496237500 93694545 903793398 431847380 511016056 264919719 893383517 675329786 319262645 864837199 718814028 19421043 149586676 953578762 52611658 326883999 266388484 717763615 321257644 836690921 540018168 502220632 928636039 682446276 27782703 788941841 9157308 414224043 457302856 890958883 420325875 912870945 275942962 117696247 788285850 72122797 8806178 135597691 279958766 194235872 378818198 332871205 118520812 876384091 776089679 698392051 738143839 372274107 91726937 289527661 885594835 481334956 103689227 965023900 2680741 444743904 431968508 864422686 388296177 364740368 685672985 719652620 20845729 461455616 284884102 947840012 172659045 207087738 568201403 608025168 819445685 699169360 558411637 869760394 758392787 572367197 109128884 679285245 540996551 881913216 830781130 516085611 412676702 511773352 357544775 77807139 758489141 233758660 283055627 215898621 396508840 595335630 209286197 847926103 463722210 317134026 976344884 213507604 518161107 540310211 149359038 184451238 135345712 75287241 449702606 684514050 368601983 853087735 890521769 955914662 932482306 805682289 243630553 725813402 521781198 260572765 816960563 229683304 170209466 328059633 734027731 321832237 923656549 540596069 202422303 714140032 368380216 836836350 168056513 640707979 944240229 5783813 67432111 940451324 641087713 260497355 860748068 941113098 50733932 959109034 419016358 722552176 62576275 878863110 733916675 936610169 603494307 330896969 181649224 307449329 950562226 208554213 381614297 593079085 497563815 308504148 659247188 192003082 365190178 750346008 408641448 698395891 456132763 322085820 272333836 202945235 389250117 37411283 475154168 234131490 881549345 691739381 533716277 420403677 20575993 335897543 899675081 552812169 580612186 616463599 819663116 235292471 293114787 861428770 643763609 539366012 706404589 906624796 204900183 15046006 125312547 292543132 828550766 756046539 36883956 782405999 587212887 717495722 816579805 645077348 280144584 777809099 855395864 422578776 729173196 714360168 302743730 953759022 723541930 646016074 262877816 130468557 95979515 436168894 709184772 665885992 486578329 713723805 85380790 154629692 197029796 674425922 190822839 361874184 6064529 188241300 868910836 26850456 87633932 175696130 101808424 102741247 610789655 252574595 834770388 720113749 781198832 712882837 359514689 386659775 964805163 681231675 19279483 263538787 586256023 819852038 749913693 726324343 671008338 668970254 90766468 194906676 742976448 941929198 646943070 475738845 96627087 644946894 894215193 604399548 609413038 430670682 71226794 962284322 893511263 83609292 615360471 310175083 731177250 444310497 434928163 399567351 789802439 169493980 443436769 6771762 597335392 932774544 881446950 389173902 960379722 120288592 315311321 803099014 885661224 609882106 318817690 617423002 300832489 102761464 525577696 767187287 421259196 387213109 668318433 808840781 599933732 949607206 225181852 101434903 12320480 277702092 682682075 90207320 271538944 764917423 355511339 686031033 479529685 299789784 99440872 287640047 407138815 845358307 441196592 168074927 793725277 333840872 266888429 221611712 193829919 96917138 279073487 806513642 627168440 66656526 395928906 606183168 274811878 639223056 290344102 56373469 624125868 318691034 915185893 236171619 212004949 383725617 667663066 847222905 776223607 580039010 741865244 896815894 649872110 194621509 408124173 804451888 157413855 249872695 893291986 700747726 891697587 22923292 3785566 312303606 902330145 785335143 927491946 347082685 146093860 358874892 374239349 305379899 897655299 21360009 433066692 665777045 832825926 374495461 784863087 959578611 496994757 971090348 465374023 747132039 460372634 199634425 345184236 620001933 76216874 520772196 314605261 392267845 170852899 988629785 663176212 188545018 677375349 421059 389530558 497223427 472536417 412335512 603630214 570264243 681155687 272558680 69808378 843169647 134175061 375977289 592979559 400347043 817987648 574801207 908364770 562491070 471813508 857037436 828435282 360870975 919045316 301030386 941573213 233817252 167121390 224324101 826009968 559034488 948710967 39156636 413074631 606398798 618060055 745643829 156694366 777027264 33922903 744343495 402084354 1187187 519145985 166764508 616456771 520827916 574067046 669789826 133767030 521919041 783053867 925369936 381618108 846802891 747579434 363504227 429738239 749649770 151358872 945957728 519140335 897294318 738153444 44107384 796101378 851841829 294810315 467915361 638715258 338667241 13907282 399523927 327091809 347411486 209904838 784323360 438441860 627164591 800411067 499413518 706954364 436863882 159255309 528727541 976869802 626354094 718178015 196053042 749686583 388079386 162242973 675752364 954654227 209829084 71081726 31119317 433210610 670509826 778218237 177220508 42569565 859215273 819919580 771799687 661861523 953896946 233926698 813966743 707833512 938810633 83071930 582516827 466370424 895355164 265286315 633889771 564676510 85588075 466949981 335634402 407925125 674811956 839134846 854141802 87072346 607121347 414982661 906874417 400181016 552811880 23532073 119531370 762554241 205659522 849483890 323338455 428018457 25600366 408993962 999289787 9525300 130018458 730554857 352553959 829511910 27111801 436072326 572636847 59968020 298222209 789174313 646047731 246880356 383465269 844875453 591531801 747546439 285930787 259588983 436469773 253659634 562189017 666631891 245239880 815196266 292433651 741627540 343199176 273347701 10029845 608718022 297934866 601206947 266330343 605859521 566865716 216753997 658864922 551499806 181114567 428866448 787521644 4170689 572464356 866732634 187569823 181015257 368845622 110681430 419977080 714205655 608660970 53340672 781153745 732621176 559136951 463215257 663709820 414533059 496829401 256998693 834661219 261269761 84087065 543929974 966127722 97101510 598113987 736385316 528694918 703986931 821707437 81833617 516264114 937218214 679493430 773103077 820813041 589522256 350867015 232772876 155176779 159263138 615491657 854461892 690164945 246776987 575832887 355880074 196546719 838080637 173717899 80018856 337161433 570599382 755897167 68894764 358210471 210763384 12264721 707849459 711601725 16148099 390736101 898042263 466639315 852385113 833409384 740760963 749241003 966540452 885828292 133551846 727509779 781266267 247663015 348269501 44821080 471585979 759227461 183984834 343645147 622270788 614776158 591272576 712800248 515610568 865674550 197647432 264434461 470013529 178822302 925551410 194818232 576837457 61932522 552246046 743805513 114760277 222585851 531931572 941638223 435372885 188767540 37061477 27102546 406342016 202888327 265023593 713002218 339950679 109597796 899771325 568910508 728276632 724283344 476241966 683463998 534785366 526352718 728927563 84988233 148662499 50657262 114934379 891189887 298864602 33815109 347231148 161814169 434819617 620176239 348607228 581780570 610496992 932382228 952958216 309041804 434090641 621967719 805355081 871750405 431903214 61335574 940751359 766177688 537459963 553106277 254351665 307818287 231897346 324423705 9495471 490512047 882046106 334049151 175197972 747183116 46070432 132458605 220999102 469796161 278485814 581404227 349897688 859016015 929982666 387766246 667878480 128359231 631969551 838221510 90585564 207162662 884154370 841963991 120904195 987347231 463894759 122694809 808988678 608588870 22359883 815007248 880928760 130517965 667772927 536987086 403053493 744214498 760402979 869518567 540054487 96667328 381742107 649892087 665924297 249363882 959558801 497631526 866698171 65908203 29980539 891589415 367787942 348380113 761809683 948646441 225400395 131357627 721771744 519324652 902459185 251056904 39009454 285042107 858389671 13972261 907761041 751122783 890323142 437812866 798988514 674987055 914668145 817506203 932621131 721882636 87239758 857753585 874774451 336732248 172101069 606996236 311013456 778507527 966925860 839410052 716634017 135414667 429356376 20009457 188319079 424631778 256779056 274006512 356338094 698471829 540826683 95085876 659382732 310206641 352692944 347925609 639091551 505100491 73505297 39992395 73768262 974169601 444485863 198680220 296873138 293540348 808458496 357780265 750722581 696647400 947880406 841587905 304540715 694745212 433403818 490090556 40426745 143577848 509709442 595263362 788710092 608291870 137429809 109151356 77290807 638318144 949427789 298010648 139870743 805735221 160369462 66744148 165770894 899594582 19415317 815953971 362763277 192906895 569095130 321914044 724474692 665694539 326949695 496151044 680007473 119075201 314485184 706308901 688982553 952990127 444403114 534421564 964851333 293655002 497892876 804620157 574185037 362669203 363408830 748103184 534774667 118190065 675107934 76245304 379212708 821012108 364740951 478208306 530766405 864940179 252985049 797256264 658388577 349971629 572357851 578499025 620104500 795456787 118802973 924692771 906015045 799914628 34930985 687509152 233632602 950316359 829901132 698486452 402456464 851185190 558471074 540960467 750537276 745220986 773368332 433384563 936914694 861396517 436759598 94235673 901872089 461361287 978818171 143036494 456717291 940426641 204317994 455839910 949550261 148553654 93441852 106247866 826194173 620029947 587324793 438551853 759647182 198640354 529323378 781694630 316284799 792613240 41435263 454161628 854828202 985922136 587443389 127762310 8488245 934149787 223281688 380938600 525929803 900865258 113102147 517782349 440837214 117074035 687668911 846891780 64295984 350358508 899378592 909315688 306295744 476191891 35500830 307568734 330465372 843779375 935976187 860557777 712203931 256873228 727899341 769395887 722048852 199775492 882753268 369540339 480133294 535464563 804839832 938333601 342077208 77022783 134999469 3211202 110493249 970146774 292260327 407740267 626828841 757537840 733763016 743422131 846248979 26590410 909345944 108422844 679395720 113433261 125539433 325429938 681063779 563489121 985237264 614567112 101043386 395245059 952674607 973521718 201129975 74169386 26920239 734620481 173395393 634140932 363471932 284917808 458476561 85167163 126294868 147752024 861685532 940836615 592904247 320557075 167634030 573803300 863850089 249502400 816396753 38088664 626156602 60970957 528535129 773093623 238068166 360125354 352310110 931075534 614560239 325902037 701184394 762620485 627448662 456571594 159630280 974207418 322561393 276709657 453471818 991655968 686063991 752097361 367359886 169737453 252071783 62736140 837368665 613406236 36169482 271510766 67302327 709866807 138047728 664048033 778869752 645350474 759970677 152203735 504549311 485713132 861434291 550203466 319428586 59251516 220558485 50953405 592179626 933335265 687567307 258674425 997121906 927628806 780836045 993763793 723353084 882944099 831867869 258277916 853118289 281041463 93278466 324116932 365569463 701039430 409777932 785154221 812896967 289240033 442870932 910934986 311561818 377777629 860137210 291144217 301705624 806499223 813053798 764266391 684577258 537422582 472583625 702472785 893143046 880365165 360990169 754467161 853739239 885604842 936809496 762826697 458014931 802499056 412176079 989055938 224339029 593123973 831340812 334259569 772367681 713928758 904193451 501724679 440464306 957599002 344473159 243323583 936482064 85543888 620358733 567562201 438493446 981983359 153532906 371129249 636570758 740769234 722189593 140191593 731857103 216923649 310304407 355699851 115931746 860332491 654207726 325625704 54059022 817515380 888311152 585120878 919552998 116303820 848309043 753768717 397807689 745695019 950230553 503050429 46248150 863716460 750799302 422479876 964989823 623141367 467613360 352545642 702562162 691826873 676416268 591591555 893618738 677883177 525778394 207701734 858009727 585672774 146229220 340074297 837184357 342474900 872420025 840287266 769659195 693052196 784708530 781956952 815433882 24377994 320893678 948172437 900146536 528664550 941099607 87776919 449048530 960473567 487243931 899856939 845123404 125857697 823308852 56771363 805325715 488860642 509096546 300735834 136189863 31523297 577558063 315519920 535291096 83495525 130850150 864134928 102738363 188517564 386438053 683928943 430821161 578217404 311883080 568816325 57311049 445381315 994517114 567360018 132177028 257989816 697909290 324239460 5972627 421949193 211715856 155026894 123918702 667607723 420722863 634409063 738586204 357380893 326910541 149670737 863192296 490874726 484237304 988064185 733352422 445569812 202247565 814663119 190946421 992185660 664226215 918632397 849229044 282150785 531401907 862589177 666801682 85897472 821707742 846429848 923916740 210896753 434177058 167630593 855685705 519047685 790051649 736022154 935591710 521563770 582356159 203264152 316112916 32382489 652822255 94304918 673114175 343326381 901434343 301538037 381486331 676543887 451931786 655530031 800964331 827011741 670465920 783059396 307980540 371847483 427003959 349715266 364288869 87247707 73343464 351316282 347151516 88570479 744367766 666216521 674536557 374567030 278390279 229846538 714847452 376793851 650351304 742201903 962728773 761099782 877537592 928169828 931637054 871526704 964768370 100488808 157821360 481521819 808580961 488909563 768240580 402740711 270496181 688832231 965433841 169827650 29667555 341254911 602566895 585552488 214593329 139987486 934901959 894010772 42044576 553824804 692089283 228495500 257542665 909773567 421456758 222657953 994512892 321635740 863889855 292288676 14933471 781306619 253228481 909402615 631660247 461272344 789229798 477071745 936995029 916286978 231036904 296152493 228145555 61386442 586334655 405497973 614364559 682074252 252590766 436776530 884700433 30372198 807321924 132853584 284319533 730132870 311336789 250036218 878002871 575101980 98407164 76349542 919248207 569294949 834444702 911130423 325610081 833700510 606690023 824507533 12784666 400221976 765586380 433211671 764013174 531435808 459158408 883171087 296175664 777211923 796743329 842287921 256653271 911943251 803302883 237630404 364738228 194769478 945943390 341660564 271647203 994855782 702728053 946172667 107437892 705394983 613324745 180147924 464581761 342415886 203309125 999683464 663911430 848891557 7267356 219568130 90968591 423531644 431239377 865508027 99675545 227366195 974461216 46510769 707912558 289660261 231323676 759702121 50515233 749265345 873128982 752175345 540123143 154086903 315317675 496147679 613808190 283673538 732731070 787590485 224935859 190430695 350690685 821982964 710128917 31400746 722859355 249612014 206032091 309413730 858607124 803399161 828012613 869944426 684479662 86704976 272378460 470197024 259351669 376461244 584867058 845946482 306037755 432289932 975479196 448887376 697771549 467873429 664437437 819172022 263072000 421753140 832415355 875166887 454266131 379469136 513835976 319812905 309476357 391489626 978474331 920578128 254210004 838333253 646388406 84773435 634455495 11898257 261196575 685638148 942689638 3183680 583846569 690228956 935833483 478106857 588498729 771206386 805539148 315538584 420137281 462929539 621399312 389561589 585964888 373151951 36343173 436856607 282980000 199893279 81243802 895387846 534746129 812462537 857576083 758261539 257678187 455958307 735344876 249501680 445089846 781012115 26092408 334174327 854484675 62630785 110541638 571412101 564776743 897031262 480833463 350424430 363574854 556894120 558464877 365520660 334142665 218035424 638257490 211372252 989233692 47312783 581314463 399039154 636495738 534213191 624815307 77329424 582745828 274960293 135155358 615199472 426484768 785219910 493711652 907569884 832992704 906336986 838809521 49063906 229040156 438627602 636059103 856168852 131724370 921248423 27047572 627281430 639645006 145326425 826191100 870217994 143341244 662492406 447316879 775683745 196278808 294995534 265585409 275276430 653415843 643534398 826682205 340914451 935435105 166527140 50638061 41486836 323338276 957291887 760527687 612643199 978454660 492155279 511317571 185954700 222676450 406308349 138883848 510241401 507002728 9854650 629918980 345595433 992580355 929315286 582665962 972643086 745066604 952653918 526555060 331184415 714904101 467325809 850853800 943992533 838997109 55804715 582467923 144970810 416928363 163945403 317521545 409005535 386762978 878231635 473108837 916050386 38972280 44281386 902214474 544582843 894793623 110820742 551640041 93378232 53861740 352983726 784902707 385951869 868390132 520354040 676711779 314816060 959121644 597971387 482352128 353696953 536569308 550222682 317158100 153700914 508695831 366434368 846802422 97544572 440090546 723270111 320038337 710676715 93969297 88320432 830139865 802306396 584044121 669953080 965559848 868085560 423895674 633140224 333982695 829711725 523217969 613509785 531390094 112282732 924466296 368428959 75345125 972312379 22607387 556551603 945942517 655044698 239645352 514484095 209526291 223317723 919481723 208637621 959776218 160110931 895507119 233922832 417844530 159911648 642240048 184909653 672354375 230269993 650941615 65269834 631778953 421091931 375571617 19690434 847201207 775136303 180924745 414504346 237944020 610606815 818558893 115944624 72622894 279460659 11608989 409854453 964697947 373800571 915990708 449354066 357151281 642540941 680717648 448876233 261321178 307667909 409219997 109279577 402419391 771607563 785539718 214124557 171197078 970911691 276184261 73244917 786252634 838096894 990186460 677485614 357361235 200360483 526096658 387056859 756601095 178379069 208190070 262891555 20105295 191036123 574194149 808196152 89367877 432416788 711881721 705026392 212246092 954167944 732227868 894448325 8470548 555120987 861508739 763467719 744524432 506777148 46458143 854307505 451783164 726271584 841002676 118103515 445642715 257384838 462579917 890374314 1333754 472844023 371755957 464212616 811161455 488338044 458426246 439646696 415842194 343271790 41365283 698881858 749762316 662642093 692371251 680762394 340581576 996481693 387756322 389568506 903063800 283724332 308723756 846957938 939304474 323279315 867053651 141281569 984513011 436157836 819285341 70104741 967752332 264089313 214386648 300925865 166972221 864424925 883213344 855282912 592059807 225051160 164201810 289920773 344463000 145890226 349155419 499062745 947378519 795638863 278506215 941445924 614711882 129612318 387914351 214429630 686341684 169361620 504937268 375486590 561112341 892539569 189301567 651211078 432591672 641988987 603835231 850057729 317108791 697493887 682661932 401448350 669164519 98338964 66564360 645085982 578002803 763058456 726376729 880509055 801334851 590050547 14608977 266161608 394867978 753127056 923679334 510609427 972804298 8419303 951200219 759715957 241286082 545833846 797175542 880727825 470002307 162938183 184612042 494702608 537754845 250760672 778889263 29498536 229931757 49701727 337502401 115508753 220532759 606350431 287296490 770677389 670353418 883300103 775613918 35350630 643438009 238917635 221288082 412625647 978153053 7211402 277706438 753114499 847708798 486692959 503149828 481641602 773424360 271381696 103622811 275717209 497129391 276668805 672126114 424897656 305849134 377965818 555176703 420167770 47812873 325641733 420978002 307203202 771646255 489219336 699608592 632891771 325626576 519518965 644710258 412146900 172429677 751621183 413212791 932330539 782403015 193990117 146400741 127416351 685775082 466158188 832210256 8968026 323749678 981724390 499665934 609645459 243869995 828211175 341356608 535550591 589034696 845176973 76241356 165032674 206581294 241471870 514847081 552059273 238413015 296503785 57897862 30338115 326109304 486056066 717004651 349988587 523896348 415167116 297991195 296457826 458057994 461706442 801413993 686114709 571914715 71784074 874542828 599818357 884703591 758249636 847070982 405095162 6311378 29403253 549611996 483808811 430793100 458764515 820677731 611030799 352693321 823054685 154600784 59042745 659770881 449251033 417851426 332115523 770314748 54381781 711675429 693299150 144870342 316132951 724455782 883543943 987469363 104979694 955643840 497627551 297901148 762483120 486531024 141275216 747871402 898336316 117150211 712679132 950239174 840325048 219615106 71641230 818546598 17035729 184072012 893230519 301404295 654514110 610645281 47495858 956740587 8553788 651723397 225694947 270065054 321283477 681228744 973007794 895403703 429439635 546709254 829272979 791440016 319862671 452907296 676914941 471850446 34846311 774197946 217994612 803361117 344191614 516927305 314045061 688203634 881700807 158253566 852632766 559597705 255655861 655305440 564532924 9328740 380337222 820068279 395680801 581552914 359768835 119320847 817993365 225939433 653705208 274898757 897323725 815515774 406583485 251295093 692776322 208079295 179075951 67278473 558383734 774772945 393339829 702964785 906381173 550411817 49031611 898056166 287006542 129560199 495940923 932057575 450730207 210352618 201461873 474135615 504738311 199332516 935741731 482011579 327261872 300144199 466960287 290889460 557876177 403280044 11489213 346158925 922073185 689815802 605600217 2549226 132502625 608062111 760884698 303378111 678337501 43408460 871721009 90802048 885719526 695034112 24928464 210212018 458651032 742324990 85897275 246424219 397680404 288952019 234561648 358151242 209345158 877993552 88359428 307624090 604835102 984254356 554722058 84162345 387820566 969900037 979054114 17519456 602964914 249603914 950051698 141526385 332548668 781859422 415740329 485360465 692635910 727264888 107746041 345316289 727384938 17336351 844740132 660350283 664803789 838637596 169522032 508172607 247686802 143168135 785645995 679461043 814657330 85390266 828255530 260272010 405737255 118249818 838858959 671357291 35497711 31236437 305675003 797148870 215661847 596221659 664735 860986837 275883313 974208874 640318512 946181525 326914775 466435018 786552495 800972496 757563051 754871043 222482081 334544662 494442840 329887083 447109907 582515138 10945680 133320093 365455515 402451185 963187725 149552509 457862745 595519115 412362387 464845625 116657907 31010624 241271017 521172036 615243671 832593805 643322595 749134426 831972089 271217837 960026714 959343746 625710171 859187627 432082482 627467783 304699520 390152276 363628375 890587001 898361019 372205637 181495222 936383931 533130717 105442266 682033485 22372074 65856837 453416766 502150431 54138747 176700379 332177760 511239730 655030554 975358223 678885114 732889245 713290696 806697939 309426057 417186423 57244870 309410727 312824408 351098083 187018148 571236242 947278710 938510093 519883063 865038627 783797948 940014884 747202708 819753324 326623432 65907558 803949606 885960208 262835719 130957587 358589592 95867445 202845093 687864693 759211997 301455239 605893786 597423326 641738801 537040700 323019946 376977835 199288088 168268563 994496347 410864956 648736865 634616917 134196477 753216251 574419743 70551754 330002854 374700891 143607468 707589070 791206461 945433815 861229999 881793343 393878884 704491758 56496402 394011775 666447500 335913265 45346571 784444798 799287025 293025834 585072662 48234423 958544017 112263801 215697911 603504929 577319730 491067836 959909050 920967494 577339750 258910114 25416629 527513652 683512713 650663643 452188801 351669632 645706421 593834016 455928835 712522058 631062485 48980789 559697769 118740793 839923355 113679842 146520359 844615032 224499324 597470975 348701689 57742784 801546171 791068511 697163234 874792015 955190364 702162663 454389039 231361768 156181302 626488195 137954165 103674334 121915100 126973986 968763536 131348229 334695088 501759426 274209188 408616120 653627866 842014819 304701469 940964580 735286859 356382736 455166639 807524850 349425082 116708314 462651990 952211419 406355113 400883933 103904601 20651805 919533916 797524281 739070017 119048124 454372587 242879771 966139618 27600969 711046182 418244530 462377309 639921367 3873457 614640189 890968336 107859974 725848565 5112059 636760492 913568254 930420256 426001460 920462370 961961325 946677039 212383038 809704882 876237447 121000412 61602674 727123676 865333259 698363571 946570549 170638959 369455678 946661635 123880685 20342398 632354291 180170723 744884748 554552167 925535099 236119862 317512208 923825866 462638518 567206565 362632057 453827736 94517002 119361693 265434832 610390533 16799337 763826519 540379053 626211465 807850563 86863826 168857506 879410925 157356955 902390490 449408855 398258235 988443891 939664382 449616756 842813125 660211551 895340182 622893486 4256044 809531759 54772929 149596603 102408017 533841476 643797094 686653536 420244323 667392136 615278650 178604646 797459666 858234723 636311219 16615843 151319388 821126543 784314127 445744618 622986248 759274056 965552729 61618211 133781536 703396953 977815648 358204215 954204216 967179017 765586108 613016344 878042415 609724212 751832526 841578943 274367269 988153908 27341759 923846704 787550855 295135988 599144318 603646837 200191756 307368158 938642372 727380385 537409199 517506796 251391505 518204106 312932530 543964313 360485802 765248024 203029669 469105389 104714918 390834865 260482904 558354804 493788889 732140235 412903917 668737865 518566627 170893980 465979587 723487751 407308077 570850664 431319177 467771603 573621991 563402877 250836274 96471389 327298312 532373030 427018490 19939035 20194132 746822850 612872040 664848139 428028755 635333045 825487941 640135474 358568272 255310437 918998694 83333411 334015335 932203332 958341096 705496111 713903736 535599824 665767598 745697846 450366252 451916427 531258343 578636960 240839923 118923771 94611396 887780696 400152323 97669046 815963845 996256729 54502750 749762644 750764202 874300443 66024909 162550139 907828609 17556393 4295390 600740048 725195422 628434574 464129772 21071113 938632096 13950052 986445589 393572063 887223145 413186889 381355074 3906069 595995938 351670495 927036962 959779443 837217093 38880599 290510386 598180556 729681034 709672038 16666796 826622974 744577273 851102284 983956380 586150889 739698906 779950286 519490003 152863348 528562117 163906108 741006309 240862356 312533396 485838956 42415925 4196676 760510828 993934264 902547181 973482630 846710458 205968397 770986744 247427171 656780848 191230932 347627284 849146862 55333581 714317573 637269951 741691456 124503765 299821598 804822849 638734206 281218257 29695783 574355112 167286225 239405719 77605034 43013842 241277544 819972676 497883330 576640859 357195394 335755583 391581709 667048362 962431585 59918127 455886509 316462067 55777866 509637896 766190419 188124204 541291414 709558797 865688117 618378006 615998874 162532027 488260112 160995129 771612349 496902626 85841711 749190631 963706213 205638038 478833242 907736626 425603335 909054514 305446891 992295939 526228762 26684765 750663870 535825661 325808162 689895678 114014525 703671697 354382508 111496783 924445264 969452024 258720327 48460489 755860085 135759154 822386831 563648302 726773413 972950535 804067365 971886736 138844518 535416838 32347570 627488576 805208521 241110154 414559466 952627165 610042466 139966897 535344008 61977159 811792466 450008932 465087054 235124395 859843644 848646741 668918790 645344895 930365265 549762808 597474945 227274625 224376901 541174419 765745562 633030833 696609881 275766313 791991349 488982365 24922702 621021066 24679225 56921113 815850872 717145685 12363929 435610563 162101931 938867938 244385872 697377916 500936518 621641568 98098531 616784564 476089900 365317308 375026904 850180637 81306320 500163503 401576131 621525173 122193446 304789431 19440959 320965053 728273324 859718687 108296556 923298500 698799721 990997237 822460534 191398556 244680680 817565716 340967568 381558372 408935237 735963163 425439730 721274496 1070618 693417841 1407457 426820506 284666766 978107721 346745762 990128552 272923984 798169750 741758862 962518757 32556696 678300958 255295483 128828118 449549088 845491816 778860621 968155464 138838576 625870530 557698028 21360974 599560089 389422151 305675599 602363460 257168559 854882263 507537131 783416016 781646671 198793750 471281732 746626524 793003744 330421369 313613543 424652190 589825875 605863477 332623713 942269586 448028186 574971212 240197200 501692028 155132212 944837512 814221142 410531689 71956525 939899767 610275869 575788714 762251531 466585968 120133974 20265952 31352681 727858324 811879869 461185005 911601509 374923727 524338451 495415293 183358627 837427404 547380515 404712578 697928530 795527945 39815869 607541821 548604205 535253182 25515710 336293166 902995563 226816507 746478344 818701223 534971606 989970829 809907076 251674932 296153276 387173901 611395367 160692665 865499634 183433946 69361895 539227732 838431451 568544541 858955976 259179639 394189655 146857670 627049686 235040978 266403797 587987342 907312160 833994338 647211087 746642935 923510212 274219374 835816256 435697733 418369506 95191167 831838897 864710025 293058725 395669867 518700846 13053086 443294014 143765580 323040974 738067234 633817833 285721227 551456817 282120831 888101351 346487247 362433913 100247269 529629826 40171278 270544729 817032267 436529166 382460295 852108290 827310448 297843170 599743930 205928503 649632992 772343397 365376630 5506109 530626536 625337343 824585679 669284577 680336293 724897823 806239775 357210747 955253232 790436932 840457485 579042278 89210486 628439791 800324227 495631244 112391078 852555944 275287992 983445595 169744314 142054659 171247142 149632710 927292336 160049051 940065427 657586127 199653969 199443216 790760456 263342072 645116206 276700175 69277917 789731412 147751838 561720904 14473645 910802807 664827331 248296825 621890651 454360190 959008130 2522206 422876436 72096272 15979919 474175940 143683404 238816607 549450335 969686400 192598211 856606490 172585268 197156715 207443575 581527687 463914263 426909797 136993718 159781990 500245462 174994264 412782361 254086153 444359437 813918779 215745911 707847747 574258456 118277892 907140854 511653494 952677409 630253238 7293442 734130566 129520409 128996954 207021646 522079971 134052536 54008326 36277211 393319297 95950973 471824850 416930792 666599134 941567408 870077152 318682626 642703875 686012004 682498653 95032577 646967932 912548976 448318069 509866493 261310304 56798834 298030441 185701724 511667278 399038679 390513782 732484045 627872365 688893128 245028586 362604350 133768551 253602116 687200023 204044784 377435764 199388682 319184213 8447332 906630999 284117664 516963078 364536683 574723921 423993174 247104918 321757975 295476784 933126728 427391864 451777984 17592142 962847315 88025381 511373328 577729670 149822495 910130206 84230898 105616705 960461598 369286129 285815961 431252330 675812998 473740588 424135041 275235451 188233307 334408812 164956526 269552752 279807074 319328594 624412785 388821199 190555437 280330634 387860950 357545383 477795605 988986821 254833985 412430988 609056567 435816122 56039824 791944609 273876605 719331377 322288629 108799113 600327831 947894257 643610848 500731248 583051518 390483660 156764431 245123090 471250417 902907294 675385478 604853929 955494266 421943881 704337296 973271292 722665064 728046774 536571844 821150557 255469908 676891096 299939581 814445978 458028959 803373736 391074398 980642331 495301231 128807723 558504789 926667966 115129269 808829800 798168212 709610999 519200040 713290356 767903003 781068728 614654797 776590697 112982313 813142146 430261350 190009447 772078926 383623260 747776905 968692122 933082975 876200915 295768970 281911349 880562550 123656954 178839050 611418991 761831670 691398772 326960244 903687566 375435664 20346983 855530743 963113690 784157749 999443836 516389768 833970342 23620129 374123505 732864234 52405836 294196696 474318975 89595302 478473263 924211753 338656108 481050893 363799735 784913191 280399241 262263349 288531289 272569643 343241002 426145532 386042766 57515997 898032943 565856015 742581208 505564968 944539134 124195548 237296835 196514371 895684228 883083420 618955743 275018917 536686392 382709582 160793798 372684052 75264793 554711996 261436957 870740129 192678060 486908276 775384716 584014744 484096256 637953490 819001286 567841436 968056490 391232242 224126343 987145103 246099147 669774526 852141197 206785695 95035910 489851878 864656804 772411 803642252 987020005 255480992 212904228 603837969 165071095 534461274 115304285 709429972 920002343 59366580 761316147 401356956 583300930 368642459 266301753 754793654 59604197 930253820 415383626 6516218 919770221 848696279 849348239 950691270 42664962 534560296 424874094 657534718 436109463 78519806 262946720 347851539 446450402 110700394 622450721 617789179 606150755 754732678 915672882 665496113 932351588 769456246 480000099 805556159 84094197 577678433 885798021 690975025 910276076 896643195 954357943 380274588 314143210 833872638 796933466 720473251 877702490 851622700 557061404 581444457 963849066 401845841 375070195 194692508 354160914 27097277 936913435 209668211 821486101 941923532 142462229 213094828 667889654 643609566 303659183 283059343 115526923 417687904 853731324 929630952 75775848 305903555 114114653 165133838 481335791 302610815 218595954 164964833 727978312 454448666 704886054 517539778 431958755 372218140 788087474 565604260 175247864 73147672 192365967 51928317 437273738 581118120 679622531 525331915 469951071 457453425 305181847 136960400 736851972 282866967 891966499 736292449 977379288 225284177 678890944 670156753 4618998 660243928 802527830 39146493 115466312 176130417 749302031 675162253 188962177 99901152 397060702 919002542 982304277 776351997 234610432 993193752 463491140 823051934 276808444 434380041 867184664 868258731 110405277 384637253 286035045 656607238 882235252 654429211 846800829 114625705 517315425 938895202 81443202 640799883 537299846 251842939 482539743 840388526 830714707 38272583 212797376 383581725 943563638 870544440 785235426 885949160 868847857 968047426 484580290 349053229 411061765 480532454 113498539 416135436 663193407 886706727 350652073 409850543 380265074 946627221 275862 31659338 247316927 200291655 754791957 93883413 506998404 878006488 991970184 746641237 325560433 551376754 893075495 629403472 11910266 979600322 394656742 575822172 769227227 912843774 364750727 102191828 873459478 490939109 11540878 8482839 773256444 817992890 126525777 472119696 383668636 932450385 152694244 889758386 154979670 588053499 452172584 737532152 92177359 929104537 98504904 507899619 816860910 707367055 512078643 314395902 950068202 856300236 611004063 715806426 290753091 637219786 837565452 712916498 983622328 299048067 726255687 614785866 758599254 41741182 974657756 399233323 737618804 920136650 621154599 78440804 9195181 690083327 716526402 67728309 642365413 293987638 798095132 234225371 280798022 822939162 56257377 977811364 646854217 778412504 869785739 405094881 334532775 335867686 360099800 790012267 275778917 500198211 598087764 398239526 705017807 805645042 500579791 83500540 602013817 583623558 991036380 162199519 292054079 621566418 93794529 919335112 559526215 780411703 237750019 552620474 695404540 196166809 105168692 833409987 671880723 479590245 709090860 194457326 990977927 153647252 433167211 375476570 273082780 63494051 54179895 901951019 738533347 684906392 415559333 273234055 646269737 385650178 597952137 263896225 812540558 502985721 446850180 706108085 61831286 65294615 968664832 608490500 229264271 742895237 995799340 920464857 174493640 44647920 955686913 478940293 7036773 566578321 657322815 386106981 853102051 987982370 14525039 200765143 314127635 924549102 279426014 441725769 998853636 352797632 814767529 649999917 735966745 281037551 70248106 864139768 83351026 6485848 594351504 208163893 470263421 271807587 451181512 907079271 782359532 49746431 164176523 341034277 58494143 815285662 500543960 687550725 922720436 262214980 980907384 426116524 449013215 966388853 895359485 746951364 669259663 731799868 622157245 135068927 109063521 739341620 445235670 797522711 110130235 463130232 182547766 88828110 381081927 893634738 843244938 510552047 589894397 866497036 98681418 741528909 375984661 817799230 375322039 86663103 293995666 541513606 624161752 519840043 700719305 471659435 874972032 741764985 519517765 531375355 96582469 858021786 370008293 8707403 374703238 754722444 178407886 506246907 823856752 589493328 342050415 85339121 321876206 40372462 759489913 61581467 815273404 333441405 277615079 703302380 976963928 727018768 268682238 367854953 733296653 935879632 429600845 14914067 776674022 750581733 125473959 19756921 62187202 735708287 51259687 496503731 247676733 623610075 594088240 961582429 294940606 904978234 855357043 388534944 808410745 429608424 646396897 21430312 465120100 494090804 165878965 523087404 918717760 767958909 653907831 697392490 961534613 378148382 250254575 118702122 116973237 161707145 8621365 988125495 925576372 369960492 361000611 408975594 545169525 196812419 587172575 677429280 125754273 652319758 626181074 834648384 205145254 277457752 862469300 313566519 382053825 706985463 799956736 575195773 252956141 931620223 395785082 389701646 777560562 380494999 770370863 37848690 127126373 415929831 776665712 894426806 860407195 719309602 146295260 88553843 203203762 509364739 802272088 779155907 233500312 8154442 228623121 682501713 606975483 399155651 270267511 238093894 649495888 326311745 972943177 385621084 463914972 654424986 58493066 654848465 808409252 202457527 592920456 661576555 900893049 955062908 315305177 29163639 32031732 797816289 993051474 648876490 559741044 91123163 924688160 456431815 480381221 963591534 516450985 984178769 661539058 631417252 426741668 690371543 747834007 696724626 462685709 342711374 879535504 109565518 524166440 793919284 844053291 661401598 536487041 950985106 195489139 161447627 831154413 11151095 308758085 657436902 362134406 309085813 318801469 625879179 448435890 817968042 355755972 21402875 428847902 422025154 322586127 140098431 76891326 484431463 399744527 947962476 141052878 829002447 164646793 80983580 202616786 744618170 278819333 758914032 685655701 589887852 258766288 489376595 99876653 19586231 941747464 724102836 165671671 359349231 383802505 113393813 75140755 888737520 75625210 471984239 611153650 185163045 358977999 435633618 739041351 972519033 128078908 256230224 843432205 604335712 541775430 107597184 673094920 133333215 404299189 781413896 983134278 571147127 848311060 360295569 691102235 551012921 323589825 921679308 394572832 308374713 935269846 318516853 598666558 385149718 133120322 129709133 541187232 246682871 567212210 23597343 356395193 570355336 591704481 78118332 98059335 668331396 346705481 433482495 602325835 629701669 724236470 897307338 549501970 758907955 508741051 407818505 717891636 183199227 15888876 369908397 586380683 795592018 943601836 484879023 246772537 911453851 410039072 509474067 829413548 177780665 70425917 35952098 143520409 396878619 463965367 340570673 375455229 884865718 246275601 384422165 106985753 719390986 5191056 587210933 363934332 24816157 593816647 992102714 758267898 108818556 451485455 624972245 90927023 187897406 433561988 610167235 24895743 414339075 936442642 901702467 794495380 68223981 302850027 652651679 659130471 667839148 936342018 216536365 129291951 851456635 695410203 228596292 42638581 217444880 261813437 261307464 495348227 669546937 299715894 801589667 87047660 413059135 631542948 988458950 568310032 946202106 972055267 93539372 907177743 461565385 991028123 150874968 895127513 499270161 187070268 136929236 369034399 987852736 719541763 694876979 803583199 706622798 354986731 490753290 663573853 482143161 206411453 88471554 283570468 590036357 888990989 712055493 337051277 784161730 475832110 349910783 436544557 878388999 689486661 119353456 12428271 854457456 752271671 889314265 985014264 443044004 19065269 342140930 371230661 921739476 834594102 754920638 765096202 857676723 229179647 815026154 33485522 708427393 826284562 966451303 418965092 490127361 505697349 956310814 41583192 402939271 60662060 833552897 956461449 596239331 646682410 153952012 221167641 567885433 18861668 45467968 74315894 496665643 845537743 227647400 910655062 827422824 625991713 316308566 589827509 699480105 652174039 968453986 955557330 540663016 453351229 338943474 804802113 446703534 515067234 843433265 173899729 622301194 690767137 251864397 410885023 881093905 789083925 581563009 994864657 581791841 319109034 168071696 434883025 561707806 278424590 608791367 230804180 209122557 462407485 5609077 245812056 370588460 666868980 673672180 763080928 447405425 808788157 154612008 196693305 704244492 492482789 727509883 770142581 937226191 545177993 971340126 610760947 736739599 292580740 19089742 672404565 261363880 412347267 425837771 930549382 717347333 892429045 498935135 399132608 26596624 38158606 934094748 189453946 332188482 540035540 753139229 868714618 413727897 425483534 386802311 264143821 826994331 721930572 97771134 479969735 764589908 658730212 847542458 771834882 178073693 925644537 671839218 29004644 730293203 640589425 89511915 834930458 920023387 290815229 222189164 452137367 451487015 487001622 244436042 636939161 76928233 742117885 69393503 355918624 245459683 860495030 921144458 911188095 114464985 173811478 347263163 8381765 972058905 750817204 360223198 793596751 304191355 738950128 679325424 303322048 196721245 625747698 211874807 149665800 778060195 251655850 554492150 5621979 294940604 490789585 20145922 124858675 123057825 303610342 843124025 197714261 931014348 489291827 215972794 17366988 636112968 244754631 233883310 907712111 848950687 314465402 647791434 13329750 144289514 894814444 671955144 343291371 731426502 384181641 719934313 452343764 479396186 72024700 566092151 873111053 714866002 613187520 660204101 566488011 888065768 160622100 710031660 587796885 787734231 558544387 878392465 607733302 482036582 175618778 987702493 777206724 735431014 295344052 842505600 215694492 853383978 745794671 454594039 566955105 231018897 753670322 696912067 175579903 276996353 367443699 222668398 456193961 442596970 461669220 89225869 764208604 269741632 605883145 820754102 300000353 683013506 217475240 926684049 974655549 732262585 960012242 750912448 426803145 791529196 501414883 245646589 98454943 66807482 128419572 224602366 198679458 465487165 805321459 292441222 194619394 936875290 325697165 58219104 70365746 180387200 907640893 503875166 887903212 80508201 752687937 568114778 699722808 638022478 642951331 764385080 467884129 216037561 893074480 798739934 36658937 818255029 722133381 163153475 690002652 895856667 37747455 244237918 816019504 215237193 494714567 42829619 546606948 593523746 622883277 926813642 177477160 889563929 380105418 631235128 574299258 800553505 485457725 213717654 423078303 881899194 210652784 224548872 996294430 238867945 100056690 266829748 899702228 715964732 347206428 769259987 596936919 354592717 103091981 240686230 718489740 923637045 412460207 655615303 997100963 697488028 911324464 792084783 542869514 364879280 815538570 513497756 7349250 327599530 532932479 840254445 76785934 544964679 420095123 43382400 907443964 455403211 234846489 872602565 602248412 684529926 157068585 902966313 809678863 572746831 960968608 297496616 315648309 666236544 491695405 736882501 600562492 150081798 133633849 463917833 874877531 646180811 60894464 429458950 277896456 374195781 750120069 914834651 349362445 572209269 855802763 293482274 579693685 63780829 89001634 561297549 487265426 224323726 220037673 311614920 630364418 202319905 793197881 62692752 252733609 575241390 283187388 896391594 416612531 673081313 809668199 325565405 371828628 681366500 535158700 629231866 520407562 646867055 502137550 400073694 970446361 676830145 511233493 298551404 571125257 749924768 159494547 410211981 781650802 693115480 113057436 376834353 80443443 522921411 568184404 44248915 580602731 525196861 102133219 684890360 280516230 931386795 123410745 748874793 74110013 206247550 850499595 23420407 87631241 832103595 693988572 72163711 801789615 182302383 240470519 335107807 812760123 921054355 89039975 963207236 233340930 368547043 651921671 530184416 567363103 827280823 728763255 474412526 22073334 730418603 600624412 359706542 138613559 913880807 557612076 203116653 730855120 940198425 324965535 528855420 334504965 95196023 595483440 877220916 586586451 398032319 914328170 499886841 507079561 39847223 991592863 874626101 857761469 625975471 306949092 686526296 460873032 26142843 634436378 386147296 181026001 59774840 557720813 341465678 900143939 96140818 231070153 851319594 850399186 144557874 932361191 248286728 743724541 77388626 62048839 970958468 489694339 182143340 109152691 809564988 521313909 99307530 615165371 794569438 632176164 270309432 507191735 399345434 10105902 483008142 748775365 779954605 26891894 981805097 798715856 239118677 862167852 39443374 504032390 16711904 946905025 98451534 357565026 265348639 228170224 315148479 117401250 87084266 859013311 913976380 573577296 637008424 495070587 876475791 806255420 61015233 826046647 931997701 754498300 338423460 462502736 751583347 563138546 646976977 46515562 503813688 657372742 498579271 770499440 86171707 705340139 918874127 72299290 488486891 822888597 544966716 628265057 566043706 776341701 513709037 454170248 718225580 888084162 574775357 913936159 515750981 901621923 518817882 802947830 401878161 726765113 230027895 558777647 918228648 749697062 967113421 358628395 783125544 836175572 646784671 45445267 117600824 946051443 314024756 111987297 872525446 736341241 888878820 564284365 778783305 186350377 423467525 357641311 218405692 192081803 148875259 118575582 383698091 434959980 517338668 90605412 194985053 855404520 867279122 390633547 789524398 760677596 232566562 903988021 488295544 115599348 499254238 913264915 758786598 679654047 657188565 977251858 40138917 207340051 643234963 641140406 638128487 190946387 639931319 404393665 40273007 582257444 440911839 347320891 903654720 397008666 322392248 305440893 616037867 214349965 80466167 147898659 297096197 918123672 896074575 109735183 190443946 765131819 725611912 551456621 36934789 503637744 342692717 880767155 726778560 92102242 536626634 344993692 426478613 911473857 817986943 421732910 585493697 409388052 864219757 964303541 588282503 962427183 83751037 929148099 454916024 459388069 25811619 536050743 272103467 2862552 742940631 461247026 962461757 204341749 436196890 439250980 436547029 159898852 178759037 858609854 484600158 803703397 658821387 185660158 377750229 578934515 609150946 551378219 864677042 389256921 165946915 652673482 415019263 549832484 885228025 835223221 348621383 599671987 886427286 981620743 571666594 327428894 250661173 615723301 533237423 793840083 368534037 984377273 837075090 366438655 367677828 235918006 955554558 215877277 704957651 871620447 218388517 547814763 331579228 717380656 420786885 656330737 422224258 344483324 879718693 100333442 65007022 377077972 59774996 122947892 343073619 752356116 823229419 161112806 930829291 103932515 114045826 673204804 212734969 151955112 758211906 427903420 147331590 249205533 2534941 761397128 256778148 164103995 123231365 576260262 627675248 97054148 662618486 366082015 420187401 11641803 660425596 354826947 562199066 441239454 427276197 618212522 42793817 930302942 821233795 644989876 68702330 963204717 984815925 983983052 819056708 693245812 868166757 157661089 23540607 182408815 312966972 116842408 757464575 194578195 944984181 801626406 223590300 841065575 209438538 299436833 623907640 265298358 741543559 623937897 830119873 606878615 184757621 492999573 38659878 842618597 360085739 116665864 574586723 820004290 289506377 289750761 664008056 873960095 188905077 167766824 63898737 308888365 429652700 133161343 600951392 493914470 609388149 888985451 814015329 735398034 563112126 794709559 345531025 89557054 399071934 27038704 632075553 768743739 292070917 523734644 722699068 115106982 942366629 475423326 863223587 344291559 892620604 866279449 653868053 800650917 702952438 931744981 375378268 725863894 804477309 577677190 838287690 82693815 496212742 317326322 714114621 688232141 151131218 459617184 681970579 79884771 842405545 908476126 873299639 949000972 913410005 193969609 41468957 682689958 592485678 476840250 496952892 887653462 24839315 390955998 746560666 802220551 50927464 233335588 641299646 358793453 577968540 854655557 945489215 811909508 485848745 327991617 474957491 72222099 811959944 806740449 375396028 514587939 91117763 249547442 648910599 737286025 947979623 34742288 209950786 83414627 542028297 187427609 572805934 42219154 459222726 525523127 751273351 155215687 526435658 968954009 338614043 765682416 275390399 298968632 850474683 639167055 765429211 830938067 703270720 545239909 176713183 824832884 991285388 946046592 605597068 253433321 293994638 612026163 158748983 222245837 649613874 508088667 5131955 950523007 447009912 427646490 136642141 184270628 940055901 254451937 863980572 829646259 252897519 968505953 925839969 626415070 482772030 152268692 519584031 594532906 678995559 998536388 143338708 201203933 536668041 550589050 56263560 607430917 333034447 904149128 783573450 299902334 629119085 365422351 594474415 169653223 861758106 298239345 892752850 146014631 651619485 899004760 296235104 330732273 288580797 490726845 464880131 86678971 198469706 164213209 116500211 928530628 823101604 748386864 260421098 357320344 420030507 50225552 531202356 908218500 858716998 645074956 412663709 703729572 292761453 539884545 66523515 304553941 49653780 651395858 993047467 754329790 677877186 253725996 707716244 542850259 802836224 859105671 8517415 722617419 779152224 319008152 975533015 526181413 146437756 906368041 599378850 727541545 919816438 603368515 805823760 374205163 511488376 672017467 252019502 205129407 954373047 728773807 435913878 445424327 61437801 794674561 378348129 678384363 830353747 343455454 814686008 405135834 624028222 997944378 73840201 765466127 868014591 43395413 166344266 928174792 47158381 47346476 750178424 37854990 901198442 364702482 74153884 69838002 650140899 444962710 58138371 877333325 711800265 399350168 791224707 628633916 97616148 235209533 912424056 540869803 346927050 575233261 49466060 453253765 328360693 101797980 960563181 983617929 359549605 854415245 615163598 592818993 208803573 94374847 842387184 32953545 108608774 267450493 183230810 117508192 188888068 233310878 832603031 517102544 702530083 435668288 131845825 569758135 129648536 784258755 16460913 393174654 376897451 553085911 138353619 213917524 145622946 203562092 735444115 947048245 145424338 291818178 305024485 739923935 220868757 472061019 160060810 93620953 870460747 632333060 127286473 524730483 789039968 861439444 478392172 51365065 679003461 255377443 539593932 373431 570226039 277913239 476486859 671151846 358490485 390243357 766902985 962159819 888149195 1995494 523450038 694893462 493004299 563391859 59909643 151620433 552200142 873972613 553547971 447064506 292263353 850418475 713296487 493690731 317026163 26125236 431203073 619378356 542639537 486680771 959226413 182947002 873371436 2219830 296875012 889325669 174313895 973154366 898406446 556930914 116886762 92044879 438834396 12814127 181094347 300516384 946831808 336817670 54072609 737467837 167082268 991633907 770310351 602217323 411887797 928738245 74347711 782672579 438392023 29342740 990564325 27008414 998268762 902956610 805814586 863119652 399315612 147429751 969051841 713895103 767900806 347224993 666315395 633586467 118549891 89410168 350018450 269768525 139544969 2410112 314411787 315724158 45519126 538167295 214920973 949360201 25013810 15293445 446632387 610163580 239385964 449812331 757061217 787141432 746692315 387820494 497209377 293051613 866182936 16533661 173254466 664441371 41867341 157421571 804490258 260288994 895572265 292253176 386963427 771751282 410116064 915236159 849335309 418916686 155388720 375275102 626506483 494678082 756782434 679138473 173637889 130795108 124702532 426116917 963826086 632393229 280268073 918190560 561765983 828830946 28484594 862699094 51671983 238951122 621206020 436545801 18283548 148144913 997562958 836352045 685680445 700386071 443640135 864690882 8145577 22841771 901254637 769233812 716825859 215332315 730500802 674806320 847676662 2172406 526870746 833869811 800721972 4103839 306400458 635065079 836043895 988126647 80129966 873811750 558338176 468741993 812098605 479831346 640732447 944534312 953401718 617424788 460413470 183988918 468742720 186034570 204034908 39334163 435089865 210469919 883954619 29060492 489769684 972568863 803679780 717986487 867774130 282592292 822694538 642675564 638242363 724178833 214035687 499652052 735613131 874643338 284694076 952644696 877698375 547854594 486537624 97078446 531526943 243115186 218165001 692764371 302934856 61655574 480428200 347893769 935526725 62309500 315021211 40384477 155439124 200539121 288896779 271349539 271313739 681131596 343090985 819202808 842654204 409010222 953806383 108227009 513781703 322670082 652434275 174358054 179754449 381558518 901527050 513343523 65127879 237166082 191797882 589503468 32204514 774131432 310534412 433548043 684024033 229578030 632450852 496720712 168062215 959356710 142076969 12711869 380625186 901607656 742625935 687606206 472072332 488884563 620143824 484393977 656729378 513886480 683886702 501004112 930371656 70102415 967000821 518792705 52722161 845577736 740885751 669118592 357983117 757094526 613805834 259697817 415532317 625355447 163633365 662799440 141464616 704481601 431361537 925107456 829382333 931753081 159173950 366519363 913425520 421472122 394210635 690830077 42663264 565686065 244835300 571898457 312546612 203134796 929134297 896429261 241101336 115138885 386799865 457169682 546097094 210156889 736596768 784237362 176515195 929066898 299731246 148563831 29088763 570361025 256094480 142533490 250046614 173096316 227001782 911483651 290391075 448700710 686582301 601444685 544100606 26715367 893578306 806586813 944491790 981777070 502738996 634753284 365726402 39122483 312088327 692159523 522449939 469463030 516824527 295805275 612349817 466315842 814436529 932444985 835970814 554334756 814981080 34163600 465885488 530924150 968405623 117549696 471092263 90557144 684007878 185796971 842207356 968208561 454250504 311247357 476514394 410060341 851436426 67708200 236685934 254102871 946333594 921420845 73258221 800358618 236276629 447536526 616240278 784092998 712410076 549443094 192137651 500470253 795708120 683563483 728179979 161694180 622434305 489346873 512087288 661751564 42901192 372635605 934738010 392883984 965297592 371664281 348801430 485474910 672385879 854071737 717087641 677057327 606236984 72902580 321560280 770068609 234267893 582150222 268930134 620987679 758033711 305434769 50408087 662519960 532593299 490536146 117351078 155057222 496475345 986445231 64081695 983664711 319497125 280976651 219734298 167497861 185633745 905262865 306958147 480785325 53828636 193604918 427302597 301599290 908519517 104396600 564701270 379016045 360391277 58275354 835303735 434195020 114741546 204931880 66982955 847424683 320890245 843144438 81778819 919406109 203805547 981374560 86164755 433707268 660330201 612087693 863647035 880970125 600355536 375311590 687350238 474117280 751735387 399390240 435921009 965860092 283476874 692815672 993088483 215354399 628226172 674954610 673972663 837032270 783393870 222628444 716224241 349172385 599426095 269439687 699110687 226649064 526340174 205943760 14413145 603927496 151050470 136100829 84217659 336746664 966063417 614746008 627130860 51113912 957859472 654826231 414113052 326466033 537623363 553807926 618054656 145207570 157720484 447199448 655105623 188323494 571220764 985012908 24958309 753651451 96200466 627116227 783927035 244045353 502440441 139526267 2797164 163588879 91698763 219564153 111547290 611882584 619074443 198637990 507476458 285139316 254922561 63195707 774926664 619507610 322945025 501936304 858945838 875142348 859024998 888901323 940122009 949462737 380452880 491144345 748745227 879422009 382811820 157598572 759185048 940842333 978126060 603440867 182162644 866352987 701361032 461797857 17498332 920305951 999655490 407837586 152450648 990205526 954401513 5758058 28605815 153035899 324742216 178233127 482147820 327859146 714412864 373183435 78060024 142131280 626494382 22335651 421618531 515404509 478323584 414486338 563814006 782348292 956092329 82072454 503122187 691255083 114158366 635523734 447805311 908122489 801455076 761110488 883262905 218808027 883895305 442601990 831510053 687205133 9280664 283336217 125796541 348382349 694435506 701860437 746106362 947607461 418099831 704148806 954470376 69077349 244022287 757832901 65892116 561697955 38468781 605575913 263509904 962591488 345998220 191553814 223405568 640396263 73620720 921540348 327267974 886641540 62674721 388229518 21745619 127726549 449770355 772348422 943218203 672698261 566511932 344047852 226790943 451919693 434701541 436279050 355179040 496085073 497652435 123809395 548125938 797451701 482375291 271067015 811454696 9414488 978140501 288910820 670284515 96524520 930039266 285018492 493312838 470505682 879801011 335038338 117314306 586323792 487094610 989444979 764001418 525491553 902350176 579606032 956596960 8934858 7170428 733835369 6419592 849019937 248506449 166157519 261732499 765431227 194338702 155452382 342195088 366760119 75747059 270278015 231082151 342912769 364018494 669387738 868171894 432950598 591044412 177247844 703683121 34135552 792010429 472868571 528329357 706274929 307765148 366848065 605140677 221732764 213289149 258322402 586748833 33186135 979478279 858034774 951082608 484128053 386946669 105980535 783147018 772905883 749705451 361620070 885316554 243482797 996691330 991535765 803430553 949421406 93849919 314694323 939732961 290755686 909273135 967794367 169653917 28344645 929656433 183484926 192627784 36334403 459843876 647757818 797645290 580439662 825801076 944116619 290091280 228019876 441596819 955570633 579555538 502265985 266210748 658001689 842330831 560932460 230347567 687178795 453139496 902637467 607137592 897331437 605790867 809303295 359000618 754095009 286136638 563691101 863570012 496318408 959037932 606471996 169270068 948238127 83636708 392902124 314480667 950381803 105249523 3497609 5342082 430855257 788670573 401812973 758332389 133857817 999793202 134548675 837169861 257174813 567751083 201796730 176020908 77881236 211563714 585009741 488878381 375669758 25448177 683052090 423567330 143919134 152856114 743155724 530450286 884247552 901072911 103722576 762066299 238199545 210029715 940439393 934980283 617019043 176935254 655126620 467263463 257023463 85873273 983592491 723588291 647256042 393496991 124642943 49995543 227095848 871213812 619714257 988601785 722062937 85821490 391201629 639277953 231447937 827954584 151232560 754206289 799705324 127603945 856055319 537741330 471494707 262153845 309870509 542755259 68573485 831793682 268044881 331257920 209886463 949923359 874976553 498815400 157093143 306656384 358272040 438942205 506982952 233548710 330007303 688741453 866246959 930463623 226297924 53325751 277112431 123730079 378509352 596025946 469120119 830509301 260668867 338464354 42623769 494332182 594075631 280124162 662285424 492975389 41820744 86174579 564907492 795032997 267869243 858374134 886305055 632480469 79989750 630105816 575698708 765036889 964411762 948655978 663872771 168548200 454466927 751076613 887955306 133401028 843203701 531102221 396250396 346563761 904676307 371606765 901403691 863217915 535272100 5434130 857694962 571355896 541141190 719734270 264413463 414483341 578873314 892310575 364237954 669325080 98421353 365046316 279152236 401599626 119092882 572849039 874588753 320397917 40565599 717873132 571560691 361001354 163006357 426803176 19373919 329651868 440811720 332732972 867396075 179935388 706165839 4565100 811253552 928583205 654206024 526874721 514263316 118790227 147718302 701930701 838081475 48420812 585794049 668294778 418276018 193490367 133951206 869269820 419277725 998406883 822564499 27563245 866209672 901214323 810743306 978033260 846029247 643852089 665894177 885598887 249828055 929422465 116658541 100712846 67108267 660604194 503507278 594133788 227046495 241518714 523527406 553132117 111755617 285562736 326613306 930843200 179420772 562084211 252494065 227020018 852427111 250107254 691419018 349478020 191750569 958743802 825152085 478232089 310597306 436039428 878576991 600768216 751936367 660393764 406238849 175475449 428993249 933643374 934492760 909231283 84454775 183817859 588403538 306359111 522490330 332800135 412555930 359748609 61294082 767900710 484346157 1697584 718781995 962375325 375587528 379206965 917376983 53136291 665726709 916972909 588468435 210964098 338638337 626643269 558193203 83968266 949358600 657688364 372616020 249209996 925901800 721935263 79009498 93191917 165157963 540695582 220791216 602569101 528535712 3495991 496387599 487967837 385181726 68115576 535196780 32428755 191523531 103329151 814483088 761435885 235030631 729873131 562077831 197315120 866977160 446086760 430569892 74655406 649809029 254506150 417992581 259875834 680413821 342994532 159455499 725153333 751031896 349583712 627612517 773679362 199254472 650831719 397976325 921981075 281986119 910503240 518189739 91719833 77703697 960828384 125679703 303832919 321350959 814852368 987898457 157338769 200349810 679120069 995832899 139884181 154550900 489326571 861520881 713707835 963568788 267896195 78887047 853521119 514402298 269097354 463925619 639477608 335590039 784711182 990653800 961727302 330498593 476836384 66238308 919179376 556002586 897829082 905832362 573754721 222109130 635756127 441388230 445616159 594378562 579222745 950261388 49200443 796946522 425072504 597545241 291134152 43785393 665148792 642126800 904002921 469582256 352945949 238018143 243446592 879162249 382603438 465785275 54997247 420786736 391668096 764844316 812284119 744632425 559137517 838905611 35050891 147351227 424508246 2502224 89816414 69834359 676362533 717844738 53398816 233593012 490439116 69462911 177588009 121659730 547354312 435472742 130397269 622382587 789211289 593862312 286289672 720509726 539939272 395952247 626293812 366356724 876736491 932094030 542033486 639204989 534897304 794134263 431509591 720529024 937046644 691158390 306854095 270829711 142514731 564621863 506807496 895261186 173937002 845141920 972676312 162416889 731934191 731176392 551561759 345869659 415542908 779100365 291656001 183987673 609953242 479009312 621057388 327359725 385911260 672812415 454656857 197973973 387324508 59845615 234813504 215058843 924835901 266341562 134413038 474880013 892959337 697957494 143659696 894863557 270480592 924753406 11539035 741300259 463205231 418147193 345761098 725997135 287693128 355276622 513668714 884454456 419191653 369506615 734454564 491107994 555927510 341008173 63839345 910332657 61281976 278682740 692706252 212996232 330994477 105660570 899789377 471297391 705653854 769858675 850121560 977062269 583231102 756380953 653957163 468083025 820560329 36323570 158536791 225686870 883175805 3585708 234317570 762052797 473631974 546263608 8943069 575734395 528908376 488235988 105114650 382499922 531962413 644037381 237784442 563196874 971802566 698053527 27384643 687856437 10993805 475807386 842134849 798025896 282889462 555016049 215847628 213284101 960605049 277998266 596471237 793351924 359152026 334520678 736377229 480629221 57586402 223357353 180552213 29227792 976288741 654766586 867768532 27760248 400469818 993166883 966817735 558510562 172133510 613723183 699468405 73087967 529704821 19800432 338028779 324266696 828572341 777321861 597908671 751712701 487061762 512707918 34613777 344095653 887756319 755998716 14765190 861417523 818873303 146280963 485555791 23611100 160128248 176356380 346873118 290286051 825925728 724341839 627425076 443825487 178488816 224025826 574180438 441090543 254522773 391720307 424826068 851187804 536213052 691913172 168913026 616895480 533237989 506704176 113257406 9827307 344248717 211593969 949530227 311584292 986099778 473693131 779568904 486157914 586133524 66683067 238314873 245886737 689896991 751032324 717455426 965938318 303023748 955829813 475532139 982035427 467137901 162874656 180971391 603765223 751609357 482331361 791480980 977829947 420253599 968931549 321193806 640662084 870411877 719050945 235356111 397730362 827303591 473273217 733198018 639203342 555489720 655409238 949236324 846919301 977731317 618238409 653658480 48529954 237166270 976140450 611852333 81195579 589094782 203558650 213025129 834660837 765624998 897777450 548367225 652192510 718420915 190045398 324671293 393686837 763660579 668325869 304152857 484431605 932625796 323904928 340114943 375148663 318326375 417278318 913638496 90996411 844456293 923981337 670995265 592432779 184479523 200311982 304952611 346195318 911300679 977263491 618723605 584572630 699801736 507604784 497099181 32180937 778942367 609478045 221037580 485644600 650574411 49450743 966237399 628314834 147170136 891984559 272375099 955053074 176319645 82621058 180706796 706975798 154008557 310879093 817464881 182507081 227620398 835967188 109157062 106352152 492239944 460083509 512509695 989455677 401359922 790468979 753876914 868764183 374062050 824470960 855647290 521378000 175937115 692447834 243433859 605575766 122148519 291357992 82092791 961522532 633145563 197978642 673173899 805149048 806342412 113933919 847389889 455867354 237031011 858514329 460014490 562556062 387926020 814864022 770447277 411773848 827479589 418946673 591999495 835661163 276077822 404174736 37228109 105808509 556208595 202620061 998203808 117591551 715045359 533099407 272336306 973200617 260860832 651812511 45893048 560218365 827429702 262616916 946882929 580687810 139368510 839489913 745126433 882571144 963193846 109650978 344869273 418995816 201510623 149502636 743910700 598013760 960757618 62600123 806586556 133215933 879587124 673795645 386807215 207415883 876400557 732622433 640395759 260347682 947997553 408971432 401580791 233274182 794897174 958167 923605696 973003900 819284036 939707638 471378646 3226967 726649506 330488925 947801926 492730925 906735330 185787044 240190371 391428637 746160065 640536757 537495054 199147539 706795775 910166967 670427180 684424637 65036901 730220065 470420525 923624083 636051145 16200367 350347717 746318036 59693825 735404389 602623282 564635276 53102322 666185871 434297918 456360074 994788487 812434881 68251954 198257509 261751983 150830296 800203754 642308221 723234406 538826489 407242433 979188477 443447217 930427278 587877786 132870865 146006165 69217612 3216618 319421877 638103080 323669808 206921891 959424550 929481603 638304640 190007108 993317488 722137289 808057028 537595604 569907618 149061155 213192404 703832544 403140243 836353219 208093641 112171648 428513507 487588324 251052810 490608467 721324026 330694602 722304579 394799739 435946506 459015871 384191077 32924328 897036556 935117328 44711601 637988882 690593726 861063967 995324326 84779894 237275817 698169927 421565975 292136732 963349279 34530806 19440659 878494161 177398324 385690528 583547383 995748841 798083533 169503933 905268073 125860420 424639884 316265422 103424083 777213771 652669931 91176798 363169771 654326248 746628376 816024835 944653229 750961299 930535451 286163536 27963995 443476042 45829046 505993198 256497924 555030420 719562111 81371780 625022461 394351486 151940810 264681414 339920864 466961057 619762617 503468396 278163603 670964760 891492916 878180920 86864958 322757259 194259692 459161848 340712029 977903910 672615512 981213051 789530789 402668706 440405946 980707228 971613212 874594879 766770200 717484094 222657553 809565884 601864517 433280075 875549972 208708975 877889236 785177011 785188870 346112811 802303789 791912564 196091657 769280332 235823729 800273805 812550792 301682876 799550868 511425546 782877755 681326311 804900174 144333823 418318873 423694533 472173855 442261889 226794345 778990035 474471503 4012983 644227513 610841879 462092524 385295305 15812569 507349535 956942036 369159659 728302312 730664451 935000738 511336532 570323788 385942624 476172992 330657867 653371310 818408028 571550816 177808148 191840773 772708263 111565943 456367368 499723915 279891831 331092681 348810366 869257411 176877446 596307672 763724503 746448508 910891809 469694204 16905601 366049995 760098320 448898888 783280872 217286921 770958764 887817886 467967884 265377756 974140885 964428198 927119599 733494832 194498542 614205392 155664536 408866874 370169832 588875348 555772189 763194999 608256825 586585396 205547282 180275880 7286236 993446456 350803489 270954204 620917595 592108527 737436142 717702247 934816704 501581489 756351281 65221349 827661479 29806494 244219038 717297976 148751403 717630367 712948732 677764240 688177136 645951589 527287061 147137374 406967850 914672488 612609719 307375201 575945866 628691686 525257152 606858138 166836561 155230956 13405203 422493019 326279237 520473669 558177687 552302896 293531059 880987533 961706817 359377661 143821171 89557027 291968008 910436320 906841568 996463917 593231346 40518475 848068324 290570398 935011592 828309486 41041133 128899118 151510619 311705801 386022892 286005342 43956487 561403419 487728743 712011124 453420844 873240181 72012384 199094913 100292855 673450406 524199012 949786718 93853081 386101714 723024524 77141674 861383755 445849174 597776759 727441616 541974352 350574819 142328646 797418748 40746741 314522730 910912686 376488234 682721417 693452843 528909792 379996184 281211239 222245030 575563679 907924049 595701744 420309163 862684715 316099361 684950160 318134858 558813783 534350244 733339834 658472931 672731257 680274361 123445734 218942745 745709421 203136775 357422232 834398680 172573594 943305214 370580315 692506965 523259377 37996763 595598780 429446922 575569636 907893912 136605533 433609662 818345332 902842882 214102235 680301692 631682599 599695014 482822882 578714009 255941130 639911903 10327330 363954609 770892725 567079883 198185306 376052902 528280133 562495058 808476233 389670568 23722592 732520998 53593784 718153003 249379125 792186302 240660091 473432038 39979897 764828765 300316012 585726435 645529709 387636998 353903214 384955500 521147093 656513423 692826732 553403924 436969470 342585741 242277205 970825147 351019715 24500577 229003558 543748482 149877373 160567091 212267233 327769559 807538196 540074993 46408078 380700266 793213688 896398936 202129729 408304959 543217183 933627877 606446613 356892565 226377989 744528352 627355435 128146679 369779888 413711965 251427247 969212476 838006962 414148913 45860816 355253890 856750622 69145851 168666059 965631017 401678996 10543655 817683681 318101472 941055803 91010017 593600093 54733723 508390333 501309732 511657105 682263956 193562453 351911858 267633623 838841682 126133180 922673936 95257489 991149727 82270270 982304655 384053545 541537939 278686374 258361160 65028370 359530628 697680460 816338714 873821639 619820829 211768589 483100590 275377866 179671366 221930576 240886902 30132642 676281652 365800962 439009447 628289255 222771556 173588891 749952580 847553839 904008092 957946134 688900371 753531421 467383781 318058492 41137575 770898269 737807763 942787165 81380436 2464158 386446405 335736778 280315967 23551901 486536924 617367654 717420621 770009371 877864072 967049175 289838 441841122 826760636 549041735 526593887 183996614 601287987 47964529 556933659 782965409 517676786 579897742 532525162 762488658 670694724 822486122 791485216 649989321 595344321 106848851 139619028 759846386 969573440 848434970 53924071 390746570 567054314 114881825 890271871 519490132 313004073 136078413 731401100 660670362 344126896 24864525 707959753 183565998 916594046 430993238 108822452 258574506 236027860 351922603 6469527 337445809 307415874 212313611 37639808 183947244 197567899 400592136 502219083 296345742 448099067 736856249 779207059 292460752 669803204 132576699 989780676 910240505 177318052 780726325 612697870 792606541 480011152 936771795 215801449 309047585 542546629 145561551 345522578 988511182 599626948 396095972 662205718 743894457 556812381 167939930 255099461 541081417 650643362 896508671 475765300 909590514 774214383 56861992 465238724 661220144 389275113 957620919 831451039 122963842 557600380 599444492 248604980 712470388 152369631 505080346 351543228 310680217 487744392 108825430 288993335 521462409 507952705 265748158 821136236 910606312 422193941 530456794 848901356 532394846 128529493 769184439 107325459 985711264 601026208 419878632 321461499 184728937 452817885 262988945 563464590 859962487 46472755 306235989 490030209 724403862 699466007 91791202 590096453 361314714 284875849 843982959 880220191 81162076 847870667 290991803 429088023 813780159 351036902 582471946 762655483 105758380 902965301 655136942 191297892 149525783 119184526 153350779 473533621 696862201 208135962 622313420 602246931 590973010 697875523 984400269 236823919 634547504 522386877 10275115 767731842 696849061 712248709 902556057 915601357 522948809 94457054 130344535 867742868 580665536 86540631 55672428 827256045 288426930 344217537 553497958 121027244 694009300 372865338 588961883 166682227 978723681 632322599 475204841 577071786 38235543 980433712 836167734 508711555 611597251 532624976 329820146 668317427 770581560 260134847 807316818 965258685 973298510 499281152 136457234 648576103 493770345 437492706 331194750 767930178 93404402 133948794 234052446 814311529 280362845 398896928 806996748 863264438 598867491 438533502 295303271 328892120 304837317 858590588 446066385 134161467 510766286 381516623 765770299 480550936 753828051 643191669 246498333 131680371 655602026 3653038 597974640 485496590 962817082 910792202 195903680 555961981 193487081 405783006 757981977 397199128 509076013 692485829 101418766 783883262 874024123 662903203 904173251 870007320 159711834 578154915 389851099 46375704 672851666 707754810 233675909 303744628 170868471 528016678 885053558 163851373 771944352 857172328 903418862 678136075 531963060 519591504 87064243 984587549 414550553 186244464 367384336 109294908 207804612 453909669 265965280 915457738 729523116 244548883 428472960 35206382 914697944 408784423 270686679 447613339 129817167 199007891 408932686 685510787 448653091 784359253 248216800 167694379 547028079 896739504 94586637 384559322 130154583 46692659 324963284 607640992 951325954 128270510 866198988 375647062 53998501 296489794 208967941 495099292 560603001 130118736 745516574 34382298 619160767 426520454 375391553 887035456 143537602 937961431 412599577 807859399 751819223 661904511 424308700 141428783 951171671 508892677 420297290 315202814 536614305 554441009 866175657 900232 590439459 539072538 505826759 614411749 82699596 293213978 517846008 894664945 252502171 995388379 129794078 418224472 958139022 158629954 169775261 727527306 718667696 613680008 79351396 275280831 553485717 454563111 517144041 624521461 682742741 879580132 799411755 773263353 513703701 944595146 941113260 587141205 16566781 586091568 1179009 987278182 588454975 663620785 187518525 564675402 721194390 558029873 907641596 924294125 468054213 625575131 468614249 297971193 755772567 487709733 413451182 8269803 449181402 24943051 849280388 73377536 721562988 961635025 584575785 411014212 542657841 259999874 34474850 637161351 904692494 184153973 293667708 247184476 763007736 182285954 951688785 851703593 193801962 560417746 894653245 882908181 372480485 494449617 287715110 174174221 750978292 976341551 648482171 615317452 107578920 797364458 425589043 540417234 213699996 949606216 275636169 60198502 243883637 305946327 321837639 328042653 536026585 379170917 947193913 209457481 448354299 222432530 50420407 450886925 599588119 463224642 669524829 410015312 338699374 244465059 155482965 772219972 918976330 527222820 691269703 342787552 226015743 534503177 733350766 559248102 431924966 406013903 863042699 6864606 285651296 889467463 141512925 279882774 732370138 329922945 522160694 168374953 763272135 227682014 135406061 622218098 520757916 935934207 203385311 277372192 694296287 686150865 574232944 104851745 476583451 608673416 82197140 929276587 7897822 881176227 549614780 305222593 220313031 613550816 431923178 372530216 41501303 752234834 290432418 548668021 520233622 168102219 369476595 791308541 636456665 425164901 975166066 664145631 153184249 811646342 992935230 683303686 231916985 658648540 191940608 197967651 891388385 589309912 470141155 345494698 692204871 409458233 148347293 348942815 187909825 173780736 143621741 820171464 630603316 617934461 397475096 468515896 223096202 600157761 477898737 360554692 95286196 833866794 279864008 980121551 765802927 479061341 96830976 171080832 479203706 279551298 284641663 416737478 366269218 526404244 370942897 65603677 28768695 400462923 718813323 17775552 330188371 619661995 451683982 462056765 826447643 308045376 188340160 116990944 931479095 599518947 204771503 910611587 394918618 903311019 67855217 871889092 783081022 654403324 442667172 632889871 270342821 151679878 864917614 261149841 279072346 84671804 433235326 441334340 786690222 933761368 114458122 58978792 364308222 542690402 733932752 748617733 863995307 486716709 318028313 529136109 610267933 466707888 315289263 491098292 839751366 407425641 238330601 935642686 54266916 664950506 252338086 96542769 985874872 514393383 508970831 363404033 517386762 466222673 568703180 601535712 412499633 477243877 738593946 690567380 360848193 686016167 345421748 397371299 820812384 908213667 776420001 587917020 658277049 712595245 802725997 959356378 592830973 104314337 130672048 134600890 624322021 191719844 277604746 570665321 16675636 986072741 922490014 382873235 86929076 477318227 564710941 994998448 525635643 844870765 783799995 856499460 376426396 101712887 253523894 808460436 122608577 500444732 561088473 402172211 530191246 576779733 916534893 998109812 995982075 582808984 425821256 487740094 55623164 891647404 937133261 289674804 512360344 519612030 995796190 792613834 507807959 540550081 346230253 900139575 520253389 858836850 439070957 35295481 619015313 453889748 769423196 134281563 986749000 632608629 823443011 476342635 602528797 633333288 975665452 297043716 709716545 517313035 205191475 950447813 26824940 100221823 900637171 828328212 645194596 544691508 13869712 335024422 891101426 860125466 558341820 141669870 486719463 516430195 738465196 346368819 998334110 136796606 453450528 476879476 505676922 511145416 50136154 67333643 995653349 107335849 402688300 88096265 122853455 508328891 191573740 83055440 435529014 245443999 937592695 460291723 429913883 159490375 399072306 949060391 526153604 44181730 388858639 845537884 63816970 742574832 347024766 189051439 261924930 506520885 397346181 277261925 710486227 623352762 879594660 84884365 92048997 391129559 379218671 639461377 563843494 907034918 339856375 482262240 26385239 238036620 480292829 210311442 934294839 317261620 191421508 794739275 627539729 60963734 539805022 57068544 644663734 646180458 781212387 946658928 55026688 737883062 578824970 450417064 964993493 785649095 963739553 58565234 5506332 211997744 292231920 709540204 998712006 113192655 697991888 719028213 704643537 607005892 571978659 831956273 211679293 766760320 51635016 440677652 381517332 729470903 189857841 687826774 594680939 711989344 384976468 208538233 486917721 110360518 541853745 256996032 539679231 807110256 804718026 478338878 470299020 775743030 704923571 821910734 244508719 941456690 54956029 140899597 124203813 450546890 690215752 291829605 713390253 637720745 121344442 960011779 943388432 637358018 227035141 890622179 17319846 139153749 18380377 863109827 92260806 152418784 146218871 688727597 495391186 308774455 946235814 101095023 442924596 726145641 574953909 519209125 613911136 479977685 163578361 720410794 330780111 337509149 117141326 365598250 705749251 41747245 65303582 586126741 633693831 351409723 849273686 129002274 385108461 541676994 114120557 958051795 684881615 445954697 323118942 167144046 6001103 94605210 20284338 80328837 748147095 189125448 116854136 146693486 361883098 896016434 598496581 914649421 748852818 114584123 690538038 153217543 436345795 338104207 72307443 247881293 137420020 393568161 89691307 831542422 772683194 196612654 677692433 915971622 708978156 712500798 477044326 1298434 194793584 42211609 728477806 985240060 410490416 581569876 299556220 948231597 369442077 223131597 50402400 285587315 527471918 753543844 273497215 474890102 351871851 235050571 499385529 877649064 46106842 753906290 354786942 490577857 498998672 74117912 442437318 733240382 726248358 477850495 271495950 397139820 675268670 914002741 448588893 108155227 382508674 415023885 167066177 657057761 518015142 939610146 300600271 790799260 165345506 737199836 927608486 516183802 191201402 674803172 519007725 465949991 881085112 24549168 611052882 355657501 40672239 568020733 370151946 745547933 825226358 949154509 207721430 792600876 486946738 347324013 937487867 803313949 846153485 184083696 937091653 185595016 197236984 493558198 537228812 101295181 706899953 651457376 292244782 213714706 745845108 785128155 784365843 158608973 853730065 754753629 662852519 895026990 782647639 444532830 886588513 747171262 566677217 75786407 505950016 699154367 937782609 916008769 695431625 257696196 209517136 352081282 642289674 204161573 376807061 521242374 451561883 563513856 807559893 867748016 686336665 519438401 51558615 24626606 969012906 161644181 688628833 213040755 668644861 158582902 403095108 219990973 181106761 186796069 205264224 509554061 49005000 7661990 509844374 151527987 989577286 735179726 567868108 357857089 28824081 637986100 664171000 23605395 210441977 477991225 669486098 455658316 508745570 498897154 478409504 713097438 710542641 168925315 225052968 952270838 379698386 476464497 714453310 85469078 63121982 505818190 283892349 805383168 96607218 365638499 879471364 882052545 349051383 990641599 172837120 270944938 756534487 890963003 305849764 33836762 914444968 689565300 887822379 416133047 839594508 993526233 45015251 708630762 548243752 5852308 508598761 634153320 54330537 664114337 636138686 759975022 820678342 995515069 226277038 521346689 678216767 757598579 696423450 514812523 918075735 603606547 651205999 350002753 678320348 40168884 418077722 763762273 181336360 366488119 24569753 983081068 50636566 749027139 735793772 97638995 698960657 119391051 553215266 480729924 879503360 561201797 396563784 574730945 508050526 994641904 840022138 357858189 695426345 640961624 771857754 326957745 170957030 740036428 905247379 128263812 950818980 960201763 745885143 841148323 53465337 842802428 466883809 827339758 247804675 227417027 896541808 610740630 136340329 629692198 332541267 461635599 154423126 86940573 988214616 661120275 613284742 265122409 299940444 739181989 798058292 615889554 417286466 744904469 565936935 309122024 951574257 29207028 352066218 915712517 582199644 467254560 551094936 793694023 440253056 88033471 390174287 747452375 111493981 872599865 592989361 859290788 434366717 954689604 709123375 177914474 615815538 50031071 647411904 772667046 141650138 503397195 234386145 761261728 63707219 946732565 78187159 63722602 500017928 114245392 694673267 468485597 460651308 633049947 627997835 810282903 616399097 786533209 241994619 703731198 577812914 130234295 781313387 18074184 408695456 313095782 741263880 172119914 683214358 470825895 219928712 179955494 642910318 370316027 448833709 883284226 529145611 632050736 395392440 427545424 404387670 9045592 790661501 388770345 243380162 787134162 17360204 416194665 745628363 588454977 204215559 949363388 404764142 10561425 527341588 560412304 682528954 95767286 784597089 699477280 452429760 333193452 178781539 219314796 520743836 855618873 459753755 776149563 930359277 23295977 651703051 523282715 280512606 307428430 346120004 542160745 210968995 241211398 508839263 979227200 977296500 136279028 433450357 114488973 496800405 629532999 38880558 198850558 159213519 235624561 64286395 676008972 589457653 53675567 107076046 3907318 268471011 428123268 399000231 664690887 196526967 835668926 509725967 3691082 976315038 712821616 767259471 771687964 453636938 989529462 689025857 528739229 360492663 721857270 405029699 617159667 773170722 260190555 480417593 443234576 624629850 368448856 445171605 952104106 443379248 537962476 521187912 370282820 615723712 61167962 109627351 127278887 154796584 539642927 117761089 306912094 580604055 909465151 293065753 992920774 981373243 33900450 92859765 259376894 733350225 290307523 812931312 155701102 130570520 189627979 662503093 944902726 573723872 272314926 848577391 46374271 631331319 347751593 438887764 312196056 134839222 931614782 304635173 781609947 21998724 299886013 1647397 157939414 674115782 212458296 870994468 669005285 231735284 632518924 393321592 977560802 296033666 500610780 300652801 195937148 573259769 749798038 83958816 22873121 766439388 565571439 410574025 206996230 909674178 204131040 966429040 490977582 270607943 471676334 236083987 203703140 479031558 157316840 539631160 605793587 736321969 272033504 892496878 733695990 192920052 23884851 360928460 72517581 128260495 160659141 603387886 534967456 394746176 383582912 103628284 841104670 416999891 126072732 768005669 714414018 38247192 571416340 657564956 920635852 897578223 857922603 90948643 182534721 396670515 648339503 155823612 691920628 597427667 421104565 485692411 905839996 760931774 688559509 407139057 536751163 534217202 867511799 96017470 339162456 909001073 245334342 303159499 553857475 128893248 682479927 305354752 340696628 630448503 803808196 488726234 415850540 347678766 881114164 534590675 564607219 384521350 758828563 56278770 560556698 806015916 91217461 432001735 754000633 833414608 461178290 780070759 755079855 199104814 742279927 828606575 346077221 713483017 535416999 654855431 351286411 492980903 417612477 683904221 853197528 277812830 357440369 51993894 869134545 389639302 198100042 342834083 44291579 750925957 471061266 530017688 53936804 598677441 960028384 70729427 631002345 13620908 941949711 239572140 384402341 51686853 341517378 752933633 213983108 366126729 164013414 648235317 856973303 452748934 374742193 76551482 135262259 1188941 326901914 526377093 780167739 695917177 693484 726404372 508839892 211583657 996987824 355493998 5541267 810275467 775194683 511283361 836195789 997704912 750260774 642804546 265364384 635080755 969989722 686572145 103720954 190986866 433355265 147235794 912310921 213066590 638828942 196526999 10462403 834471877 199017921 421556594 248535784 682300035 35248282 574914470 130339076 366201718 558372456 303462901 884393447 523000975 914043582 832105647 512613413 198237884 564387195 40543144 8663842 387171065 953041343 81152835 647406085 67931460 841346296 435431779 713712828 534909359 302623194 545145972 69842180 425523525 86872931 741082226 787487067 13996325 674687447 238683609 58411528 580960621 248274879 511546029 936788510 494269514 476823282 860851068 179248755 59199216 95813515 909932641 448450215 49677462 561274608 76823541 450715682 792956288 555572941 383886947 258347286 706494967 70017555 915982420 627819900 280367439 735763459 483869698 354948114 156027614 456598814 853176362 764340577 43936012 988935216 9075987 631408315 988658240 997002065 702930315 446217524 981990381 109629657 622577128 890866865 53121932 40670318 308787977 21542614 810638754 595979261 536425808 811846679 83265720 527660728 96988083 271036584 104674398 546338847 689906338 925921166 348398643 756361459 433245469 633467791 385467090 667753535 389022124 93623866 175676655 982861405 773860186 97807595 979076147 547706851 38272192 222775228 120829020 35935929 213050107 952595613 305092142 697854728 717675699 520972857 352485491 433759818 732279570 802206985 497186552 740222007 828156115 995942478 218867102 793433554 774567728 538276624 286123842 262993515 453690100 377653537 890288340 128238739 134999914 597644820 441217601 330061097 90586473 273888849 707232645 444656718 573517903 299282425 980621218 295326322 479315202 413134336 983731109 696233289 634392819 271336223 260189594 242445003 35072274 892270290 265820578 153848382 859423461 930346087 997659356 797767475 79454572 529076713 129210483 335601273 377045563 723401013 248493206 757314349 693017699 964661479 180647813 428453298 704230787 593603944 625119358 156275384 304963269 639924716 900542158 332788274 676196306 975923047 405360836 840157276 332909029 737384860 931088063 371373752 668641466 415559696 348104732 339210519 568997782 713274137 335092809 846335625 87433802 290105544 960534966 102062698 583121964 836239875 641516766 705549667 451717912 920425838 247449924 2191451 879571063 736074876 173159025 888377737 63981618 974544485 682387192 422674280 45978055 69051177 263924084 295126975 584365870 784568976 594108294 410732694 826691569 952229162 692746968 782340932 670571549 173830481 897423389 442491239 798403399 3419682 636988433 574868447 203381645 722264710 883090035 285568987 33988760 601781808 310233357 434441676 429446805 108147352 725518517 588527731 639020857 646812667 922404930 630683090 536751301 668455524 906623897 30357044 802101500 84262051 478715553 227229486 767925295 978649933 446528077 831626398 362549809 819278279 825170843 957314473 500878690 895760693 702273160 899252148 541027243 143374731 939515680 229498236 110586742 270498942 321863288 400133627 896356540 129293458 89584553 952738672 412754938 298947084 492610259 904825966 513851190 333899772 531345440 738681029 98451713 697574207 436863686 322870420 918328684 789854063 853629437 388856636 69591832 266851321 802695174 512752748 865092654 524116744 111616302 935643417 936390489 732864666 638395077 416858237 448717520 190454125 153429030 20274461 294097233 562981897 111732661 17822661 634719010 167056316 400286680 827658376 235412754 718159269 424842246 279071684 496050552 660007836 651850678 682759454 659194672 975567183 620155756 4084354 255608994 526473002 761659826 789510946 445354172 102034794 580626458 59821693 479954420 491242253 483154495 921773908 687422793 586068186 56469697 872279223 265105214 914242147 546318411 653643510 920136423 887481086 278624401 566765234 706273493 307901134 750819147 865425357 357546537 31658939 180418876 723777650 654546310 722459251 678295857 419869721 862985247 624801135 246799097 699190905 127342249 409883632 27821166 111987865 59621983 74284286 588361844 279555526 6872586 314207851 68731892 311933586 458005240 565946828 74007266 116527581 896356352 629900165 494140727 32671177 976889983 351705018 699999220 956840640 963687261 123345759 420608038 707047034 408031746 858548009 570980830 264242417 946925932 255779481 505749303 903953771 20677399 407119609 220617040 742452593 427051529 757214297 986496854 628293083 550736334 140611217 557033340 676138436 885783423 704414271 447110651 819152783 899553465 141781967 177560086 378693611 991319200 873663086 974700821 571287241 849645289 73370389 124943692 232126567 163196099 44099463 940735766 398193736 887336944 742366024 704242645 522789434 83478966 619568299 617956594 687609168 464298979 459814345 263162081 642070246 881358284 758140286 330326041 796374435 725358417 125604471 784704542 794639984 647198167 760200739 710659708 543851906 875987789 783734199 919154629 378635606 975653673 282425144 402240656 783701426 855684456 746207850 677301891 967176862 778508180 305935331 398589253 497763696 720489398 418800629 327566731 951580615 982682987 230484930 457992719 58717826 165523659 238732340 459498641 737393874 380646781 184410874 9011932 382421803 629418930 410029454 28684228 95692868 198350110 739317806 41160226 586827305 925789187 848743651 192778713 41899295 429766690 424206973 211613905 359507646 355226573 902063509 824226302 645728995 326310104 778973067 779104348 942025905 239955876 794333063 433717226 876938642 696092692 291467640 758532276 713612350 936172185 780104473 442399181 265637808 75046182 771807464 629943373 462784042 934458429 175033647 1183319 919010876 580288482 398434557 757409815 739441081 188011170 298436395 388553405 579474621 73589913 810975062 448304002 331233962 722811999 137337581 998436524 486386990 542077466 544655899 313203332 157857086 630659711 872159448 358371421 303329815 939840446 271704550 250676623 945862714 269891735 520448976 44040317 62875255 206894416 912169440 231810450 858920672 73308858 736011060 443781696 875352017 763043113 875079593 76171267 288575217 728766841 883392744 190948184 522227238 783380499 422389600 286494926 333786797 925853668 295192397 192738806 912941563 292650342 894560170 131674219 468121814 541682578 100611908 236050636 204351567 638264561 883260330 637395913 937941170 278463120 4281395 563271438 655544483 808576777 797818622 670985305 350048771 308318580 449500151 521187948 401720060 242339964 663875532 492374032 270548741 16876364 780608244 826912536 22496219 559256734 795095218 416903518 60514433 949559214 197132815 302367685 389057600 5705538 656796374 400296759 694551986 4438696 281354917 750236580 141846449 461992633 856007128 988428041 234078305 244051665 535215258 987374697 122308653 942018517 355996123 309317834 723722443 172096309 425556051 65667138 777769527 536799207 775707520 313224426 863870389 152569195 508648108 779792356 700271313 431470274 556901352 402201181 139509343 75271041 374896397 967869059 441963900 290114747 805901496 350717586 508881548 657105420 941609299 662621133 957675066 625641630 497773070 968124285 557512831 906451996 813636578 102493685 796514192 894385600 514194064 650706830 48169207 823714631 375328670 210774959 437974141 697671157 133903711 28312506 72680248 676955546 420100584 228033576 535884930 960441228 772003355 270809458 289965829 133049257 63631521 201091353 538873766 849132889 118263527 278676136 279699101 92748935 545675305 861085360 252740198 187433643 159712871 137436620 892368581 94895554 440567143 248276895 600393159 815426391 455808440 726913491 599296701 409647986 578902968 413965592 73343303 494988206 148801154 440236076 337763912 676039207 628617985 344158414 870075116 272481411 281215205 946990282 195756968 514922736 243825573 287734005 893830456 959378212 932294016 590220835 204120990 988028256 675416195 769319481 544525098 663647080 121371000 68486946 398288750 134120333 90778365 656401872 621398598 246086560 119559791 391584574 426404568 247771141 38910710 27659629 448862864 792328349 693481095 401397864 650346528 798228954 779842770 233661249 601163911 555942833 707638366 621434640 683138055 829862559 839318387 466113531 248645420 458767532 614833948 686106667 416282573 224031335 80405559 477740241 380559364 393359845 246525537 935565608 548914998 811128258 251071747 295994228 662804241 921937961 467427916 11064828 816558212 904379332 42078775 110166036 248450256 505244877 876063618 788386070 407184506 455916543 345763510 685460839 749548618 474872736 930023717 603918188 575237720 913713281 56807908 529146523 752937724 276246777 608889044 877718125 289004000 857083872 115489696 70728546 340013805 954797476 570569911 410841096 652977495 980391215 290285646 965887986 53245080 925014265 110184811 719467190 525054843 92598781 933013713 975581944 346930437 408874692 152270864 677086052 298626446 228980829 313965190 322523565 38171571 551441757 926572623 203306375 322738007 6880 779251028 435595194 14056100 792930193 189962308 939701518 363318546 244475547 45239706 375163734 63495773 120844469 691165334 935681135 455131527 531016989 380017725 66222901 232547805 94614680 333791330 70904983 378739187 867612793 119304861 628080774 901275815 17710481 206787404 800937211 143150104 635344704 724135068 633169147 316615867 892349548 229149560 737524109 527332925 744508038 542074013 895229639 460854941 681874561 306523526 783986366 676890400 601160156 994254207 77720219 411065168 417922975 465471128 199416193 10570754 316942677 272207528 297568680 219194964 514071 454742608 802338120 302481065 352934272 660003833 370955171 690742700 822012091 242292433 770452996 625833300 913417586 470159312 473097405 96315355 382426335 207677626 750229542 189781188 275179196 621106966 847908262 920387041 918016597 142252338 286746276 971549761 634924400 604034856 281021842 578780480 478436205 203598294 773279468 372122500 325324832 301587433 198003252 984478714 666651384 882914509 469409523 133325527 479175137 28421563 315834812 864051349 136093773 108055732 63764776 505690359 529658942 101582208 613627101 843769868 585954618 615370929 634448512 265560361 630100302 138620060 179745991 871171558 618437651 596076131 254309994 999850796 151355299 772242671 139721007 124939303 907192742 29061614 177571034 174699847 588141133 851117275 473410627 46021451 526478667 627189234 108027971 395257399 880939742 638409537 386718907 919131735 333481168 207345557 792977301 530742591 640541549 77676421 243747266 733420237 18887817 280175732 561814593 618485795 976004228 332536712 386913041 598348972 484049735 68129459 573748794 246074146 486983482 996873645 201268436 366122621 542247002 113507572 756683253 721556736 686693665 137154773 725026753 972392764 522120598 803519581 578632289 464481025 503820874 355402850 764163846 70569581 648859473 424508041 975923951 302167267 381281606 291712567 29122139 288928273 366889557 665297308 814355347 860322026 634861864 682544308 32802797 686731436 677598202 975727165 513949887 719109081 591755141 712138942 649236590 824145727 112333327 398717320 35037540 662358766 476658280 441897909 167189 416825674 660006630 781830434 415930103 154439152 826653288 237603707 234187149 75534034 67158869 797071148 105638244 380620575 945154200 413842033 2115085 299967062 148802218 355903048 249650979 713971516 228599430 974211450 514179399 674794717 572550326 747567000 111435554 690320266 465216072 757947386 403574889 350069221 654584273 845085377 376024277 65997259 441404012 97842640 509141288 451513199 40030405 369974238 313839663 654815297 909691400 937340256 276298166 885442046 452048618 821794201 581787038 22809517 972935339 129616269 254398150 741865625 928912912 10573071 552751128 96581971 753712232 590255540 183000966 430024378 487050377 563247587 990576909 893665523 23983056 748827581 103941036 382552681 235205415 624991798 839928944 708262607 127032313 152072710 168196969 402623012 330473787 328238252 419665074 205682090 316345966 707956594 335903086 453225198 953592472 885919849 727628486 353014982 24720200 241659749 660136174 583531597 404668818 992668424 820132382 975009766 45249812 398392765 440183195 393838142 598276345 763174066 548562090 329993033 669832424 511651551 269136805 976278852 135303196 641043974 266019039 363128757 420923987 870169004 92116926 796955746 304021203 755100199 939723692 435014759 569262952 912335752 394594077 575411484 187761515 586020020 186049158 259112229 215778491 293303891 493745518 890421616 574214841 744196051 862734687 463054896 131638104 724984429 499960550 41013219 928445967 487623715 472703141 230173771 710058201 876165821 645504057 222000500 791664957 564321992 176175948 885513396 946136394 86233761 297057429 800790441 168568982 284718436 908292808 82394931 321284926 634623483 235554220 243142271 415927533 29452310 612288266 392662532 493811659 889919792 675797938 966390397 395295121 731376005 231275650 881353196 255250046 952617760 384221019 238435488 962332759 109954768 457176612 614769710 340859242 521624876 106950100 136791153 484206993 874145177 927511906 577792138 839020325 51997496 472491730 300026346 68570639 631901185 129801263 175703876 764385468 832100263 876789895 949296018 889195300 902257325 807603960 416779036 936633797 611740505 272722852 800482922 633422499 420379834 614566581 891191636 167756876 561334702 15952221 344993781 963859677 8905681 875899604 830513072 433660651 719090828 820859232 621063731 429904035 966726159 319015754 439024241 672030382 611922 52021733 472131495 931164999 930085911 203723399 116395606 808704811 368446949 547446678 434340177 974674078 882656010 311793022 84774055 615692912 129314980 943827372 662804150 582693623 78419598 327480737 257088291 912350483 361456243 253823448 509014487 771200806 383548096 499443937 189760521 548043811 795674547 539990601 242489140 857236602 936323142 642839470 225459742 31881520 259203911 269664690 341907924 656437962 211291713 544108799 166515367 362857555 293048975 671419207 936554804 148980837 818213969 587119173 662603616 92381209 779022702 856733368 476506969 640875546 268371096 135257452 892022927 117959572 623071815 214271542 372948672 245876032 817634235 570724079 931053300 817892440 138843131 350780023 148679794 88321959 227222744 296665528 670888403 580766326 640062444 948659881 892298734 966233504 151412631 64321856 539293419 896052864 583716862 284188801 85812020 204053503 61175316 10393459 648130689 183465865 634919569 581869101 402092747 115206165 495936754 340787911 864027477 681025312 90076804 553521762 927017390 469818293 266775895 244783148 788204203 90127195 929819969 657692754 59802468 482050350 516493537 861288725 511864387 455461065 223282339 356576177 464142831 494774100 1137076 788737907 125550687 126579325 12166927 830354605 240207311 534195578 204600433 553239478 378014147 284098058 49920869 188515833 314941447 818067825 479166009 493383383 622669230 444405121 869138185 728961222 441354776 91843978 96868017 305497664 607737319 261585778 978336218 395394760 965685252 98460827 165309944 786078697 307866794 49830131 323650624 416736307 253561937 544496624 805660339 324954177 301767357 259441554 259261718 915409844 919346171 426427230 76678656 204956731 989162849 304722276 236524996 813812866 498137224 723535162 263117189 277432135 763861079 247102715 716828200 319348811 607331832 521616464 740514656 712283481 681153507 79478633 692879015 761770819 479470287 465235446 267049017 864854755 395918530 144361532 788976159 399392795 653823500 135367167 481536811 351046358 608029758 595725195 935990772 733283335 337552180 4031161 560324572 864908453 453680146 214757349 469868554 83340468 598157385 656147192 904126574 482416705 595968135 355957343 513812161 841845851 620192200 85097487 461290370 833271325 647050839 872509062 310072570 441932201 761938107 810353100 616134715 259761963 213394121 38378608 331382811 479425491 259401884 984625288 700195897 671489755 984840605 770433199 427546625 560316041 796241268 417530639 5587361 800136482 32495895 289773140 637846800 92399613 298045377 853525685 41634066 611810417 343627767 500234480 959348269 197989600 686859397 491001165 249974703 857782198 418339710 276593817 911219381 593565287 65846083 364714790 408573722 167427178 709179763 643071962 673539725 120964163 909417981 880414998 477318519 348750970 544676882 889712075 802160660 458070692 69508404 826659437 869847909 97768538 861473314 566290429 359927857 156127294 83473387 830682365 370354185 155491068 751808739 789961855 71366210 639186500 733223332 99708694 797496577 470516690 455999508 897027047 41113643 209163366 450768481 75568015 815275634 962424524 912646652 288101698 642853453 539251414 60271781 487631286 442235644 856509534 677323099 820311079 526084490 155653702 335188846 624730461 398522309 961423226 5262707 571152550 91407172 886585322 494825026 143264984 353418858 986250643 915012613 290260304 979399006 57247603 740187939 325546233 391333137 279751830 348072787 920160058 316098106 149944593 848560785 90520847 90245723 595303675 985598497 289941490 425511096 917500791 831509390 690237679 931268455 167330224 78548910 17559438 16736828 770692056 174066589 666221289 878116315 959716394 989162942 388166815 147294886 983055846 658919616 994329552 883067861 913726041 917637269 189076018 360651356 384751058 102311800 202253561 344111610 825186481 254577904 440470497 112212539 390094417 661696202 544892977 285803884 689809440 296435223 298049463 765711272 212974737 512520756 177884106 318125005 564977178 985652167 832280650 440300676 757509700 790940602 588894362 286213950 65261717 326257220 786063533 528112947 77310366 990052318 957063666 513399904 116652029 986888785 834019948 429482130 191628114 120411043 546212771 732756055 689980231 155060524 196406176 899036169 187714702 968268424 144749053 454362308 565424612 912407707 704496857 604620660 667566858 899985042 700767702 85011402 653999048 713243358 224661797 547794749 145686258 889492544 978332284 951234571 850115427 781260474 364492827 683639359 976134395 787343512 900878789 140466342 341268902 489613678 27962826 190322652 617894487 560676633 754177024 872271169 977143814 315396285 452876486 224831995 735830200 597599685 479389184 251723260 100532853 652779238 10159134 713846011 704006734 67765534 620999961 204578681 510770016 201470128 321689960 405133247 154156495 636964392 362890008 476457179 60247998 747453788 481807540 374387110 358451305 869706852 351119954 612277187 565347073 826376361 27797653 736891543 554543055 602021332 680344476 291341907 229145880 671681756 793953817 311472367 984846386 959752442 34110019 589995309 599605369 106568373 433451223 734844307 588431944 209418457 442970653 395377522 305434641 449250166 137626846 655429605 693262657 81650415 249998710 778069190 639406421 961935075 519437507 145556420 304240844 306816320 510516009 579756365 268183607 709034812 854514580 174822295 541244705 140896339 346868862 381318565 200987942 532762948 660412135 402446396 376941805 123430690 318491984 917326574 206144795 441014335 338924234 739756822 597685091 506068788 275095530 438340817 988591488 299451882 241470930 127769096 296059956 677006987 116507941 695894378 852203596 174795403 512063760 92117875 70559639 431683495 215682636 536932192 89498607 789548258 278196247 194936377 708262457 64317321 702455604 625934801 193472860 573385778 799354614 519929789 606441293 633579447 921007153 435141214 818694660 315299389 627987522 111941601 452907140 890901041 349343760 693612334 896708059 149104965 246786828 434956549 945210901 191918966 833360937 617193185 618975054 925498378 341672167 554169354 922125484 866625677 580458569 718476438 838253911 496284115 514219490 8958041 626042239 102025461 392593604 265415667 76746081 692474460 269875858 328000972 831567421 915643570 572578414 81011479 794338144 941339114 734463496 841839818 348070171 717781570 566531735 2228901 111997896 573112128 488747990 24300082 847137481 864008876 82689294 302479297 590497160 976331166 559608334 456488296 792398459 535228272 785632299 458202635 136354324 589952713 320334658 538985548 492850654 485921936 797897405 62201763 993132894 798013183 266288772 117722437 150892331 781358733 72411669 268515118 294565848 992490243 701989222 640210221 121662222 360842858 541467140 577504719 919847029 273637913 733646333 279098733 12994748 617611177 286435040 527589669 894350498 366410240 570420948 480067555 822741992 223025227 602570107 630209876 873036374 962275581 993612035 988956402 830672578 561283794 409551139 717322493 988080642 730286032 875304473 856430461 888266237 192096323 950160301 949762883 203872408 697222591 233006120 418734308 734123209 193274397 202759016 89588167 845106057 553104517 276677063 390079244 544141019 694002274 763717929 875020456 422685383 34125416 917491712 930537556 539997282 921948567 210956866 20654734 864596677 719734829 503260778 744535456 647296018 515522232 253046914 533579930 677495413 361736976 596654361 653827667 744267549 232164686 644904510 255280747 558890823 865919190 643731608 402333771 399875892 116755798 289359433 267516451 315986736 376706499 992729086 173221356 439491723 202548053 806887409 259176550 407278753 210739348 508978911 88997403 732290512 879234635 374853898 798708311 94097032 994168975 480892231 5936180 561396795 747155899 23930855 897439124 93066335 478969205 125256650 944483871 238870392 731624358 119843160 348346947 919404560 687407494 829099903 149942840 992341948 996736657 479316145 280716035 876534291 931389320 313388017 989508455 41815993 728238969 626335170 360116982 251942742 439284411 983928628 481129226 205336225 80793060 454356190 432648642 362877262 486762207 244331486 168506628 444860962 987957205 179093721 161610628 909383147 406281273 784225021 372152249 824299639 732564936 751658243 366403811 189130655 416061832 282294309 64400904 594444360 108370628 599130411 834409724 27076957 348837905 731570020 557965653 684477135 303853642 683527080 399462772 421864598 295295380 644002642 951659905 29476281 963897949 386693963 331813484 977135421 164515415 805507325 117594351 757881657 942654332 264181603 927825543 416135106 206992149 6518264 552525951 830321664 83334317 499928004 871861991 989239579 463730967 429864532 788175765 319805765 79975790 30025920 151036714 493119670 168920601 70679207 578638864 951613108 172132803 929051435 160676728 159517319 572790881 142175742 636256345 733865090 251186735 706120789 484697712 122073857 894050990 239481837 478397257 999214947 870683569 32386063 531358516 534176531 604834375 672393863 33354313 62019714 445046220 538098858 771044710 349113390 587951848 210446939 158623030 771211672 471080069 771036925 922240296 660420682 921924311 867534975 6853239 134697174 467222619 568458326 903752989 140382677 945413845 155370114 382280937 259348714 886184017 43719305 521538151 280523200 155216421 402539127 896936433 772142347 102094825 834722788 496953510 672562560 985675397 965924593 669296496 86123238 380119844 938314047 279357949 663128327 761231418 21275904 404265928 127218866 330331269 885893608 903085838 965905602 196567560 198114871 105399772 994923805 611320078 496998323 348547838 291605928 680951085 820188841 471259404 772735323 111191617 760376048 717280107 558001451 66793327 141947622 173824828 981028124 882329632 898197619 950589559 933561147 6222090 761711106 217236175 33389206 513530668 281310603 962312903 357388872 351367366 420009357 831559845 748022390 837728360 187377167 493922681 42059083 793285605 454140314 89225759 506677747 882729815 150790218 415066162 759943598 45764643 660047036 244814625 78338747 437215223 120381207 363804949 458789222 658556358 938351620 971129355 764274434 900725454 987031999 668137665 861647080 312262546 728706821 772938689 283067771 625082590 533285400 44707930 351303459 28883655 919951822 690538404 436953940 878485926 396305526 282627457 317083016 652824869 366762739 842640279 230251586 164272941 921200553 956425303 352777740 975229681 462288263 679725563 782832249 357325294 269226243 593497473 446183199 310451947 118268698 757344691 369873572 712458480 212202583 601978910 48551860 281726548 21582785 143984671 358631932 804972981 41628146 646509010 940273981 522070259 868183051 677026083 240037939 927135804 192179886 527415486 165285803 306020615 832341258 429332254 875663732 98061067 958643159 581638020 291827566 35152206 775457874 257793271 988808824 590697760 465582402 976353094 714367871 165724432 548409845 93377548 166096494 543458815 927320385 193257384 643644745 260742158 625693826 885302850 53652234 394506155 703449763 355530955 596580032 445557897 432251662 984872440 985017468 150317219 766567100 448403789 917651031 425990465 888671018 881237523 392245109 541984237 451091295 551764565 389973249 724128121 808020712 730843632 15284523 875127047 419543773 352642947 365786157 304616181 442830042 617273719 709093707 836866037 364101129 475107578 366141902 467755511 386443283 248355079 213750283 858402617 863754291 834271579 781684313 29456191 107057698 823272833 381136922 59895764 47088940 610074566 786998971 882518543 692590365 672003144 282837677 639166280 291226955 684782051 41056875 528132136 530898836 660131134 360195957 226573722 306570078 552949199 776750934 89042896 271179416 604640968 773935777 67597642 106895032 886439980 886424561 383353801 38803389 599114179 46781672 11609945 968645419 230553631 145648430 170269006 651866387 57982868 896156536 889084744 639384841 841243462 508207743 448358443 284154157 454476317 887338501 414513437 813128997 732076487 15232981 353944217 487069468 538694078 533557952 631437657 928200398 131951171 489783202 473557855 458076791 271117147 975097436 258026234 868495322 299942873 585153754 999690685 80119624 632440916 492623373 541318020 351083160 655696943 482270957 717630327 527414311 920193679 185458560 918655228 633480154 760786276 566800333 157089484 659576354 591482984 875628777 242934242 242177269 709663773 139971565 985910915 866577617 5911239 60685565 155509047 763704248 989820280 582886974 501086678 669068863 854742795 992790248 768652415 367558263 932063003 365542964 417005201 680213760 580036885 861240930 173007289 871195650 925891367 452535231 598294252 664722474 537928008 643784091 270583657 553360813 882398268 287919953 696701361 458237259 981346440 30795586 444482705 98346312 233966973 353167836 140547615 782781045 453328948 525505678 352359091 898897190 375493260 138133202 846261751 283705916 738329136 499154220 286049744 718288923 682223501 655780390 296350074 357434800 432293596 491032402 303039597 944429941 169493790 550234186 21922156 401481317 639002396 17141171 882841992 628437769 660988006 227846193 824365840 2515565 720885330 202060154 404342437 562515238 862888194 736906058 879732776 277519447 533133919 375478368 397253574 395881634 734728985 30897545 72829172 236274488 55495588 735859860 774239084 84523725 648958278 282450782 856090678 783729313 195245319 493830346 634990747 574105465 657713331 554516414 238433072 752908965 218341349 343811633 118176467 953674489 329575676 719733275 307074982 833059794 974250019 528521341 388199958 816472604 458863687 716720227 535235032 414028608 262992418 672702430 566202088 966072375 240655668 622960395 637014154 384175741 836497604 596122378 833837131 208046875 682645220 976796420 350669565 23675805 749465965 893580078 793751999 975880985 314326781 880657347 766985971 872612143 127049723 170147841 268337989 33198853 82104731 408063287 182922925 482509897 659275988 416000434 944806754 524136496 148274021 465165265 839934188 238350458 441177303 98409203 639332631 363537005 640895867 473247365 172537590 947591636 684039017 134678774 404543973 612360714 373591422 327221956 588417675 102713069 548488809 906626414 224754129 624593886 704555925 697760385 218321386 70957777 206972475 180544653 653994840 1449275 969556059 770762797 113707482 168653078 992226238 224378116 223470464 344350190 415780597 686741692 79476123 22637518 22825560 892313607 695448520 423388236 895874311 595191709 445008111 171389832 543247338 972414277 319466551 924815657 521397936 308122308 314202647 362262874 400889557 145731825 1290059 409862100 353400468 852552354 875253717 512832212 371352059 114624447 765559812 393603105 683946965 274032172 883063660 437811209 433311421 130872030 830503403 21289056 39627794 783122126 996224670 114610054 338530046 886057986 739264762 584374116 342162802 763474048 223946671 221101668 718336291 997120349 810410936 625139326 697014419 590077360 354470749 191114803 170458634 907061665 629143847 563625349 647925401 554807124 582606570 68088067 670515991 498223102 486825158 925381314 512363813 910213338 282360860 980825957 979230763 437831720 772289179 62456079 893637209 240786484 828096818 39773295 541885863 470998611 717671715 247306170 141664983 938728408 371564273 916166065 556416110 842670378 626634084 533377687 341776832 662076597 656334999 618237756 223750628 630432743 276033249 116543991 962913977 429932092 393143783 118643108 84867560 436016185 668006294 778825386 268608994 373880930 566880036 98655739 289120991 173451342 435244554 605065223 834778078 766333337 218044177 230980048 951711144 177202398 405336382 268327387 241013708 630531790 782865133 859144504 681079206 597535001 706519732 66002555 748491091 977729913 415276157 19510466 152687292 271533743 412830830 825180856 881082512 913028489 475599360 718441349 117250890 205381076 137051374 38260194 430033450 903105903 127655484 347050767 911267380 189288250 314957623 181654481 230484799 166104608 401755248 470012275 791279837 348065298 16176840 74763984 786103664 403184397 670777440 779233090 815931685 805819918 612076452 866659253 201573605 977496614 66383434 342195088 432796013 874895202 710862928 1708496 932485690 119828448 35632374 553164271 970027160 797792958 789731787 528666869 644562581 125078827 147532192 55651951 960860169 963799381 903232406 765807476 184050068 450552697 93017614 657126308 737227169 896294617 355068855 462441506 84113756 308095677 845059714 759005343 104799170 788745083 796502701 394979406 99243151 3956584 87905723 393107184 711691598 171908588 629004666 40449482 53033550 405391981 236403455 779578541 926154664 535440224 798281635 112870123 176798780 540515647 437594123 308570213 694781617 373724553 195625253 919941248 643137656 209076172 471301924 473477931 963347148 184773785 897240710 849108444 412005801 529861770 34593548 495687312 6166744 310233408 897879238 261039825 663149293 242864744 314248967 488864937 768859197 276651700 118779754 321614769 640765415 216635098 765044947 596335623 778272982 86213794 498648177 553033551 216849082 728372693 356843700 180671416 656056074 657591617 705433180 496567034 410579463 896659394 396307820 312250707 218121656 407730494 758571056 445299335 614998256 244095389 480582204 409616615 959029829 471160783 206323566 519765576 869524761 792418001 73841384 18070791 983640209 178177700 50590742 137341196 897307807 772457813 975369137 507379910 886270717 284928497 147638959 835861033 63428651 284345750 587397463 704455605 294691437 266988133 230348343 300129134 302216408 412441737 737639711 500783588 220874306 814862132 104801326 857308974 497527885 25844640 693610185 852377578 198976607 524197902 214130843 737309756 12314793 164843725 139264665 143280340 436481316 817601832 408647679 692532712 21624976 685600897 982839119 173195318 613058935 584725301 990761305 253242886 209091876 519565743 404206639 569976357 666129076 562990433 356969004 986633959 236150278 214774727 897038071 35527468 709829826 268318563 651340925 12638044 444616536 611193023 682185710 754284643 898816000 894472554 604807369 344968888 530245565 349501701 63455698 918815067 309517139 812281387 566735895 909959374 681392213 194680202 74187753 607076899 407679003 594714327 9783782 483307502 716068549 952816070 32771571 245160272 754828857 186486046 117385785 586198764 657297706 837386151 543888942 665345010 198013968 42267957 391962001 3034904 311419948 114655647 419542370 665994654 225579653 702443979 4135667 786267719 31941866 163538592 401334480 949143650 585367796 957436437 944562653 56854728 466442502 296145950 157522488 779125460 212091205 595859395 632034386 707194732 308571810 996598280 122299357 370653187 101997527 372018439 815635671 664522634 805340768 821900500 27752577 496781698 198766474 130774674 471933545 113307888 982724453 847163248 377503076 205195107 668081092 132344730 151676047 258970096 445755213 46936911 370812493 918466105 871314021 268907982 516491592 452148063 339551294 485904997 731018615 337300754 375718352 335746400 990385431 826993293 875566811 327750945 694915498 833367943 817682148 621348612 417154303 180571466 569502786 612885623 327376932 552782244 621149448 779669995 168273023 867254251 659131417 701145049 314523821 186199549 404604443 792838596 911710618 638453569 30116990 861953335 708258174 537453988 979305598 845906117 238308564 299923615 587515927 528121095 894730593 412715051 91853588 19224479 992189743 92180436 364888068 351986230 405757843 337947044 186455872 623410560 295735338 762131252 930536936 43472443 348862936 20950691 737099493 161344032 587153864 321841555 963171300 140822786 595949683 130271796 583775840 10984368 410782351 467319361 463651480 349795589 361328162 349784048 689176217 45422815 760511867 578280206 602880301 590029615 843572781 945779175 891057900 946192609 906622483 519693393 772268861 400666868 441775697 854625449 485101376 344912743 268960341 962102998 204024557 290693190 979317971 63721287 919811575 754496677 605742788 922117618 34791648 386062234 375193202 399596886 773570544 948307786 351171684 71005560 909644343 126881759 654273138 830640873 957280911 664139914 930598583 129837499 693749908 622448774 664598166 557085838 140802997 5207062 597562301 812985737 72728602 313559940 704268062 488022874 160916419 281227808 229102072 847179319 382731627 866207560 778841804 23478495 33320348 601185629 195525739 66644372 431950248 444405958 481826533 343309098 690392229 82943739 62848665 439366646 372630130 41350000 581915433 793108692 567662779 241342125 47912576 852936237 334626284 467654456 218289110 715078893 643982403 376540839 543321254 669892491 882585274 243835025 780377014 168750340 590144543 781897624 483346447 693009376 16291325 546550377 663841796 584343855 990679470 841065140 220766774 909290371 44034389 82739252 887917702 547513852 846480086 206622637 415545635 658251073 261008100 927930854 747790204 905529472 84626423 721987252 385926997 233169518 844823374 34693104 631402411 596182092 904018418 429199484 767881165 409364703 214694837 950953283 612255824 430413171 379260973 677855287 901228049 617734878 849407930 646776656 244601137 451996805 40130182 224835988 65529887 64458566 200488321 550219277 396757646 384906900 432437600 294032075 812713084 609718628 697806758 683391465 468854570 150203700 285117855 26908296 661640233 245072650 287870802 303972309 265435721 796488823 779524257 484324352 266375335 978079372 389682725 98378564 727978920 999607533 130017867 985760485 291999225 35570364 922310209 749858347 378317708 412031913 679260927 820369256 182020768 813886697 770529861 864634104 373743288 184885820 58962844 4887100 503833505 367852776 359878485 103816864 28674157 673334458 545949065 451201171 632558715 131730698 370596628 508466834 778986604 463643060 460237986 203191327 924718385 149493792 572448677 937123522 570773752 575621181 76308305 899361552 519542339 356495743 384775590 518641570 482344147 275230694 365797487 355513370 832874676 435133174 428187708 788020258 915642174 248996032 993374053 533667438 235547659 105563864 946751753 683097528 286942205 349235038 763520017 207576512 648563266 36129785 660189741 517601875 336978256 200819922 469999319 95379521 93119968 123617190 446826573 900212324 655074299 911625390 217279639 397414561 576587751 510884789 912460423 564138718 781458236 608527111 884974260 775386643 519400406 885009527 78610561 896116023 332230875 84171368 428531986 617867850 161744306 251762367 795200091 352608602 415120148 98635240 608563216 787993977 117086714 45000156 841231542 146839998 729277613 103566104 86752915 126476367 213174708 45183909 584158902 767470930 872081127 432476172 134484475 93812735 811297887 292209255 353784319 407916940 787396995 919713107 131709992 732312124 782722558 797609718 82046637 573667419 255728837 789586942 618584960 398982457 226762002 560655012 781157223 547695153 586115436 173527460 484455653 843123621 531155615 314703685 122239819 412471809 377066172 496541778 401743285 616269493 691753508 518257446 765257726 118533435 873047160 421345949 987070421 368120856 250820007 905610014 647270818 123380181 11877600 984668055 904554404 879657987 572657063 19034237 803252440 79841852 902908088 408001231 507741705 662996773 802386725 220282133 155466949 350401895 119663425 373072474 724388451 752694962 58424231 321043766 544727812 844150467 346751546 21909193 87661203 306488410 161953579 244548535 764548031 345736261 136509931 709579567 990288637 788132437 436562999 27011557 558191505 238802529 513486609 264443674 976985219 413592908 639642056 56138644 916634017 919269890 850138865 388989088 276432516 663388281 714466149 159480087 878451087 723160227 568428362 978764884 713500902 658931591 649979148 957127998 633046397 520956976 743544417 875181892 900849163 557612206 3407171 153574238 102011918 133695773 706167030 531795719 946637521 815329949 191607049 969679175 196273763 883336283 126017612 886205867 698346653 301628038 325666271 379292488 539624991 541764443 613042725 838323136 447014223 333395996 871514571 367426617 730657121 254847506 894551746 449931358 956649805 792694672 9241930 231600486 773136079 629337840 406358249 405762834 820043635 67538325 578344293 930782887 427147145 693191401 492700629 321145331 843585832 330648413 198943127 796477515 906733872 238558573 489634124 113926031 267379277 651880088 487213541 415096099 621592042 762356844 279546771 162886391 390708034 378882941 952405200 133854336 568062037 780030559 616128870 1273793 789083882 630622902 507515741 488080953 584612756 54357553 776785930 255799290 821236905 367214972 435298058 825854621 45159753 652249943 340493632 669919803 696089182 233519487 88461789 665318525 962813334 988456897 644370764 465261456 334672492 167859438 540551763 200405293 440501023 171732964 782709488 16457103 831498679 901545600 441375603 23553660 435034883 756213424 825606509 804044357 242987421 107708773 932486843 574003903 225084644 664378265 956664963 369412681 603863555 356139340 86591023 730953928 599066856 850763916 41217141 982148779 757536075 587444333 692705872 307196903 338418093 916545027 871408647 265300733 429815383 754627954 388961828 555236334 74289238 142067433 421499515 814622543 944311942 901314452 816368935 66347314 204058758 487879347 896668561 308603958 804552127 26120322 819000671 244220547 50792543 699955026 36093322 376430788 839753310 955080305 117960013 265114930 398615681 963865913 902821163 532660874 597911882 329738255 307185139 31867666 967063055 599432025 248527797 670282650 400146917 998733966 242621648 729063542 802142378 780566821 594062568 204219527 372414988 20263843 31319018 368333358 307546233 814561423 409463050 479040097 163237926 621373309 784832452 533955471 369738777 116853256 585552603 206337720 920517908 391099601 811680092 857197670 343768234 966832258 869126557 16393636 98389046 942492878 900391991 39172363 288140757 42149744 875069200 187649461 94433649 537792810 561409108 789385291 515980214 9353412 351657848 122745851 673289507 441470995 110101560 385271674 693266677 800961264 95674265 581313544 900353072 375799357 216030436 973753452 321181868 37017829 781203121 230473712 796789244 25649368 42081752 556332911 422938244 969073684 196915842 93854789 730351721 940605339 81852187 157457753 357174426 520885362 806793555 132595735 930968532 27057329 680335144 596140921 247092629 571805808 66173409 871767800 566474533 833050320 374287622 197002145 329485459 711599871 373695345 614208765 782859192 44851500 758041145 810036772 635737911 181150609 103971267 122950325 462860661 25336179 154855101 116778453 758717858 645119512 177663256 521566003 515214523 220743641 179515158 529783813 96903289 134987016 566478391 877178888 210392170 452499215 141424711 798673030 741499612 465099090 543479901 49763147 91601385 676818503 345891282 873139114 507587182 495946854 67184462 561152391 238093589 733484341 391711674 910750787 975566159 883293241 127033676 606645712 963684436 616536070 509469311 270410147 698025507 551455546 376332056 642400699 218587268 643305843 43785508 193746333 832418314 701427293 800673783 792895830 128166668 740879531 204391210 979691648 336594601 334838549 960421799 531852599 47992267 375272796 321815701 940556067 161417761 241780049 654326891 198461551 854296354 74277822 609929188 434477779 700145424 57265029 930052870 295833741 884830197 542250624 349674013 880501090 535573150 383979681 717723836 389593509 352001957 247617239 214810814 77385511 334019691 488805403 838415690 165794889 37592084 226184302 590398924 528076529 530024598 724757473 627556599 337422732 477595045 90373503 796220360 385991696 967160773 732343399 472916611 536545022 22778681 434032824 331863475 986798683 764031255 225184927 331181871 679182002 262258739 150150475 443765521 236276254 306981423 245200889 124778685 414526778 167328370 814085866 516894688 66557488 205853486 134511721 838921585 10015658 929458781 571666377 310847655 26674656 831129275 446774880 316954122 143714192 661691090 498168470 174266981 904619267 237774834 766714067 645021133 579291905 411553076 432829063 83510429 50596327 386355832 210785585 120591994 277815950 613782375 655582540 262549840 883833697 585466990 746100075 437325909 367316809 729237961 237176088 562656515 879598785 3667062 831182836 252517406 806654148 94078271 909601438 989187252 542884314 341894067 546167745 268632856 621665041 608632619 671484173 646180838 565999358 826976198 519837759 549145348 766844609 369610092 550054424 119428254 311651073 678703312 506557797 212930598 231292137 87193192 891532275 674518362 122490161 979640183 492371872 189154623 309432086 615718656 385531214 890918686 231353187 555751640 591250406 51810192 245714272 304812693 764510042 883885421 744637415 627964056 557770662 417351387 203928660 613274888 540181452 920269383 799290257 519146201 688472278 800715621 402800904 210209982 105110229 435943470 760851379 536372283 904144868 265564652 183146250 962287254 775655207 932544039 327158813 723366371 892856261 153898420 852849264 937348597 892016625 292708785 11578657 763195758 849555945 676991 726557642 902810808 493416168 692368076 774667667 106402565 741502017 695671439 558646825 87756104 140663872 409687552 49355970 651068229 992959297 197011109 321700641 235265153 160654503 242801227 935822468 618145105 80350682 155121668 43684033 524092361 876009809 842659631 7320362 389442763 162392961 171862639 362942879 790814463 451485678 550688431 763984261 726194132 233386533 804936230 587933387 851823238 841682099 753584461 696871652 108475665 597590582 181306858 683170772 595878209 380058705 189176330 496701215 284681635 437276330 340866306 308724434 286150289 630062585 861612650 445743237 267870506 562838259 927586602 848481365 149875801 795773788 533738094 176624102 642237898 73254143 132487849 399624043 139881209 857269934 458820247 675944600 705744420 837529925 192888382 994182058 856256340 252474019 707577320 797463659 495922010 523294899 478257450 637364516 384132300 309500009 195523043 648478639 762183439 1842877 429748533 62280296 849947462 22838707 972137610 994536760 915894115 242636627 523200664 91966092 784431902 814040754 499603551 780648539 264128251 29140203 636628508 882429217 271900989 22994973 394011747 607739109 492978420 499655282 572885250 658690614 730954495 492597537 422867993 330560298 991651063 562026847 436617480 301888096 192229448 732051312 986731907 102768637 459910433 177557920 787729012 834478766 556790138 698891073 992761120 913299118 531345428 596673960 97165320 961881270 107856248 383362367 502873592 612252945 832158967 474511981 675507460 560239752 357186980 968015008 753651593 984161143 355922789 160208219 397455146 510710967 335253982 431238936 767668695 354884785 146392963 50319461 563168447 491744338 457735307 840747732 358571361 542886930 633471988 617527808 828796032 774268655 157565579 239062155 282642218 697675116 965113306 105903900 977425845 918154396 374486847 218493803 974486199 866977042 40879831 397549868 485648920 813066223 98784394 991628582 162000902 601001428 290816779 600818210 492166132 844933623 790904527 594954226 817235357 884225286 288838937 642882161 405389828 294629446 789636336 469161086 40446587 822490745 415474725 156180742 688604047 586702064 10446412 126950396 548554785 704763519 402744781 479347033 248005717 499352199 762576075 217269279 452321428 290690027 670506039 11279193 720831127 373490715 911711433 492836633 222760020 822800909 648902656 264043897 281697046 32464702 437457707 355642778 9571943 786216631 680467537 48554664 471694105 787865093 491573072 679206614 78324296 958117436 462770374 726523998 561682524 964254462 917589790 937224321 444809214 134358895 38770566 453150345 107970853 797232958 901837046 886926022 357584394 645579681 731175215 391353240 22033461 987401302 795708345 30819422 743636334 787735205 546479843 467953797 271952588 30986328 449926345 562516603 408520619 316793034 293474375 107331770 443148462 860621783 626616327 355960521 338242244 975517413 762559354 844343343 445490718 349441507 768265177 941743487 727298876 807076422 870230304 132063059 291855839 589791759 278960923 296532300 912682002 864898755 159376987 358652696 89917229 984213103 733795125 197022052 85829323 976759464 861016267 985066224 974989264 85874064 374905861 6609787 80516456 210798283 906330771 436179662 345281542 449741448 608291822 447728575 475332202 997923455 213898326 200025892 237076629 198997225 480286674 383100130 400878292 944269201 531993908 707120355 909851834 810233538 466646804 904012825 653790247 713288279 842585810 601564030 33528892 799423658 628807575 488560917 249709159 83450274 111952720 180766950 508708186 993142703 718182329 62421511 225872405 172149956 820559185 920102798 504878296 530255203 368650335 848972705 799226929 268671889 215546357 716507241 236201461 210677211 786389226 7910167 902502977 298716247 420578016 726392037 656712823 716369316 208514877 373406742 99948611 253103595 960083506 116987638 815341722 776773589 507783608 684200151 292014778 516334492 15519377 770405137 662191910 34583548 905408321 97432585 13633707 57958207 813148440 670833701 69351772 502416432 943483700 523933914 912236948 254958375 55679856 657975205 501482237 255697663 277858681 401690371 70688635 179640865 590636985 487478145 344526921 427058045 458550892 323447984 325875934 414506885 661261458 88455213 868823555 927633208 596304117 228046999 880243394 195994400 894357794 420126362 2780015 598702150 222201458 980800489 204608167 891331399 564581126 73743419 181531215 393785659 294936775 597072982 614432401 431752906 256083045 255397634 9747170 967154467 829051989 366949907 277231870 830378748 330939355 159060832 694835181 696121749 873870334 191505870 810900724 802820528 528894095 984284232 228053166 668487326 18535717 78263999 114914295 418930487 163308576 402160939 866273516 732148951 211015082 877045395 187487747 101823074 578274483 413326845 671457512 764333898 394848242 327317885 344356251 720587396 848875241 523348269 892199777 189063568 481605340 763703342 508788677 610102640 788106209 248210351 123384730 226903990 509286348 489613277 434717185 96019320 260513600 140178164 546297176 653443154 143646371 923961911 203333199 723731308 225264422 727220462 832939739 565611123 499912132 700333935 852205364 756463774 56114745 317034000 864494306 172405164 416183822 849431609 934463921 673109731 582076822 544589644 818441397 703321104 802274536 198638532 592258376 972392587 946135779 399105044 593167376 436526639 665062449 485102533 207142394 18238054 96717888 914525787 612430136 387883292 869698122 51251307 584083019 457991113 168929358 687024270 537970928 892698218 830152727 694458472 322219322 887758468 309945394 69735333 180914808 673414185 634666233 792646899 846699594 677153005 192630666 739694862 653979541 32522477 743765714 997560248 388071297 532390352 619902588 842502334 238904453 112482246 761089029 493972719 997588317 886334082 615786921 621092645 279591947 269871174 216388467 62691651 375077599 492594905 845868593 267183925 444593003 525751939 272789629 230582762 78673805 510761758 843189687 705967201 743857252 371800842 4569864 254066839 971928421 491585066 537085535 122431130 703631165 604271345 376564595 147365754 218517739 866401102 854121159 625689171 790076594 970383812 648555682 666402118 430896928 53144155 401113109 673807996 72415241 884898205 581360118 903721771 792606088 314155939 442066408 705480842 299286275 358186761 339691858 159547615 626782757 701071862 719155813 209405551 687110113 916333339 592919318 533100687 806696311 719424682 57559082 644221592 281370982 772955492 987540007 631711473 18340991 266390927 59012188 701426174 466771157 968236537 421966820 695477556 48857283 599075575 764529308 830592526 37403629 786965350 216994352 108624140 364228160 417330099 734875406 155321532 189537522 770930884 156397935 413679788 157819773 797060374 816086098 953897592 358531750 877941154 869735040 973117124 141363577 264816370 856091529 872780343 493018187 848516626 233553607 962529927 956563385 420193690 197958743 445268841 754147234 898898086 525173796 390230437 223389241 50388958 823282909 70532097 778319087 52517488 971221755 749196370 221971329 532766995 999242686 336177776 849508083 115165955 745656367 715191615 528779921 810743047 150094363 836354472 108440302 449702511 749705500 231880609 123411178 33000463 739104663 921991964 231746727 387718982 168551340 64672037 653666446 995153149 824808016 197412031 188408920 898833564 752991292 385620992 343880706 735433503 846153966 62221569 605684941 214137346 258092976 198401765 933814341 169218125 568552593 479722197 64396607 811644299 591180137 415190275 101163225 35293396 506851032 636511658 735261556 334977478 421742409 678891533 169503169 681410953 321493992 438289783 899434929 744688073 721252787 410462775 671678846 531418044 841664098 324549801 209922737 179698467 908932486 941372977 737384725 254156611 185779563 434884150 749525948 604445670 920816681 24353581 874597380 838279786 709347488 983148943 682075793 367277736 458170232 165503198 191397967 819125254 127920677 781837989 397387634 282274422 28729821 834143095 607292537 449066858 815754397 210440171 190178597 223590117 937756209 404975527 337141120 660005480 865556264 581480018 358313188 722747909 347603932 535579296 404673261 55100753 666255213 261094221 127273080 679725160 711647935 15438361 412348602 494868725 195205510 31075533 30143522 985545507 815753530 592831039 244437871 469207209 297795099 154678084 457298595 109978055 359565873 308068805 457289226 957630015 394709581 222513574 484783930 322867298 20893444 565801437 190661648 273545222 206144957 79575395 224023471 745710987 835158425 916657722 337252737 208894164 646672013 569295468 659018303 709553232 309881933 559429391 671046368 240446457 466220383 44619574 806074796 6561864 624345605 127014667 283331888 327962951 145485653 378456755 402887996 673150848 223818274 445867361 183325169 22458126 949952528 734674513 729159342 198766220 784038534 999099332 499608869 102349859 385377206 767492615 516415558 286238849 168653204 79105127 25544529 279408088 854718693 240901187 93602500 270293738 192270894 584378361 487469426 785588221 672533185 189271030 547489645 773248479 889621941 667196335 943894799 607719143 756578539 441539225 921829372 102154736 813922826 383012664 823173158 941010274 219271044 649988118 375899324 323842607 641582481 189383369 838443835 156792009 231379760 791844068 203742312 268361261 554246954 878194449 24691025 713861348 741927697 784270324 207829063 595220479 933867578 945486146 910076393 227506703 495975113 755501240 650807321 31684659 132774048 711342354 385180419 635952404 277691510 34271520 269137437 510120415 301892288 453038769 750857506 86587720 52713153 746737569 871764250 885508241 477505405 150466768 9319245 366891134 759448775 529261354 346275407 741086302 50052149 757749920 533938942 524740871 576973355 82685745 942496639 844857814 570101965 761327063 250443836 546973620 157612302 654005155 727389419 3813391 855683495 60697765 765712264 911177176 415097876 768258292 209505622 222387860 467221410 55084473 129387490 117224263 59926624 598158361 151970306 464898943 421754917 144813129 818168529 977732688 228964241 448817793 188057267 453031771 538755852 845215748 254776915 940890567 378414538 88870940 597865894 178943294 609443520 504949022 304915176 44261114 648618926 245683555 301944225 883850425 889480732 178120264 503870873 904487361 504225375 251136833 699912676 10606558 230815880 57318070 754680801 20586091 700113788 312330537 21657650 781601600 504960482 570722329 615809476 786362825 950250283 840260369 314455245 404371951 894140046 800437409 191205318 692183341 326643724 789818727 319278199 878253951 674256237 215881987 946433256 586738282 950584128 454449950 295494256 622076417 486088673 681878127 159123116 321142740 688787053 533241771 827288703 631652868 228506572 545128087 811038483 103737915 338295728 659136253 906002657 67381921 714723728 178175405 435073184 48141551 41653166 542030212 176763993 235364197 579967504 452450405 304138837 916665284 240577417 989876278 643065898 584482915 133604013 775031790 129687989 364789006 401058016 45556868 638104087 380708394 602800970 482536956 135304383 457376156 360727000 130316897 665939040 116127187 655702599 575884480 358204919 184786626 204822805 703549498 275007433 824324843 722613384 121499887 10409567 222550609 889489332 943756039 638815120 581132164 615962478 747150263 234441081 642909851 763987801 695365174 452201853 993237041 276771036 449710795 250116935 755612273 301829159 833406396 138584524 601733125 256146739 223852639 667837515 416252198 520242366 441353227 138713412 873028752 14175573 450907939 143564165 327230093 443175493 486826512 251896610 5097446 509167781 220562504 797177978 123103991 991728727 864153923 921969454 640947352 994471170 962161539 111145771 975401780 891312410 435672978 142490533 148444600 130395858 823739138 181300763 312496283 35781422 678676849 879466316 336858841 430541558 166168444 839957577 525530361 788497849 862814674 716212066 720083979 375480527 410823713 345074488 259893923 469190232 337030694 639739309 117336542 955777598 250187427 27027693 780288105 378257201 532404830 154758250 960018283 981200294 985576240 382740455 879336351 236482274 771049200 393400929 4981310 447782892 334931072 451048742 736437269 531274898 839547595 740265679 796305517 610246765 755368386 726724659 265758239 187362783 556023138 668352886 583626374 255410959 887660203 737487624 565623437 259145965 350811302 774572189 637558687 997939248 34785126 923489326 404972211 766700634 525764361 162632961 581650758 723156151 369083565 369618082 768856163 934927694 206139262 291891175 54090640 812383745 675605422 856264680 169156076 278408553 208128887 525204751 193307409 716961266 493114907 500497411 806288419 681420493 449673444 497383098 504710356 522961135 8986150 241167730 730399321 742531609 480788538 525232559 462891121 90302421 370622082 525485370 212570721 628042353 844161640 275412266 281240054 241344009 143193697 364105948 618254474 901101945 347835106 433521394 301479928 439477099 172642676 174296666 482739624 712359249 572988315 737362758 628225929 729087072 929307117 799732276 562349327 202815642 449127170 26538216 54909497 289337287 162972286 139424625 117081231 204365945 305284621 396822812 413881883 380408069 725673053 440475021 157985913 173935244 296705064 687231907 215927746 780346360 259257141 610062988 767379359 962555129 190838602 374403262 1565758 66030855 341939004 858319602 386977620 144941153 83042277 106108209 313668386 452568847 768527141 462015937 50382188 551316963 963787496 332353083 604973185 390635892 270231584 96282233 943397430 781273893 333856711 710327200 579415786 274561562 965782495 95796509 871831687 464928327 802266226 824773538 414835573 755907937 891943060 842962477 883107244 962912747 766107487 221850883 752650157 146124331 907272946 847247534 748561787 68267314 342027133 692178693 826383782 846228955 448892972 36787745 46834246 108306882 728103997 663977320 229217782 466970193 915111922 770078345 652859101 917377465 795829140 198254195 660361642 71836656 185380982 702355557 1960596 42962363 515188210 727121123 190649942 612534173 905480811 368737976 613883706 684403431 481982536 210075131 705076238 827505332 334717184 749513478 561153316 765861602 467599372 323896190 617690465 990320924 651503085 763456336 849503012 482226638 553292076 357630894 151343968 923825461 410436447 411238936 264686220 573406284 627237405 52977486 132216227 654464992 616448523 25892958 854905131 388544896 324949967 266935199 656997428 755677827 925899550 173051817 97939286 63117064 99168180 819126369 555196845 496930042 423008337 555851253 948435420 740553482 218917822 77954521 447118616 4819372 553258449 466869192 881254420 930261028 697880161 486749894 212944910 538653562 44768849 200459298 845627853 976758140 480215181 948756078 651843229 367450052 470686980 312534662 399312215 56963251 171402677 68325009 268816728 960011375 210402204 883846391 972757383 608240616 884498377 966216559 901936977 388637658 776836171 251697653 76335532 296068034 768653116 664058829 42437659 885665000 141429186 159155331 713071005 142870878 944285955 521955050 658486725 68313852 422630706 85298720 336587176 782467682 104122509 567637643 345340132 433273335 402045009 639826645 436841633 602727661 748510667 958372081 911830153 126136893 315380559 449388316 9012695 424561571 237135154 465762014 837264966 567801515 765842651 214638590 367697182 153783204 761110451 641986962 798720044 758289576 375638058 562440441 663674568 340511380 678783164 650127570 760739024 30787093 220825326 441505295 132118441 189329046 860068935 609916640 952365379 102583634 576575833 666931139 957954832 161851976 761940158 682930301 804770067 5913411 870812189 26291478 402521809 782088401 249903897 507198185 762556502 334079304 528706666 639750028 292363068 619661261 629538503 560198120 382081950 108699462 778962933 827536678 127107365 565618018 359420858 43025853 122871290 912215452 764826348 273663077 713572314 890519090 364767333 482640678 736868097 259227438 895715334 819315788 452264242 480053087 277277113 636290411 752864448 65577821 591737458 471186012 528975230 36118152 463261480 375259208 87384013 994703885 227440611 428140696 600517519 500037588 610877095 68426245 868757812 958747546 441775241 260490117 280821942 388558305 134436514 540257119 903331471 881966318 390772505 628278815 671228614 393578450 352508434 95364504 230281707 548142438 859517123 580888042 918496786 902763338 251564132 239817846 297647578 830215910 378766137 951607529 19023211 666167915 252275082 190661689 394073969 788200911 531265196 89184158 901348385 456355796 658550778 438946208 975201341 812219651 330665938 545446668 403104266 995334827 902684834 303735795 236901461 458156004 157582298 711854771 100405620 438466704 710253302 725561585 587230792 348045909 964857976 974982806 13778742 349669796 311958249 30688472 911384874 278012599 599684571 582618422 758414492 884088461 269264617 610925681 66928780 438558701 426384055 833550230 380448638 998419559 835278829 720132347 172200064 235936598 646841916 674621753 33627691 199510745 399290723 847303222 955565976 205980376 243856926 378914335 778114418 744275458 384769342 251575911 587024615 153632978 730147984 873480395 986992298 508965512 872961521 655639630 202406396 339164203 894094915 14450238 14548386 70832009 663546479 789215534 17306861 223014461 148493414 791899131 642370734 487801000 676606502 532405448 836430408 614711537 435755695 219677701 682841758 388484614 608324365 849433952 751809315 413857445 874257742 775100635 478109382 613782088 277362576 62861239 506852620 471070780 321661175 833047424 190862073 157071502 72116904 279203087 150095896 921151257 398761689 187441018 831972229 623509115 663963075 706366248 611024089 470461212 427739305 595176647 362412860 108729391 311448787 491304518 552829023 449408683 714234004 9450984 771448181 871456334 520760394 458565420 480036412 43974819 669835091 214280161 13248508 844037113 48415515 295554330 198554244 262171752 685351956 371388468 11216169 400597715 282109112 263574484 117684169 13036509 502388360 753190117 352201163 740493563 909998354 666271131 715818779 198020965 626586341 128744048 779239219 915652374 648357018 331044143 740706831 583836637 989917656 657300958 998311730 243321414 801079367 100961236 346392243 938398380 730399894 208564396 513108513 150355502 348310916 670527308 982968218 689093554 271977683 721151198 817047752 879557869 705038409 19450329 489524185 182569299 563557564 321315575 846679169 505237797 772137733 984205372 329056511 495151725 421940998 282852342 618671899 934994427 589768875 848861115 488910624 628181092 107891426 515866976 344377574 610000143 940231338 68253201 852083404 480580892 947525124 393305910 213530297 351834754 817828601 857701764 713583894 996653300 235828380 746301946 197426145 525172985 868297223 334216409 950707601 634034385 855087965 128914605 227950129 211761042 253718726 350975308 355728975 610755090 56084857 497869523 465544190 582173170 901401258 956869794 911889375 345887386 680143006 328310890 910055446 36916284 307689378 871709471 416094548 951974605 375675140 88238072 433321934 669487887 755772963 774199168 240898629 462548874 494720860 826292862 523586297 771460494 652572445 633965323 646451901 798963765 154365653 595498366 741379556 635724125 627214337 114237825 818828625 330139822 13856035 60563195 912392550 315933338 409485507 971304227 99639060 585008985 468670583 690777461 831031503 522624491 394115028 829280949 526102423 268967191 262478723 172662766 303117808 802442863 814993961 35696502 634878188 744868170 336626043 900544489 702456095 564248011 923224368 653195050 243017637 446542292 965743118 74654569 899856679 685995549 349881052 388371477 410266834 113351449 517285233 841929965 701059936 143884811 840931233 512695540 818852874 223571448 43618899 632188281 805255066 125297845 417778799 32141583 154923866 743885268 990235625 777157774 944834599 357116861 515754680 10738210 186041688 285342865 517031906 155865136 672444377 187849541 93417071 310328947 933890835 253925006 872004210 809253089 995041281 726657518 570845189 38073539 591413279 439243439 448090699 546816417 546613362 437012190 315292269 380958803 773677708 126945877 104101023 982897650 957892478 139497906 991535897 593066213 715191020 576373091 784506142 178723287 387086841 500912273 32237051 637121212 262395477 196957752 784933372 532142546 192312626 774925849 905384322 569658522 168618067 537635769 696013293 416861924 384390396 156224877 500061349 232818627 277767932 188663625 361611292 591838864 619527081 439858735 831972562 306494965 252016864 306608838 342894147 864552153 993622539 180784256 858694140 850918773 142859541 85541526 331294353 489204800 90084725 401517831 365963927 882145025 369873704 337085337 630921141 152353221 110851510 133802206 569835412 673884128 935908652 477367601 609272036 907401453 302381858 884726191 8105570 231739345 603928502 584321344 965122512 618231225 413810830 723269527 926351609 852678423 892239319 720248873 913941677 60935338 949451079 473600825 968207812 900012148 947189534 542301388 302743079 101445315 227684129 930133943 639976379 893489962 646616478 443098765 255162228 791622020 186167919 112478387 377629773 904430843 604687852 916306254 242065478 450548981 494936577 532528718 713762669 905032230 908455192 317976943 293311696 574835088 573881643 582206766 65450891 909019507 412185781 660349909 812341696 534974557 409702845 394040947 909935516 241242145 369462993 177759199 772832332 179968730 667276296 977585082 420561681 230758895 927860738 880115056 588258855 562792716 357529828 255346476 464756184 37694244 422837594 65934059 781290364 909448050 167796124 507413865 429701226 364900991 136361579 889524528 155702020 364222226 967667208 352262035 125526964 332319554 523188549 264065957 746935278 731187050 649123957 218253128 752861482 637208369 23785083 754109990 577226220 686079104 922067384 68971697 829960382 28626060 631274268 491506458 264249651 330369747 471409953 628950632 248249059 236528150 327846081 228137826 877438576 253680484 356288644 997329302 594633863 134699795 267211639 714883167 637446872 892885432 792985136 359055322 694282014 75691839 14362577 708214771 798337053 120311249 946930428 455576407 891278493 701876963 518958816 576053374 94416497 73196591 143852086 249785004 672821105 341273787 160905272 710192872 123204738 940800981 473129393 215191297 450299024 35296781 119663083 512413837 505609611 428751427 557940159 716338673 692499818 553226395 179910280 113395026 254510389 582990718 491841329 921249699 580128755 956951204 38852388 334769048 613352886 628763654 885073242 455957686 735736475 170543340 594799440 406607939 785492928 106514144 537510926 846558796 838500434 555397814 617947423 387863729 447653509 274142090 711141787 722969098 980455054 918920131 815675681 454011078 164846004 364779016 377049815 947313171 252690752 737035859 8734825 909389543 13198725 817499868 38884113 52081411 491120859 75395370 200791176 220696560 756114085 475944712 530118171 542085120 76687949 130252682 307678612 109348680 291501127 76237837 748590665 623090347 980281612 82112310 66376219 906658511 195396639 890873839 728997484 951561510 589626120 728755821 798260526 569283305 830913117 624549167 16475095 832477716 730992308 969443316 992165987 236192885 409760691 572326604 521137241 514230422 854496513 941115149 255272904 752964309 189269330 838750284 204444230 457331279 220082016 897888630 33111538 1236460 871934704 307724210 187332211 30469982 878751177 600649076 204921332 374778911 589596859 963476349 527665708 532626539 943593637 747684810 710394717 397014603 860386153 132267694 881788745 3464849 924090604 125098424 322545727 840062932 376351782 399698634 502945815 908195191 468497423 619317506 279178028 340493470 517263531 622290896 360194409 78328637 677648896 842739689 854553913 625710345 290608421 951579719 95689877 822792324 341014832 668828974 418045430 294592503 450793030 811462955 209312615 958717552 385230481 919640596 461158773 639336650 581926210 98093059 76701237 444048037 691533719 79438941 575117382 913407844 77949389 558121677 53206992 320341823 863132721 224046152 244234113 648261672 408599572 343984652 68524939 269749476 170351314 131738781 790971057 153144825 558895821 372775622 310430519 823266996 301188718 560823451 889575403 641857076 227341097 31790713 930284837 493232725 617397877 103449602 56843203 102169281 261702871 697624356 242393640 351309284 466815195 713494807 813172038 950051325 729544719 497419600 233093010 258993159 167342094 58996378 432823309 833027276 672105852 38237180 966662454 867502047 671392515 457076684 834962467 704377491 388280916 173408424 585559396 471452938 902432045 104657013 889349148 565292846 19435594 625577818 895228657 970337201 713408634 196863185 7581966 848195844 418966415 397256849 976333100 978440303 878691168 805900194 359159942 973901046 249946324 458982735 916551142 503256682 36177105 878388780 698982555 416805988 843409738 839061272 767911799 824219973 137028669 931718195 643868632 965315379 267438247 691465709 753410219 267720990 425140116 26791926 329601878 987145155 368558873 29228620 159724757 618151068 555897167 319859255 368310947 944743157 846638932 627059518 742720969 876006109 443402841 330968633 162446803 140953644 305009291 182440002 671260118 102438277 280924709 576411071 752474996 172483916 458040941 505813338 652579283 550034611 242046632 812030728 782989983 82463413 943839021 486033670 831130894 485697293 38270546 411253976 408881376 861372231 258142077 575114826 731472731 370233778 828150294 755050610 302018123 440385128 789084305 216094891 531584776 238061126 288290150 803614615 657170291 133157369 880562712 118612004 814574317 258307308 954974770 485082247 371273576 999360090 282568262 309814588 557588568 586710594 957412593 684759558 178688444 805818990 452817870 208638709 361827612 961155438 752153743 878467927 10300548 550320536 4781537 644163279 226685835 197560335 324876417 874143290 311799889 1192378 244022318 767827658 50545782 720156232 157029558 402984690 264160304 199997236 441305834 619852654 38623027 147303612 446388645 996988480 632082363 472063210 236989640 214759865 775257487 490240653 684967487 647666537 465368319 335043132 214126328 252780335 975356382 808352602 491633651 338646058 961127052 97610513 965149996 548343759 109563123 421676363 675102899 803932875 856382842 929587139 143059862 612938781 339622431 606808827 688882421 569808392 720475992 5464891 957538026 85520666 433434931 877118865 500265382 639405351 912718904 239281878 883538521 594838090 530087041 322778284 943330364 99090921 824742060 342708346 764035987 328288686 793125599 267279984 712728233 288000142 332125124 651649159 345069261 901950921 152326041 821399935 275543386 896326621 928904470 499645407 137332404 245706136 189061252 964834552 77581638 931074323 330621619 386324452 863256193 68859557 44058101 942028930 779989470 361444851 265113898 213599353 742147042 360739050 595455672 531899451 490716949 705800384 265599888 468203518 606515465 727901935 551856165 293052103 883921243 595660349 945139574 367726424 286280872 687141812 793873419 281636678 280978337 993875368 144905967 467022311 205783027 504341691 814614712 843531099 757567834 179526344 280467083 307991436 564896922 428118020 423894791 330821930 189942906 866393567 634704220 721959594 55206606 345831443 553679937 655811923 425705330 439776168 737982199 444208678 548812101 715696106 907094591 35976950 787969843 141911917 583660907 139515229 128053548 340045581 162309455 233318330 168229166 496289005 974444874 82695732 362806330 723258744 823106115 832214460 953842520 317493865 152236969 788298509 536256157 37670837 532878447 945696163 493450274 206134947 666568214 419475656 373332745 675956414 555239331 300415117 670175356 386205916 951831719 188483784 550595247 870689306 9571378 991701021 520897499 198042842 499102699 124830448 962275138 646114762 314643697 337094261 717607471 793940190 668531444 476503971 258192629 869036624 621440301 383435320 13396971 324592040 7890263 363788223 70218359 437909167 382810809 534174343 611220481 614427259 66372387 433468073 997316346 823253094 744685544 959734532 82879969 254266646 562847978 191941184 927447602 424501113 849226127 591269841 504145790 745732545 113695680 91105005 492408915 371595882 475218682 747151761 946495308 261849915 685276983 346795402 332414987 482592314 768317950 925827428 406936635 962542787 159940960 190619004 95504015 675974766 318981358 540587249 309135807 55365151 334269644 873069223 871437708 857465093 807655580 826147410 351803334 738300816 169605262 846044522 618174266 220293761 803779672 16172590 423593158 397316569 647059000 684018344 481006152 437864420 565491190 839649705 724995503 646857785 447719388 998135237 76709867 632669875 88836551 858591841 344735221 268945525 510773775 777727648 136330703 500973804 884245147 869714553 230385543 601489101 421251549 852832156 782919722 604182291 525449158 749733010 629340889 666993154 376015067 747393436 288313263 383090219 710705436 207394256 233319642 384754011 968731418 808654339 915771791 902563251 815224044 649823700 442965251 377644695 952165680 338562223 987804027 537814446 366135819 107780802 58369855 5793781 631606826 275277828 737254821 504745634 318249415 963110713 541490691 50355259 785670044 490154215 631402686 556979085 985284084 432911964 501309504 546418347 513638811 547758260 450872827 175052784 723861732 321736142 308120425 479053570 378384050 670715219 881163532 52772817 406588267 794144176 769557872 176294282 460931578 508676897 124351524 267686317 635128023 177604260 878065862 424235774 880371456 568911106 856031733 351621258 499405052 573044173 706138206 236930724 667903961 771894874 235127217 998069739 96819245 52846796 705528232 230597182 33209110 831866120 18715400 707601356 144631611 665031106 220946584 605345802 780803529 304417649 856693806 109321396 642984311 54420820 908962722 968365777 833581956 216221301 632000469 590059943 997024948 605880995 475851699 975549900 786900568 779428725 593374510 264892961 381756742 951788879 562093120 88763077 453412059 653243989 834835436 109588519 769247229 914512762 898404157 187738616 414513177 989217655 462701121 999018042 780518440 465742792 928902422 330794029 156550056 963766203 193580766 198865759 480490398 530313565 926163139 430113440 461192088 818445956 956133620 460841747 941425327 329954260 426578864 455826201 171627135 291354551 172514361 600118620 558564397 151845718 144228310 414871509 292311912 797951920 406238426 357509306 35907947 977985154 980429218 482657175 654860269 236523348 676348814 488721459 281366073 331793530 970857993 836001186 10161691 766651400 306261380 221505347 447329000 457391841 830474874 648829880 524664963 604625323 181505135 54394863 263731279 357574614 354227945 406244379 659112507 635509407 522730622 346382520 584222652 603174912 517894600 143921549 69546707 64780741 269010537 46029475 799525122 324131964 530657800 409960782 856912475 890831488 371314011 517058350 55240819 726996721 999563037 896567588 667033960 529163444 971211021 316286044 417470689 998766461 483679476 627288910 402693901 568402112 106351019 767352499 497142174 303296706 109367303 787896463 704030934 836202377 169407466 70736177 492636797 786533861 952966464 877525033 504265436 265541741 312452347 512989015 220093391 919002756 963499543 836121053 350014895 124901203 649538195 651248937 449478244 185183429 854543992 318876142 788958815 615860375 449802462 542782249 737096593 250266440 421191900 986522910 182727292 80145184 834870932 200774744 603206440 2898224 591635504 589476527 956974110 972761166 274416356 253971002 473480057 497726493 725648873 332985442 384411605 8593413 987834241 750021329 623189334 396427315 264295926 645413499 221292209 972969123 928493211 124437661 988726292 360402963 60604106 946694586 320227397 401719053 489885927 470837407 391197059 628605153 555435353 259260258 958932129 850192037 615275925 572793436 834505204 94205498 136444179 126463285 559443546 352648522 549231703 280073172 213554747 897547334 969109483 275870069 945692803 720422755 990434657 713685900 734363048 3631010 198425683 922711266 798565035 410708942 216777058 543871107 79215119 521595253 378198843 607005376 547055332 763216878 288586638 306927674 991325633 252171612 861376534 528047314 785809347 407616935 931470743 182760630 971364752 464059260 624868569 228487512 669426263 418562902 173252527 109554297 654336205 480713335 72142322 395874070 716713523 520067556 580864134 681012864 174623053 650002287 488894549 329259341 335803752 49812141 550370641 75789908 829492574 913701891 713509747 360275389 694004874 239812502 45873087 572465139 372440020 560444504 189900094 205658794 978720939 206997761 562276869 591165920 791944707 301299984 699864107 124187863 938238298 564188111 904029907 653398301 376448441 210668363 417477926 911715717 810741420 403528032 190642011 946537259 564404042 221544110 881791910 752754804 858727219 985328026 232747857 661958668 172333962 352605016 905147805 787214315 382549502 718327006 435764451 463299653 643113929 668072941 2576763 412334756 320219810 124066829 858862279 922092245 756791255 807024014 130284595 808056297 215930673 91218569 764044847 232418622 60538889 436808669 514854708 771255161 426431546 267082290 308043977 945965957 173155632 839047933 779927668 812615060 715261652 747494769 555169995 430231591 392783006 268527503 948368484 104136959 962377356 890391329 141124325 680677419 517102628 279280308 163578869 66784507 465778038 542560420 648421960 819920654 910569494 411681809 278937242 592784712 79412772 538326497 118947498 363638486 191350087 192065477 518762053 498923565 408436648 356546871 421391419 631813636 375463172 969112181 774984550 688611431 903296918 936250759 255816106 732686234 29774115 571659582 76438768 535055672 62554620 708488244 895513644 125899547 388832247 646935497 569896536 137695847 283423086 529817379 840931189 862056070 172209228 176355378 737774989 239974961 512689406 232447153 442411443 124881503 69378427 835080990 471816961 644371288 132446273 168827842 227921305 796286377 555252562 951564719 928979879 717831970 937713986 201484218 632427097 11648995 748586021 412702086 23816942 62766926 512075928 844608120 872889255 809985298 758749892 535389893 142810829 874091040 400676692 283240544 859930546 162467254 707654275 853872143 175415731 457076825 924539146 195056212 409557295 212119251 313755442 538159746 892246674 63053112 550519753 914335668 57827663 305865704 754254116 107595719 947166430 962154117 874402853 103609957 804574658 310096635 787051309 706509818 844358278 125638268 298384684 256191684 749189820 142512266 683761819 428290497 221212159 601085925 291741812 352083897 229885679 536308632 540148547 542627388 536291385 477003260 999610896 900102306 767205773 954938794 640032628 220706060 157018276 132402310 258804366 560584035 32448582 864007358 322438148 186205270 197906232 401186246 197243140 382149724 934440782 649083739 391664706 857639611 775251555 107675773 158369024 362048114 83602774 928611964 38029314 581616473 981798166 994558957 708551320 329523973 87718291 226228137 72398743 337893846 833323205 853850071 922330203 19632118 305889202 193980128 37326285 50277462 636499811 910491261 978360157 774653866 556727272 920494246 499595772 219881335 571367263 918482083 23973165 103103745 109201638 926536189 154151412 483333210 516886956 310506376 171631584 142916956 802357728 810152037 29153286 645517478 338042815 283057393 902215686 697222305 133045894 6494687 286569735 813537913 70904709 883883295 612072116 625068844 61657866 698598640 13487686 76938870 899639155 251876052 706886521 105417186 758662689 112774297 661233046 49330625 949695098 719149393 917816424 936166441 546283766 10527834 399178057 77433848 807099407 205766233 816044564 261422044 48650051 816071736 934535728 662534466 264783392 211768879 551538573 419695971 718986039 100953781 70156192 722619965 133572384 296828306 856680039 530415514 895402881 398802641 804684137 327904781 683448323 920124870 903720627 983524328 520716631 288625678 864490970 216739921 247907385 830799503 944560384 433601583 547426409 989017201 622371274 336338735 443080115 443872299 765360743 856510668 104801002 296271479 987793034 618559815 320540902 290075484 9242229 827335846 453457290 523611431 762411499 679270331 550523074 315623784 522745658 563793180 259282814 284803070 828728382 173413422 56007866 890709519 249087823 287989269 174159990 74952963 342906454 816651968 646996158 518229394 57986496 782988266 785914022 37928119 311320964 4007956 5439812 317550773 18784803 202993031 336245437 966400537 354670493 26981199 448213306 444417718 694669447 321774151 201203182 939555500 108167920 567394830 658232852 516130140 107543421 353818638 146458094 632415346 899840592 990446711 493005253 679088358 474117659 161043263 471549675 20617712 173536017 781000488 164916922 294796311 553113073 828212410 514169752 715557415 71829248 644708166 861256172 760560688 384264464 965352421 308782888 76734101 393793140 854570101 460493512 16738038 720834061 22450333 602710861 710128960 300651068 729937104 316946240 757561510 129483767 565550918 773934649 271381673 550457773 343180032 19861962 907324422 624160353 706499781 166515866 850853328 403393685 54833701 286716245 619073625 583320923 587781238 149193642 835245626 168612680 741006300 92042067 715553629 786490235 702858816 58809108 1330152 157652632 934272593 774257591 298634068 813544912 408721539 395253004 749395804 909907416 591748124 777718515 348783365 984729582 662328354 955907654 992734105 519858394 338886757 419635702 982343596 517728230 63155836 113061362 590032924 559589357 378154188 982358582 290598159 677880906 766236537 992980421 56568046 710004710 940007795 724635045 991559023 31148076 519962485 945474541 564043405 248712214 435560189 97285298 914517900 619863839 709365076 601361180 545866235 307383374 904470155 446251088 496186540 308923698 39085176 245851270 405750460 958485730 207350207 635538933 229255311 846712058 531887300 33146845 518481105 273859749 693576379 990159757 887244148 335869834 349164187 637904210 935678650 162512101 334635043 340509578 538777634 71285361 855875803 173827992 915218812 250602357 603775765 507154149 797344217 782959040 633777384 367039457 208141974 870780585 5275958 365962505 857504346 803058700 53936805 273288158 142678542 607271248 209962662 159502827 839810024 691359847 867136628 520088515 735161442 940203714 990394890 836331005 436479301 968817249 117113143 836180543 453136024 299480779 103384195 35697712 158393267 51495948 25558604 990988932 936104495 677219775 947493299 676346871 46453491 266578943 704073115 678058056 882773800 896937072 407412665 519897410 242496326 793520452 849348483 167239608 543149577 586432561 431795000 273180295 592213363 638358387 308671204 612085645 303630289 679821520 321579863 287433907 835293369 478766235 383167268 94182640 623575043 323951780 785571251 429356349 672726742 687391566 839878181 711571354 163437728 74905727 544130158 968022547 148645395 32947874 543154757 564566456 218872364 894061487 113503788 454228904 952777006 118685733 28747369 585144322 99057575 791136265 768911887 639356145 884365674 984169449 664380915 660410789 101478036 21701084 128766903 167529819 621470857 897733762 58843330 942090325 303194868 655576575 84001097 92605659 549341389 957817088 936472893 79984195 801529163 326844862 612168034 285847523 682971894 472955638 403295298 696116768 566414488 336838385 863766826 89211236 406174281 49284216 483932981 505243427 929868897 647580645 103520321 434632402 189502599 681040405 684706294 548182263 997471908 451308398 743425222 56067612 123492336 353814750 532577001 685095378 118226918 753246943 735756126 816391606 11336522 904034922 84237039 493720169 180599081 892502025 154550570 884353683 485134292 860797638 376431978 569933287 781081579 944708925 102440398 75382304 177806673 195530889 400518716 465138690 734481459 659816782 446531433 405990487 66240002 589532351 26714056 741117677 372954751 308027791 987501726 315038115 95192234 884007678 458021104 662493528 644178386 135471056 964873361 733622008 453594252 407007574 840247572 919732341 580092849 793242212 634832096 627330504 224154985 942190685 978117144 442790903 593707034 910282271 711546800 388803593 997822849 496328991 705209438 226777615 159448978 386383952 806914466 888455207 95333785 194191155 305184455 770582896 168860442 382992075 135138266 663376662 419253489 669841063 792349364 264978252 387226164 138856927 977153526 490694731 675684171 559259665 310092810 469439829 203519712 661397088 257436701 228556211 770897642 641421950 548986153 664943547 466258341 775781792 164503788 409895874 301397649 871760775 844991731 629787440 875695998 483173234 258898824 439371628 1687425 22968118 642319048 298061035 869902835 45636137 191361939 459169827 311379323 109900837 937417871 569349273 823198981 355039890 839503149 212532695 364339395 219799905 703198375 643093100 350958899 388888579 91112699 156955896 567528983 468799098 466412529 114759962 96751487 401318989 472649242 264011389 728097471 342479753 306997712 438680531 826845551 434406851 506010674 40392149 526188151 54432538 973848617 418595398 505406723 15279925 255814498 538871538 935822213 776542785 20942168 456410281 44635324 646690295 523926093 659327046 316894890 319495313 613979716 949068717 643643293 712873944 423709203 228348613 380859176 316398106 963923532 158762626 85845286 574043436 235179095 777641951 920949952 881785201 392192342 992816860 69754207 474354376 423275834 783007111 695418293 419309475 923640767 699668205 416100546 362053113 634847075 417895468 646851785 852533830 447351404 928438119 42933334 407903379 600859630 439607493 482763070 824714604 625787582 716553594 40902556 721276136 180657791 607697088 337653973 60645286 728790169 240303835 807008919 489304523 193026361 296059410 242601938 920596999 784199771 710256058 618109893 990286477 75407549 602751786 174677748 274384413 688005352 454638793 820613676 234294015 69018671 531308287 564109697 277251582 846557092 902764859 868794189 181728116 28108588 255725309 401166647 18599997 699396206 731873474 791311658 467509438 457523164 768917273 25883226 508112360 6425514 581290383 829978693 585007152 998745821 170304451 532604333 391172244 838609467 498405973 629048223 703191963 872180051 810991598 908272753 16563282 361321342 284148804 857106619 389028177 169591007 691666703 731346535 814883252 515570523 424337168 144191899 894858786 455569827 602276628 820517328 371071949 70417454 303030509 362950848 207483236 191812672 222639731 713105264 285942828 879973089 454791305 133442351 462329576 488803804 3551768 890209420 624784102 385362125 901441814 891050086 157767420 292529173 734233979 76831457 950814348 528909787 109418570 367873128 390898808 550675214 380345482 39282355 926916145 539683945 985097810 934624185 184109738 887353706 284303291 202064578 888360293 349712219 904236516 554875226 630188388 933143112 585742845 429449812 485310523 615863313 989282864 657974989 649020154 890701649 289149121 506952488 690605380 646856302 276636907 707816978 637448765 404414622 440952315 898652032 519528340 667230422 52118082 624575919 103561855 326381783 672823322 658815521 649846973 368813097 881003243 379912867 199452050 770443548 549712918 501563977 180027598 376100297 668131348 520150641 86705608 661288719 231541596 713339836 661804637 809997209 52743539 986472216 812798962 24148691 209433056 722661052 65001592 464165369 70938424 795962145 794985317 431228681 233759252 354820106 517321911 741385677 291345942 532738950 443471857 869694674 279242986 588138730 942536996 260423797 62200641 974465999 532076518 198744018 605021139 946652445 648546903 233142228 436394085 378009597 689033242 657986602 19136705 304897250 960740190 833345614 358460345 823959695 876807644 276751999 561481766 824469249 475785678 701941955 971059180 54641801 196202750 887908847 771548406 629323447 864351162 68454037 569260085 546296685 929693140 310501403 483874976 213629897 318526385 646401446 634712638 27824954 589884208 393275688 443186968 693847671 460978885 890154073 130318400 456669817 372177507 554278840 874926801 587298180 492820104 353799567 379035883 495178278 801289023 692373229 825054394 5614642 667808528 28836011 14719856 242293189 782495764 160963177 832603207 944461891 378110698 635679116 619425665 230743 645949368 39514186 7421290 18295798 104403755 544487065 45448529 753555297 560274810 72938809 209136788 284167189 510402404 465449136 278775186 773655264 370912047 497240657 300361398 718472665 592580519 573765429 594833268 708470106 415924516 316959544 587149126 82273545 29953668 622541833 433300141 678926033 691056177 346901520 601718323 777011172 852562706 372302732 408106346 605125059 750530978 800604540 618852334 881845041 59792606 491092644 373813857 848691511 755076942 53460123 517128557 162111021 258077695 422926002 563476674 787548333 615602564 451545359 844934175 268126875 696955648 54969239 586609216 601983524 390948633 20918525 430932981 657234111 574725881 988500404 758541 452338210 932981594 899694341 931636579 248493912 265398139 355847663 822302681 780656554 541025311 44802630 646706523 283912107 211306645 138982308 316944344 236852794 680573364 171313768 255850318 472238968 330133212 717721787 173425340 762903511 136639728 149985676 718797615 315771141 608412000 795839379 794695351 178077440 924275493 566267984 911415663 398304012 875751862 146673420 878463096 140910265 121050657 940028888 917988609 418594008 487664621 609532044 119004983 813211781 800661558 118207945 293635415 706540580 572770969 454011892 827007136 286819941 894700090 609907776 628730977 544280375 522646730 411157925 725682409 62774488 688415100 625637856 290001045 69103822 620202515 697504897 238457539 463218917 53774800 59302862 30244576 146127408 110594695 504070121 164608350 52344844 679443849 707343787 515198135 479037724 107455157 953989056 37049967 61166671 968942965 521658264 375679501 12090324 588998066 462493802 393410085 858765358 889818342 130105399 653119312 793150749 579430160 369669830 302794036 194727598 590230451 132898474 440312182 36411444 690656990 914721848 616478412 573682512 991175722 78191250 41988593 835095265 2219954 436359843 895077538 210926100 853725471 735389717 936930992 401359200 914848924 3252836 96580329 434379136 396940771 486379984 510211111 906782328 972402991 298372707 791556684 186540178 166805062 140429544 763380551 416812390 494917496 765005309 750160389 359310545 325224092 854372609 831373699 219738611 986165776 388671256 493032898 810635832 283069368 438848567 277547724 59515480 784539655 773621778 973434804 919708494 694632172 254272815 440783252 692622174 44524781 520799698 865217681 785397012 339263496 369112844 569663182 138815044 808910547 370111414 576648583 900008716 483325793 902924144 204434924 231501519 663938127 169364898 665657416 218932025 704022981 501567612 657139936 54851389 213869168 713265655 425818889 210880539 486287496 741420754 304912924 215387219 346884810 824587671 462357115 731307699 927116668 942348693 17502864 733651280 653201774 543167460 742174158 572723847 831960309 884099175 301112753 103901177 195386095 504039104 580114102 229860245 327907264 623239014 526573934 539753103 39065690 510176399 570359143 941983329 118253877 873395515 267857467 748516819 805512521 896130096 321058958 884352494 789750561 409791747 740422923 269329670 815738312 448090887 106531169 937238972 39799768 143184480 195813708 660243439 686897773 921458932 30024591 258563022 140272685 666743670 776618738 753841869 801787462 5803610 822195533 74927780 41276273 169254118 652945523 248116319 477857512 457369119 382908234 888218949 285344116 112012755 187658426 587604458 709117028 387052957 935438011 552950575 782907532 956917215 943727425 253365043 181708109 269131965 934714191 282595427 536054666 666706216 632528883 48554103 29125811 123842524 845715259 888211814 334320575 248897111 254509891 186638968 283394089 785002976 356119855 337194808 911430907 64030344 462118438 977236090 543640001 298732073 209503325 47466844 778661779 96576352 974831629 510443584 201864717 437641368 100553846 537094100 266265686 924528384 761985769 252146189 448218142 485360019 680017840 364937507 835519643 332276236 911493421 712280223 489853833 47348215 652230842 982324809 222971441 990360483 870912457 46083897 343363679 189938985 242603207 222595273 622621545 385936233 351091761 54593949 708409646 487244555 22704008 775780003 675135765 655967612 522506326 640934927 364779789 436111357 388037425 517212765 568354953 924496516 99667117 718881105 373302155 384242915 75758705 346745589 40873879 556236192 844653093 101792928 688000699 433799965 555793530 169368049 433473166 422251637 872142895 749234631 82649391 383369359 17358082 816384335 976416834 244064031 7006910 776745214 880729593 502885274 842470457 669614483 731010057 574458946 654979142 275569934 5982381 51989280 130907855 602230206 133844909 123371781 747417528 591845687 142047064 436716165 312805367 529797972 747135877 994393348 279149700 767372090 826901648 821601192 371174245 533178455 828286051 889731684 781730463 697183579 740026726 851974380 474314057 983660357 101463959 222199750 589056633 750005336 185752430 643962164 484931668 132070693 493187828 960981580 503476485 658092920 754437302 102240226 413877691 199713141 154795725 875248537 542482867 548531325 36283859 163249366 673589039 269845051 774456306 622438863 893533817 22445987 917197782 631928437 320003296 283892213 519137718 184716685 958047173 432950193 272130641 588377502 160359811 511289255 316264939 432697849 581099656 145651688 858573140 896050613 223826504 466995923 15016677 979534002 735966779 777661963 87409526 290460314 997262562 202909563 894394737 492532188 594877128 687324249 963617220 195803312 29384579 510045217 729292006 497283096 739610790 14340500 17203668 684337371 719962331 569077189 781739284 587528841 716926151 854937347 602104756 938039419 431781406 510447596 61648460 844659921 724345498 220326501 772413944 853320560 771237628 375559318 486679906 971781391 663535123 976598520 275460020 482190881 362082221 503967305 202436518 624776169 603232675 699265158 883153015 11789165 1597146 956815361 371687148 35240063 640334908 273050955 854526037 319458484 432454077 964043075 137025925 859958387 536199506 104759307 238047708 343115740 769465344 790827537 99159618 952896487 636180692 38010630 110369829 677659463 387391454 543128812 41992310 564994940 365986614 390573827 91308731 958976467 178769922 231601369 538385909 157373016 938520427 186787647 962014132 293535973 525412258 205800277 359685390 497149976 81537762 433397630 306484128 669045855 545547375 124837991 550958229 974103266 738231694 716699139 783996308 927396001 977632408 825043084 262855641 581964119 603179492 927486349 528372512 9768590 218858197 384218828 125842606 165508247 938756819 946016 609835604 954486152 84578384 104916644 237503336 679390276 937792458 916598590 467752391 414366066 569230018 509339672 855067862 865834627 729344707 57896808 390189700 198603951 891438684 30902186 497215563 135408117 774502440 487233698 598764580 543040540 452265421 663229532 946203544 69150136 816607472 733050412 699815607 246131489 180506697 366990769 524763411 503142260 253305484 876230091 658812106 230220188 862991232 965666217 927931785 686982984 700707055 953696700 62928246 140001264 895322534 503598788 634981453 257329111 12419206 493167813 248338506 318391041 939379567 192433674 940960564 354050624 646007880 231356967 473066328 961486892 586850312 652947705 885178509 74527784 785494950 415609250 165608241 462682970 679380263 918797715 603301163 881073072 250142867 763241341 820029673 675858150 595678973 887564378 938428000 179869564 191077756 628312693 548255248 236358584 353038393 824200787 138187262 132975788 536714075 190664140 735144123 573637935 214082065 765479677 360867928 942876897 584421273 275778888 834186617 756588844 964647989 379148378 960991806 610529343 273379886 639801641 743738203 76377619 503998680 36543727 394299653 331063657 25347981 620844593 857628663 826264772 332550317 309475258 64142458 161792381 816940195 658641825 272238941 610126501 456386275 866500159 373142260 727971359 660052196 634544442 190894622 413214099 467240236 127016062 232287043 676627315 674863173 922895170 24506191 409253362 925224382 767024895 576283832 794881046 865235251 789450873 336871550 321866918 737061190 17665213 288315686 98688304 789980325 302039071 13066689 179204879 133973754 403262268 202643680 251982432 167159817 111606265 434463654 912765198 383422605 45000320 6952119 961327560 291576658 982997063 541370690 443118857 684313642 824140555 79343101 115945995 668388594 628740044 523419173 262793181 141167755 829137371 948622467 684177994 724926431 123895755 526399074 432825068 31005917 65490550 389920413 306532390 459788165 870095364 545046669 883971103 173200085 442269919 850314012 666914244 162778072 694998712 805431733 926148560 685870240 82552723 360212817 28941253 285920074 463054511 721558382 369237734 315468023 124466071 582998289 698711368 815134929 518867746 903670728 39553217 218736392 133615213 654871211 506234354 750367704 20607963 338678103 765502275 687422597 177872920 208664305 439029220 672853590 552278808 82849066 541959375 628656544 396636950 201859382 445321664 381573308 734519707 249426134 191597637 263907597 5653102 635280206 70376619 9276411 601461417 134766701 821402888 811580923 935460256 69248905 145244736 640525703 641400831 52654206 304007421 493186078 461346991 705764534 275810984 464326990 331194339 463962654 117683841 586313126 549195288 617242669 9761410 677491652 184413973 798712542 909852792 973690187 298314468 39766972 65718000 538648542 319485656 53007057 606688836 380637239 551203473 333717942 929060757 201429258 134224110 872435849 987461577 969924639 601228065 981971693 91120272 587626812 844175258 629563668 627186022 742072118 500542742 978136755 928086664 526586086 631736221 112813065 537873407 833450542 709635444 613508826 275696284 428538619 954355767 228566390 453782261 840535099 914226108 712361908 433057900 705553129 44446508 658621426 504038954 836656393 742395888 646955541 953291295 425258661 273715903 899814026 623305730 308126926 520102034 903829322 295651922 206505121 936429999 685181651 195242843 652525119 192421027 270853419 646838314 865868238 932933953 654023389 216528795 783390343 23779751 367867908 844563274 635607456 884193076 230715708 574363297 738594141 474764701 190239403 669445585 50680326 227968463 227700993 948500688 171741937 353262344 28078706 923147362 479952244 774938575 47618492 862335757 868242421 313046252 639019305 488285727 579775708 989183094 690232708 208195253 334641564 486914763 307197220 829333162 77655470 936520075 124228839 508022188 890995606 702296228 263529778 772071463 73795551 910815562 651996920 367160916 645028888 33286908 506986667 385689911 522892255 845675643 199263049 760594832 357860309 175315154 910778200 320950008 690741408 485488730 58273258 994071235 235719673 470824877 37344148 595088145 828570007 716689069 416178035 579324874 558207547 769322377 851579436 535378850 769983664 640868788 868597999 168684303 989314251 669119725 807043698 67663695 772304482 264641074 3335668 487548267 683245660 656743638 447978043 785145141 249951134 82906987 806408339 888484421 3270687 693117643 849656788 598322427 929856470 954085660 752434015 193064831 658352070 571804875 225792020 931752643 153664251 290901386 731685735 45050235 596069252 806289241 663118410 762581803 142712191 108654457 139787841 929781528 983264781 44982647 508582986 271596887 127585365 475564582 603645434 67089340 929597581 326844582 376179814 996816106 754908399 318066520 971377962 539562824 590058682 902691049 102147438 36197382 188667198 624852301 648209118 978318365 891216584 254766274 766199477 268697419 798620596 823908554 678013101 984876829 190111589 363591986 326539277 517538780 84877637 588463887 515664037 112084392 981560773 319496637 443708872 686056797 913731936 766528991 922139991 619724196 558752665 132019811 196791481 834822127 943137784 389570941 48920024 217618290 504897298 881021351 530352686 378730033 256567169 747227304 709810106 923614195 19339494 646599819 38885375 686063433 530736365 751187109 97417996 384822920 242098756 858730128 461427323 943671508 599636393 352211253 8690276 501179670 252756702 384458682 55236211 118916347 846333869 331246745 130543314 752683005 57398502 994803848 32634680 43435611 290114406 904483730 805489127 276717086 557978384 985878529 879209633 505725974 982780363 608265574 360982967 882566877 779002508 499442593 563283708 94946771 492720714 642677204 667652819 784421404 29761292 488769903 143657245 982785452 736851672 395607840 587134540 336027708 839289027 241502697 48522837 82934857 711325669 963011595 403701173 433274911 394384483 415839763 821224565 848564426 135497317 222355924 847070496 470392615 525740317 400239 725381072 485098194 809203143 814939715 371551008 676062007 623052451 553362429 611816761 457504387 397820924 456027540 4562118 705198767 294848297 358939714 321441280 680782973 554155900 640158861 758950309 506400370 264484189 359712576 672808440 516877283 591526708 782764655 580825035 527949284 240610421 163878007 280143221 499391065 842156696 796160253 418158030 457095909 357220899 638247403 115000644 420943869 35397019 304615029 170636481 431108566 704327317 998315035 89596604 764798324 439836843 944022428 661035059 165748124 944515201 645905930 851247021 396115425 838552766 369974199 488013366 589304726 758467350 679199549 124082280 661052131 811656004 329033347 194064734 245509032 465412616 120594867 712508865 409267868 255034928 617430595 908896444 604576821 246149002 894078447 564611848 659913136 185396210 874575291 830902755 430869530 585733708 172432627 115411473 538133312 122179968 294153258 808201443 623940284 648263041 332391486 98522925 962039537 577582152 671407444 961017422 75563008 155294936 173882328 604352301 35554014 177230399 477384060 658098488 474670149 640005256 143141950 848226661 610594736 582120917 901509987 403869490 141867629 646319424 833780855 241584039 864851590 480065530 179370059 628435535 383135705 475936306 520998399 980111426 135685890 787130404 521851381 292442398 178036845 854891795 497089754 617552394 537068870 477058629 319249058 668754101 551334026 630285839 413915021 12029010 213775862 144781517 396005656 152517794 626222355 297498077 556239638 606780140 322923568 667247277 32742551 921617658 411603816 620734895 853601529 951918121 70046618 899151706 869018336 969124943 71561583 999264563 671218488 930787545 997718100 307995844 832500791 340372402 666735492 705377950 946231894 583001681 289851135 887082847 982041947 519799988 38665359 515114658 33738067 612402275 235459262 51345432 17115025 146464105 115477485 380211312 854778800 972111198 775918903 899619431 637927064 315430497 632866691 436015549 199135603 955695127 298474629 421911101 157614775 498450606 439758771 284621494 21596444 303566814 916705101 442677255 43481256 725331429 185898844 625573904 134072236 279612553 637799090 883803837 352389559 426586135 171959268 764569341 314226340 285997669 728774743 748974028 390470045 894913491 296568620 223131950 703311883 887673926 369954906 311920940 214920354 623262764 632934294 645829335 471703647 116688767 749938016 331133770 147685253 823482041 767941632 846642854 604618401 421702111 429167754 208029464 86077320 221863813 148966355 102103506 671144022 224963516 515318138 315735564 728560750 185188645 77215466 963074056 22905727 907760613 200086613 174487572 825584250 843314346 758526893 23638910 367717533 177203119 257851318 117227941 991901292 631925674 763543803 905693926 287527603 679655143 517415623 911600559 415858566 26046002 192290869 974250863 33744707 508519396 948234532 153460643 15730061 207262424 97800510 441838285 875793487 105220980 130986738 301783413 9450686 936947371 627384441 45626673 701749336 816718575 361360594 49587097 917257185 202809661 400398023 37887309 845639779 355868191 981835750 100823803 900325427 767876770 468388234 860194389 465111020 682264413 420174290 796218643 203276663 557130090 241792678 762087929 961678588 495657333 583093428 171206094 721834992 686771370 112919675 90981995 603692560 712839614 408658739 796977058 576749664 596423152 59960808 746006621 469084205 27598344 418862701 295422336 60827147 539708755 200112724 442816258 409757395 80394404 320113668 993815770 607328430 875438943 582234017 252463629 54388228 638975591 123085852 370438048 176702606 307284267 439636526 278279596 863920196 575670430 204993366 518101064 915656815 484034116 540237534 417814676 110675093 881126177 982259926 403303360 902862222 79082690 548810005 342792184 572434038 874688574 15549498 507714938 568061360 371378483 404671666 501298057 749144042 843387080 288319401 6648684 631664409 793278123 129993753 410188150 478844791 159143952 247652288 679226885 681632904 624196793 8805418 765314678 50919448 687067627 689654692 954410039 915938622 56262002 610888777 883699129 323600724 375667878 700901111 665946997 206560000 168826729 864326231 724193519 989912366 632745241 25647064 730970030 879861776 556567979 990432439 885927498 785525797 123495059 305624302 811561818 886601519 891604431 664500809 856071295 744435515 473187044 774262102 816054119 948679068 185798117 689777777 427207359 856628720 111707746 709317303 761015623 241042717 542804605 209093905 450048698 767585869 466054109 383299886 766872299 506517491 380282540 797917320 593524902 685767886 417491109 976046433 452396743 613324001 184550404 751932348 156582193 867328631 58630286 80910958 574736335 385537830 304069781 202119181 919155086 776156362 431807981 689803258 251982705 918453382 945935091 269783390 757856112 411112393 998709647 611945510 6942111 959592258 132146223 246800400 731894026 170592756 324674249 320216982 567730895 429978142 106093018 903481093 566611724 759569488 518517098 825707882 914603503 922489949 921039879 31066015 402484393 302605407 522328008 409546050 463984754 896964029 342539080 158573504 402033040 111832609 923750579 6311748 978880586 467685505 425308849 177095115 824833527 385556502 731112826 303438355 896568812 46096235 748886993 363808928 14220430 713729350 517216759 284636874 337919047 415023039 839527610 420425124 873965192 993091376 791610995 892764944 650500301 128477500 847004672 762262711 19092886 775304661 595850694 344895241 483127152 39276585 920324276 348383291 310784493 73881014 243059007 641025361 104184997 296877378 807501928 130901267 776647226 909651417 543982258 2452751 921684824 42803662 643700524 458734751 647388082 634403260 265771120 930463203 670890753 702853516 147373974 821553346 403606534 925581157 639360843 443261934 750777230 981723326 789273270 978738656 978944874 483877714 485713556 824182741 363529589 699709481 743193119 860000985 677323918 229855880 485109279 709351609 991684514 767804682 340322272 765186830 172011685 412255880 13368893 409423416 295801741 377585446 873464975 309822050 845653854 969224531 643716543 992658043 207735589 400946881 844785466 581898552 707882737 458365802 669225465 481520158 271384284 725917337 295122294 127280755 907201034 256588757 579397820 823325254 107176356 539022835 337763156 21018993 963714527 218234895 681903707 414906517 813288688 184030351 350957926 267144726 985556511 396944924 810643877 263053611 574507187 708379823 846268606 350419143 581963518 45622401 489441775 751730347 777455964 651632919 887375088 160820320 969590575 306260029 191268616 524725304 233605600 660227846 125524490 386076745 831382496 456298195 130709830 857007986 312242607 417127490 588690592 337847905 761465033 487807042 720982395 542851199 200084154 851290891 717534149 567718665 300350999 388730643 82884340 864137212 121620855 977511968 358327561 945497892 343598204 225535041 156089222 527977743 278955218 365581512 403879551 392069141 493511468 260229971 220508038 653810007 540687428 440811202 164412089 182417852 54096347 753114695 970727872 702111481 653142458 762493520 643918538 560078974 212981431 152760737 805757322 164573330 945012648 526638134 577658947 546027322 39101554 489037410 402660022 8178506 706649854 466672054 83972404 697781079 331264576 620716559 254381972 618059967 679724339 537024142 440149042 667364015 255268820 628567205 967094008 790155540 264149555 67013380 499904081 216255402 639186271 588849323 232338483 203634925 482451058 549690330 366750492 278126889 428001168 461858081 269301524 640393576 382555875 238782544 598566058 910913675 573921181 341590918 335288821 849430573 600731384 152208937 468160399 855899572 950916406 708148705 687184799 731345239 935594147 322688934 864899799 772546824 634306190 667919538 341926761 852937613 17317972 399843722 574852630 112896873 410221655 417692410 754551588 8622575 895311616 697023767 568278371 165552693 234815938 768893500 810935587 634136093 429312534 56970766 817326409 558781264 150973570 877363322 361351734 781092925 757283724 69739698 232716508 421009181 288112840 565988916 616649648 483749617 694046672 866008007 420712371 440048253 906312519 853801585 896517477 275084631 774228950 341897355 336501208 283546323 934924080 574160046 720780708 372900114 601539854 512115905 749350884 534985217 772319285 406419183 164701502 551254089 383646061 976737964 466651876 364772967 981054088 119351220 289900939 813000088 670499173 602469135 87259757 700351206 472678623 318117381 490878038 455739938 351356387 898833705 563333776 201343206 859001447 836308317 657000948 482697100 449878111 987235518 424202206 109711427 308853457 983160256 616917305 479074808 671002312 662993427 288250733 926700387 764903508 647647155 254003058 402486789 241992081 817966051 33109193 357971749 542896542 952274482 370819703 863279317 198413738 840471415 440814601 521234669 839492069 435061447 565206167 346695692 919889543 546664587 466180028 939118748 283427542 178926447 935116448 728180172 263976475 915052900 292198645 53044885 94461095 549751466 388210669 313852085 963547861 417896645 888857415 724839865 884164103 440457599 975295560 181688298 197963177 846909935 486924992 428711272 634129963 209037166 215541766 862287120 992239625 639480995 310061561 137810825 317710530 316679288 376432122 140777029 382511589 147221283 787908094 963841146 141925378 686652192 685406071 627991594 606101939 382745139 287991395 262598430 38686872 822681192 899208778 528410086 710983777 108955925 371843899 154214104 877291963 333220819 351091400 103592727 983311203 86562182 566210838 649456010 475665688 289687902 717400518 458329569 669488808 358626254 581203206 46429076 918458597 698939795 311629968 821632229 63620776 888312495 612555936 145761754 879543763 242679149 481872636 979026244 738420816 436437349 801442293 869403071 147604243 686162546 359936860 908656292 176318228 706665400 618896788 588519200 72206935 741191330 907191936 911898402 955768037 544650215 486293648 664624740 866956755 276981889 871707581 224363364 653097014 447922357 34056830 525387883 902330421 81758991 405395681 640582793 938129913 674154340 50964334 708716694 291971251 115633103 673957951 460611124 50504606 426113973 338203123 650045643 338137341 580585667 508721325 335249545 898699034 693158891 240014108 943790438 294264135 295020 490754935 766116390 582363357 339050185 229002364 652045646 921730112 197210060 885126773 275686961 167252953 439291790 712954409 447494629 881272093 97507432 881971186 228585547 803804032 395396095 510527665 850295049 386699149 783147070 570025161 212573330 579343302 995863133 60225319 448338206 533676994 528153555 837558338 565863343 946701596 97467753 421931804 785773832 761172082 634929192 177662009 234240702 358456947 534357604 518374052 971879462 623880396 851677374 775703799 255408996 561837884 276594964 50935889 546660956 259338884 517241753 35245908 983513026 87645549 155196859 642281266 638074893 508825544 436836151 55450273 796588155 739276660 683549973 707729116 645647895 421845327 477964447 571219629 270344366 151800900 199214697 884458848 637252063 23205446 349510481 874235853 248260611 879486801 822505337 241740625 319010117 553607269 314063181 98376912 291841173 840370315 805674116 498397119 626158764 362595286 452761881 199654156 285148427 236722789 537115215 557169212 924736760 591249747 639593907 752941651 631923845 381997518 521893912 705709276 237689736 770123786 799776926 842650353 569901732 30341693 692508071 555878448 79980096 866939309 423800287 72513982 346840461 648641441 868968762 890851658 503777154 665170542 67340277 183223307 286868448 679965293 371943317 588460988 410057263 71644929 682630626 708890534 838470335 330340755 728902646 272649112 916059560 129385620 788663082 391276775 786704332 119298179 752401443 446260081 874978259 685763806 637686734 542642844 585058090 862922033 447714397 833592407 529256717 740456973 900887631 378304536 66087289 450698767 970293607 70668253 500543547 138858196 471796142 463139628 921297886 232168461 119694974 144156694 692397757 4208744 882302834 967951916 589355513 231302304 58094444 857610130 833698423 798270071 340783001 255978986 481803242 382427065 749430381 396339556 71914442 604764980 739592868 430409654 280887382 740158409 81976900 89367839 33540505 351560018 501619609 528540517 658663008 876477888 184023605 362696914 532783943 122614789 948785655 48015173 592170408 513818902 149412865 45943573 78573744 915044601 416253376 996357160 679319121 189967801 660634601 583561458 541732926 442975333 546607990 28385126 721536251 165789723 934450353 227814400 755458767 700076795 261375519 481007306 819034824 305307950 87180695 558974035 719826882 489225704 731449143 712090283 554520924 364741221 791545955 102455927 977904894 470814948 498218181 521885657 773292251 999500721 170325841 839536001 704112868 226648095 699084102 232415653 118218209 142658949 240343335 931781380 416740951 744391240 371950529 874576354 725826965 365152978 739148071 575991056 720581300 304014485 877426100 391335139 298527639 826395914 666867473 760949305 554756578 564773559 974559524 940666745 457862153 793097251 623522086 339516817 57890368 312817887 131816595 379561205 388070285 567287432 143843883 171412134 871615154 572810176 219254014 195629867 668486469 933014833 396442464 755697040 457617562 724750986 34594287 622080106 140483796 503205258 160684170 592110300 327007707 23531251 132206944 138082184 41883227 977974157 507493864 91641759 10271443 598697768 782501850 234904022 901181052 260477348 63418429 526775659 305615972 822473185 232677467 835195170 349733978 558194886 94016712 601323087 695457783 824029256 628839012 581082564 879075222 115360354 770408272 730482912 769587557 619838999 566995962 722247307 596059731 133458543 702289943 718617647 206647574 592917371 374406046 216772807 431152945 330571609 558632409 989535694 484193770 385848616 769789523 395994189 524723540 110461973 696334300 514146255 392985924 161568334 930876822 612981612 538340957 445722132 850367461 490862276 852914439 677274275 991190897 993029371 117269102 957135689 287171632 853089728 343666576 28493911 214447711 845250632 298471467 176088100 405191555 987903571 69726662 710527512 211913575 63644966 178922674 980765595 828826911 646857872 49832712 692150558 282747398 591708646 173898665 504517405 443980484 313413385 115267386 977426201 672582211 745909085 447626030 222696604 513627830 524324048 869062334 894906424 622153372 790542554 51707368 630833802 929067448 18713977 550442613 499694386 459845655 541922352 778295028 248810459 9422090 107632400 277818816 248431415 595790898 459992497 995844600 96300542 905937520 769929262 222313093 394707959 810855667 120143919 836820757 576342759 419889707 606916579 5608225 422855589 731640023 111488253 921535210 83143433 983010043 121607101 476978296 437049589 510912741 657168363 416167068 894932818 329603620 618563539 408549358 308172567 136948379 150578508 384974285 432991545 455977832 179337396 96717155 516106173 399692797 993802226 130543263 403368107 833184522 606377845 1717561 652045593 898595213 19506481 601351601 674333215 840481738 832566178 632660560 9022431 12817484 752707286 743723560 75241602 776971499 444347732 443909135 225767230 466930622 155859767 197676967 123840843 770944047 814028059 821459029 452849899 590202340 963594022 156852298 596212329 836281815 77715974 962590083 469283605 81030977 102931955 560588476 766514765 321912999 277273002 258902140 81725041 800645333 570766704 335907352 567590892 134448094 482761240 634418341 822616623 675747873 529549298 991264258 126230198 175808833 767532512 126169050 549650947 233333545 106555977 81531038 819057820 908677905 191988248 183040130 736957467 308641392 368470471 136867978 759334932 769089551 153884241 494843262 931386157 753208055 658943039 633077996 983456268 734879101 655861402 459853870 325194344 820435006 94447614 345702245 175828984 120012062 996045192 652307063 600413056 715750475 252455903 13489173 28849098 312688949 203085868 169675448 567356585 862599068 403158317 749899679 442072564 381403267 908614680 955573204 339824273 677738804 393715131 516906791 714350950 808581704 606348638 895181102 87090283 53014681 456165340 704213579 767521172 406764107 240328848 9233063 564384744 730316232 74202722 602365232 646148208 966162631 796139712 740516513 454162239 605094724 639988384 68950649 346085997 759085701 594996609 588749823 807763228 325016593 903654503 102292293 104538233 558520001 220435170 865392672 18480820 295331246 830064136 811614006 25753099 477463360 574943609 418437867 561948090 980299810 580171353 503223408 368727825 917174855 293095509 869431487 807090781 607475691 47426726 202641813 569352701 961061009 213381896 743339645 909740369 207783945 354148549 301204934 426686404 999258983 805687718 157727113 535356360 69652995 623825670 415096484 646296534 183619716 831483074 380636613 971598194 233396185 35906623 175113301 182758439 486988848 971880811 14713745 71333509 722919434 765940156 444302198 117753639 786969899 927814451 88614865 275100591 484203935 11316050 327166765 136808905 190033590 542480941 897595877 821172771 230745619 337582420 483534616 925377404 750697620 237294315 779153841 235586965 784573802 85546644 393081183 303818295 5074184 472050302 43969942 882260532 851821097 306106979 159266461 810066024 395718355 84957820 989292151 595216564 114927951 906669714 537494009 76215554 634398517 460882674 343310263 654336582 688907870 192913780 118262033 371826555 349082099 637756533 78824754 657767070 309137242 832307674 828583947 591233471 631491404 682799125 393991506 487359469 475303109 146867992 123176326 640335939 626665477 603924326 76841716 924169954 237071260 530130176 438220454 278110713 192722783 923120761 617192827 911215797 600312169 934448098 92062990 655755345 797599515 87686623 67516617 686465808 46289447 612219539 292140253 255878975 924092284 238986412 533124928 529150508 942578266 202997344 148955831 499989300 440428356 172059248 705079236 136088250 573452550 694758688 16858557 891146533 373385654 601706302 734400436 953433576 990624173 720068386 619246478 131215488 206786193 299914155 623876340 555322733 991731790 174026555 702721618 217279288 727181851 591143106 422754789 215840631 880942447 623423672 634220714 714048449 246982416 707072539 330442600 153523385 374528526 191494513 426748340 844428555 985836216 310475718 652835554 98919 957393838 490473395 635201813 735785607 490489556 789232212 272957492 584589872 263220821 790685779 410856686 210311723 221086627 977838298 69164990 937307208 964618367 768182432 688697314 940099685 127433192 480520422 586757219 227932001 106918704 581585009 709682960 750868008 308272360 132457103 650544518 475936429 659438573 650275349 697252895 861806311 328823906 401425505 191076614 382665181 880090293 203046492 575962414 461994132 831017624 849400179 255269195 233907491 416013834 216732314 61571295 904580000 344998479 771856723 636273969 916769585 937072881 701579939 920449106 12378879 162816197 501309462 147557916 583587131 342377705 168200900 234087726 985719328 992195519 785058893 380613617 307060977 140858355 428849621 893488530 8183543 776194941 818306827 112673037 691747460 504318100 336080164 487939615 484626421 581843137 72367585 665663061 43396267 209800653 297867908 450550265 803683341 704141005 950137054 302321960 400453776 597375775 237100614 854552770 850839217 121376615 191640219 456722285 215820782 902305932 685318974 498918555 220620754 267921098 661678626 781989251 392972017 564392088 458690750 28349989 381985250 503400894 266779916 815823435 635894346 491747397 201171094 859286148 198597077 103894915 821139816 263805225 62024496 176681746 634472216 839329113 615211803 683197915 498179527 492518398 598875474 236369157 970977048 655750342 134792102 129233671 615457084 176819501 81281252 986770586 309019113 592996718 635127785 385073608 28228443 467881366 943326356 748312282 146976089 662655602 159859924 968426341 745067570 858308255 529105816 181844291 232726973 608507766 156128221 189926811 104993365 665084965 378549153 181660632 787278820 150902937 95353075 944776878 553753814 783887500 830366433 128985882 723153187 643123839 503154823 475595616 841083209 552939191 889171975 937894925 996105036 570601542 590105996 173838067 473500092 650537990 391206984 359844401 569708207 395260310 745540471 105076521 851584707 978030687 231947608 586256264 460105247 510254222 753490486 466208322 493024624 535474718 810524004 550829204 695406830 694132689 68290621 63924483 846033238 288190506 495526178 900490331 601573615 716105343 260204158 234623661 73878150 700945380 851918786 330474585 148962419 360588348 546495083 673807107 611948434 191918380 702113526 391911572 130757195 626369320 373695986 976316482 12777868 630641767 398170354 739779981 316108235 457176553 780249996 411451700 559527943 676813940 435064935 60389445 948709059 144603548 316720679 717493012 543637778 256785591 733255300 613998655 519739270 947306983 599198004 237469097 940203843 475408145 288093438 608515965 688471784 321726184 742524584 982750512 200827303 727351268 400722952 274851968 10999862 731245380 158148341 112354417 122900949 694204947 467293777 865544781 735459656 81358876 716728584 699499689 126983645 50301183 63017742 836555361 768295020 397947157 674174041 344177051 618585681 373075080 977321455 254521026 731290228 228615754 351851223 671628683 780539459 153553685 296895271 539972081 216929973 386866788 614153972 792597304 130265412 629088644 900135270 828921073 328743677 451003010 110071717 363860969 286636395 568553784 176777697 719541569 286355873 105726535 851278935 23301979 650764611 889480724 477278791 402810085 67420530 381606354 29231358 562104272 478202336 880277114 620358860 591352926 190986179 808074186 225926156 200036879 396157142 386356043 715528226 278510256 426099299 875547469 465206391 36856661 211638326 432060392 405544315 314254682 173817767 983596031 282480554 327198567 129525395 776677942 914808969 851766370 688155744 366803969 671928220 589072516 870987516 652259988 401883004 909148232 767527393 412702706 51673278 547584881 766592262 139713511 410954505 830723085 332607993 693482748 904151043 642943854 818339523 44564365 377817695 791205682 86775548 323804858 579838680 534282303 361754820 126876523 720089394 721913276 367765438 175526225 677203253 778824741 932062746 230400994 734103986 194297390 647910799 968715106 241240969 507796448 552847448 807475669 376322711 496242566 352297023 527522830 324427974 453332661 280179089 481153190 128484618 285784390 850218021 418231546 539122271 241527396 416432727 151353909 144839365 474670452 316726797 272222278 175899716 651442481 291632057 432013543 58783733 721278609 925202253 452260500 800399595 908859355 746557771 302061979 424845644 26886042 105114039 485698823 887212355 520900006 426686239 260659123 690082302 384186392 336183195 729485630 797149372 717286997 596420552 641453331 97202622 170343945 211882444 118534497 860748108 995867689 760072791 284672029 25040060 873743855 805056925 333874187 12581732 220588003 90745948 394766770 737883050 540865228 657119967 25577059 576896502 646911172 763780078 769484597 110428604 724706341 174982115 738422280 705147508 972702867 399530395 870124167 818736290 517008376 128956796 391848734 813784271 712488333 237037173 855583752 69179023 588537547 261209852 647418951 694575481 417344118 325046289 958343326 758570035 898887068 498813494 867916962 290336612 426956433 22513788 37015466 765487808 668671983 115722107 855808983 998144005 997921181 560047183 681131279 150447084 747670470 473297821 469304833 141847880 779240926 628704404 957093162 376241127 501467042 445707244 245271494 837295013 776454678 739101925 479969 97495906 418904711 116402751 720183881 638663691 299013000 330004812 959376278 818079630 323853303 596825316 400620328 836145133 770237429 328597603 808460587 189579296 691126768 352584877 155828361 885340987 552463260 574887733 152910335 254976330 488962806 622794990 819062026 10329705 488960837 243944793 705426679 902675386 103362574 726995833 690650579 941901416 396574765 478893789 232737141 296648870 125905592 845342364 361961599 434362541 999793686 913461846 750745947 943740862 166759156 17051950 677622580 743217445 933954374 45712085 815553801 368750389 606515528 282676352 922539157 383541318 999768703 798863341 769970019 76764091 784213683 981539938 861279681 332388608 240875773 615906735 349885384 257500804 609606841 819259687 57676379 553621701 960866951 62054059 807138847 931339075 425406808 662461857 891680901 560512905 172270943 730071030 703199943 997815334 940098327 63350051 943220451 802000827 658449476 421292321 971729568 838062053 928048885 781352317 741876370 802736718 729587322 533289534 581734160 123893165 653425267 244435713 653136187 681359031 926029762 882173409 590758904 363263793 576062359 610894467 548638970 217253093 749614690 801010456 456430008 143686307 601843425 792065365 266849909 8543049 78703894 43946870 406604084 377920694 854304080 199205191 973750987 385454806 600970533 566478096 763898830 85380252 988659821 849481900 173561247 892931841 626537037 319817846 568370534 241992198 867075635 741932119 661068053 890925497 351834832 264134329 93739105 549165350 755308327 581891478 467194315 346914671 367933812 264389997 179697565 829686448 517526602 265730624 532587238 861369622 843801979 367013538 308331647 789730773 552461600 331283623 582618632 791256099 757901986 296222445 51063529 837620293 349071274 265507736 539143506 788381316 846581039 444590429 530258747 763554357 128784490 330552426 679608679 553175215 738878433 232292740 948276825 527205460 346530400 861266668 992800615 371291536 749335548 97573236 831117221 559390167 990949138 269306738 731478260 388317342 368867653 732193219 63542015 912609900 689734782 262431437 275542581 238713802 783338998 85078910 213083850 791777352 319848745 86356558 693191109 352165765 519265496 308623419 265009642 515500062 47750675 103359944 681317578 162711234 932250924 276301320 843532735 686270750 350879935 103168910 509713639 663981810 498650290 834001274 926864939 919422204 336286511 426225264 442462778 483287047 70859180 400797090 47935377 820943335 531955685 747988930 754614632 157644404 556255 34248210 801235153 175037074 943068130 996365142 170004884 231591722 762554761 923637980 497335119 907649072 399883947 205727101 644614748 589099935 714766700 171056275 166898922 997193845 378469437 624738055 280046055 558619070 747439822 300077638 977247752 429277069 766284575 100828488 546690258 477722620 31506031 888536458 309375370 897210415 933719119 310353427 220340803 279060303 577561489 533179505 628647121 578326410 790578001 609364409 693307864 944639779 440515572 729479051 555325887 116030805 543204390 262040844 666657207 388909421 659593692 496572906 825491127 831201213 878018899 427249502 576108159 995827359 863896589 405929763 277359256 935793013 37302742 550399104 98100565 73915305 171034053 511081285 574659784 970556846 762513204 961585863 787841495 623188478 272884424 480293602 910529320 495800349 455592812 109401856 241030698 417637779 640271193 203223313 36927000 217934578 259599109 709870213 139950320 46665430 357119542 478054748 709039741 351779553 843096827 755034910 363146571 89630909 367915686 886595546 754113461 433270043 992978133 479376165 579991770 478211765 229577832 393835805 859316644 369598286 5360784 637055848 545505733 857985202 807587774 642456629 430552239 971560883 447772850 135174970 34006183 635695400 844109676 98503349 379715509 748233975 678163517 426374765 837313190 435710217 602961588 758386864 343294998 381349966 99763377 806266707 118015842 456849346 267881813 867240118 183438263 852657513 706390542 976846526 121946880 756473674 156125075 589525979 650418938 36640378 623965917 35553281 198710816 815675923 725792816 2708399 937122496 401026613 143118363 948629740 985369573 883667212 893485678 210277958 191268971 29729227 93949768 705483730 958388721 387684264 560930831 487563825 284836316 426530028 553683050 670973831 188561507 314802652 552272212 503657088 208014200 882994124 63438852 243178840 208427488 307235350 67659008 877903563 836381216 927404317 547596052 796628764 830452107 31588680 831070292 584608541 553114421 687291919 689866014 306879778 193187072 894505192 577267988 941641738 912103064 667290198 353650725 148368447 626479209 249962213 306213249 862278312 381809324 127712804 236755622 71212480 137306212 284247473 531973212 478454405 301170261 593584173 365566378 795553661 115994130 208373822 381356264 317527989 832199410 231532956 10048688 871497155 693493527 794211328 95902438 868701382 135211113 700477994 149926328 590930790 294705557 238699238 468880027 490463441 723931926 349085190 24844103 47620536 436656172 945312100 276847300 197682016 218622431 525056482 673812575 281258124 610135552 197217389 467812521 702872717 39270438 967407346 583663231 197280306 216346291 460691312 846565381 38690531 921341389 967578855 215005610 278238079 587322468 607242848 552795424 526034809 845236018 687518704 764999781 499250115 734526905 508238768 868249786 213320157 319531324 224173764 783216556 426280143 938927568 631255122 161390613 98360356 131574093 186342545 833318153 464979701 775560273 261004728 365099249 65961695 978833221 291989771 583622776 319103240 757830488 54168531 57984402 599263008 593249156 569089637 393643645 751177819 38442376 190354711 336971450 707400312 564653296 699113292 228895259 601118399 791326215 567303795 131739565 378817789 230587112 336624376 992145617 630926470 631185013 239835480 724091944 317352253 865707345 666587416 526761123 881802882 558576881 172304830 374811762 766069320 369937547 226897886 751760914 774049797 978536991 126786067 742947144 96412598 464732022 283964927 823601698 103397602 740346658 159904585 550311923 411735447 994627448 276010665 48882773 806518633 321675674 198947538 957112364 526452856 51761779 58484623 585472169 306462828 502720428 30892195 169187901 881419634 495547589 896172770 219952036 732005696 880396792 288388393 461179621 395795989 865702739 175633752 704213574 346188212 589649313 956665177 570817378 512620654 793169790 835881502 539310100 579580443 609049160 397588644 939087743 971934998 297342249 946201325 621883149 527205705 513935375 385953022 383935349 879327517 478169269 692353519 780737459 811125899 244416921 277398231 595430922 651943954 870701826 743559130 397184776 27363254 104315909 713008419 750848130 766558216 971890038 288098784 428067985 781938462 854843128 882343247 122075803 669703573 256283634 435070387 105187916 872112530 40407701 744818514 106362520 157411270 458030807 879384962 126938814 576323175 503206266 280627615 335561534 238642736 312847110 388079109 664963814 398371179 796739789 753791779 391627212 38585061 995967461 589469288 580407882 754428658 783277614 200473938 564497924 852835956 91789137 285814369 542593769 696252879 571984318 325214240 788663338 555285490 687944623 125962785 121998663 659084627 978175010 872028157 120824575 586437870 298195425 50219608 541319266 53653326 48153723 781143516 473365957 311201150 994414406 956170811 655172032 351581206 757797993 606257454 706962491 14878771 313467845 786817401 785513314 303388794 894874639 448511974 75439785 82906140 904412093 813880391 288301002 826927566 726430222 986086516 325929931 330216655 160003599 169474901 386866169 869804516 504655755 856142799 421915366 476598363 316456479 649948116 265895282 337407754 385455655 76824931 813688766 87288146 542069709 334359928 578890295 285543960 330401792 963107620 303386771 196323016 290437501 486193781 238252234 838960220 81272767 400701317 966071333 869868622 399701009 932387192 125348909 714537384 117396608 956258680 64324536 454250998 731186921 541375927 134107104 881492048 629532136 617913967 293963022 903955026 53062121 376305891 758937576 637514533 157522968 62801498 769006185 914114676 107842418 262247722 252092614 715407737 85127604 201097134 182920330 95752176 902360167 71546181 560377213 765782303 491291099 566278491 227673268 502551253 47211560 556517474 408327053 131633767 509435953 78751445 856126633 709145012 545264794 689838643 61897977 945807907 402351318 201582090 119837866 557433250 476310556 68582122 969299521 554896294 189708910 241613166 296454013 749284912 376338323 316013371 768715371 370394821 32772123 224583670 991104094 886283120 512373340 980752469 1135861 413465549 679744381 948324112 531671315 301449204 533795934 466740717 122599395 11747731 982278326 735149745 780954587 334631633 138256890 313393202 697038774 22124903 563308140 520126280 516007291 39956370 950461970 826683352 849059186 213512474 738693564 697987531 697732915 168056911 841337351 815057425 6699673 791046402 519964748 560125862 34084551 981028246 448319417 781274766 201875242 993098225 962800700 840838352 325992054 639342207 968512399 447052163 269386664 366106932 726807087 370479547 509732615 695269013 942393446 248693150 73965848 608415907 365172549 105007958 416676277 868870636 686730658 639642135 614838008 286679691 606009633 310544151 955901513 254258969 364641063 562758809 684675919 153698753 183123430 642394346 283583230 307266348 597600597 325917018 307579544 817463701 481913909 286134598 932770460 17942455 65950990 177796877 861027291 184404954 315021104 310625565 71566437 323252939 276862901 60608227 532447894 242323683 266375803 210407900 696396823 322711292 183408938 467487372 820426959 569147265 133047349 160024443 109486068 395733850 901221328 433313853 980707077 235764485 678843649 13184104 221767360 425485691 290740874 319454372 913636920 846160194 219666433 590401945 836301246 375975787 876590267 192759033 47314929 987751563 407332569 373621372 970173105 724530112 544591427 19125481 498651179 63216560 617736102 421349636 682368470 446517642 994428803 795006631 101155693 860533253 592896272 361953700 110995954 436873308 257698141 958218468 849262260 603211611 363177527 866456911 192143943 975100490 923705143 77019351 736085895 504460803 167629499 741668725 175044247 854425570 703678702 629485613 489770469 423019217 286915774 116753927 74978597 627256890 32652006 68511000 930490960 783857430 72963813 423531384 414822574 343785184 519545347 857388621 895232972 568464037 574834769 668947645 883281530 175976426 22495140 713128700 531979737 201399757 82334880 210384196 26266186 367058921 844175790 281541848 190601851 660248930 895601658 707325698 831784031 135864299 272150145 787289106 912150065 432921783 196506366 249701990 786073976 5363078 866842367 835077471 103935488 328511389 374758607 33395813 4050652 898205898 658904201 687056362 351419752 599965286 689341708 802798703 199805515 104972876 127648002 589370732 886247533 960885220 716693466 330603636 658801668 859581213 992775374 992683543 746684303 284863848 840175069 158080234 348761807 941566154 237945548 975401110 157942224 221447366 855316017 763778245 393800168 548816237 711723617 593559075 620011701 130817617 253014652 459034478 595668759 2421139 626274668 100338795 543792701 838868183 600744673 127551200 30849176 901127245 511113808 268116898 837903080 986556844 14213631 622927752 436248368 115877168 573501936 875820664 808489918 276026018 676118776 345804379 156157987 537865294 871279534 744049186 82057789 225930763 359532913 887689929 866691887 323948088 147836267 923889744 965741671 986387129 837787019 400474309 773808280 946068991 588628873 257433910 253637312 330674686 352628197 241636030 741603104 588466487 18982121 477505923 497727048 261401517 547414948 74439596 622739976 161048561 599853294 388194922 484428416 888223767 300999787 924580605 787310868 137064639 913971069 986417568 264028526 295887884 998954073 259682977 248873092 329815216 97114355 573458770 474382227 345348834 237593617 995557646 348342044 362163037 740010549 232223799 837243375 545835624 444120244 93712180 21272604 777541843 238832292 272045436 536706563 103298291 521929703 276557447 479852358 222102948 373111843 560637654 51729877 492215633 435554762 128209654 427106527 365821669 97225491 474230905 75662819 470303447 738852606 413196021 740966308 502923301 380082775 193024273 121863472 595666773 897289896 655904119 589932250 662482295 750097230 940971479 85578048 637140766 982269544 108318698 692926020 53486445 636495838 886223479 537136148 791871236 362943584 222426692 51713059 461675289 234571880 931230502 72636462 386189915 690807603 353806580 123137336 844209677 219683788 450488981 367984784 614984433 621228035 873034992 137013959 652116058 863224174 986253816 164466874 109209882 794917999 276746662 639625360 841251988 805720878 222834943 796804786 708998059 809710748 546395915 24131797 697696204 226188656 266450396 955284215 871034864 29047597 831936397 71489627 51107220 844000534 594318659 686665866 263631295 193936704 692516899 74817630 298778110 16941952 488729187 848238323 133993 185593978 818303546 673047719 671100829 894135955 569283822 581308460 771877822 979063036 668959689 895921525 520906112 875802798 900047130 713326269 419579412 128649576 756723518 381363078 704641340 340316852 779567510 540997539 557199933 792679139 199409037 976304164 176502498 125507593 244290452 931932772 215317127 704340233 813354025 717442314 986112261 797671565 277257929 373155075 528987588 90447360 551159040 994531454 37081781 724223137 828631907 398083068 898769738 990962282 930280584 381078339 441209732 406804776 148179476 780541017 545871082 185965417 534833073 542704276 582522248 251690885 109003792 676127637 311669493 934107293 432482285 171801146 987116878 153852824 790687499 75931572 406200890 360992298 933460272 585574006 733962219 12154310 121637169 72075579 128819730 970884784 586036713 868934665 431902447 570120432 984713530 80693545 834470985 359774548 845401869 439459890 416863853 641622646 415641172 816170752 321535794 861038005 80099850 11394744 333443320 264428091 607157300 143639237 332905378 65277430 91757785 437899738 360224160 240208546 720182026 727612151 448323304 565635259 955080164 875827290 90780153 973620877 717538696 352815255 258297049 217853732 512284193 250895228 812431892 838858075 274495712 517537578 598599106 604139730 604681474 712451328 955482242 514190576 540930247 986301617 509713019 17218537 484923001 907191594 352215639 613200304 971715434 146897837 582752849 78764810 597166838 452502203 551181604 644049020 956180351 535533345 106701592 527627609 361843055 840702708 412618490 509229749 693440567 3350670 373336355 525246578 558977360 571838358 223625325 42322493 340571457 750724600 183433538 171569792 591260304 169652968 42543758 828228981 381567186 191522784 443667656 712312351 516059043 34158502 717789934 503034177 180978590 146461513 597960072 153192561 343929714 13153046 584410017 12290819 959197394 711581617 388926931 209088792 569917304 413595899 191095608 523080349 235507748 397379359 735359098 195299899 826303394 626176400 203412677 129996398 587782596 281744912 514844368 319422070 230211684 685970336 612159963 299026779 110934119 890622347 492719273 229296879 310481073 244482663 634506376 170703046 695017784 12061455 145171539 912792388 661200377 887529896 802050404 314369169 21843953 290130079 35009186 416782235 417547820 646400423 659251581 101014811 989156542 7440061 220331754 715531411 338227650 566218021 113247846 83091273 883885142 804226666 838225656 13508431 227396008 835509603 333077041 709125244 732470248 333556523 85171492 396205427 422241617 855171109 156387184 111010969 228095782 532551933 51185212 528838430 325259952 941864874 639020343 553005564 733005891 184381542 244303763 392711925 19810359 114570423 143270162 589182860 993199598 783530087 491395322 842049045 932044503 220905100 288661275 352326313 61555038 560204416 459308230 630832679 489542659 940540140 967356381 543435573 383000642 648037046 663982534 268568390 473935274 151286809 427114095 398447506 372442317 417875853 325130061 99330072 691597380 264818900 610078304 998263458 138339760 356823550 225793324 841256897 632579774 902776417 441798083 456880584 768768542 9734037 712880057 771754462 976848011 663934592 354811691 118384870 299629513 646752334 444551104 790781587 95223198 543328116 18167721 414558813 994850017 248533167 56709782 575476355 426772585 12211710 50397389 961852686 293221914 602267060 661756432 443229390 898656222 670447458 212742828 806782047 989343398 29971684 627592314 43417883 276202861 142437216 374238169 290046508 353473591 94722627 109494443 635262853 689137930 650073148 645330787 711692509 987612413 976225356 985040882 693321906 922436393 845221046 593288922 593327439 794777005 24434183 693946915 477224899 218868407 683784720 512729175 67395815 396970870 314823923 141235086 995091547 748431656 226715663 840128615 380557191 27765773 902390547 109597959 292123290 765885550 723649777 866225692 698275727 186790818 443992807 945261535 9665829 488064255 85693818 315953931 333579235 301081830 958413684 902956006 715431707 582641607 971375851 811232578 680488421 691748622 103655995 500336499 896138272 725153339 19536137 243988820 698450805 701048781 962545982 704288594 728874581 178863693 196750354 983656023 569406199 775405902 113286910 940073691 138613340 222872174 308568266 803155416 100207437 31437386 226433662 501376987 464813400 477862288 406289011 928199149 25605590 32663537 535551296 616435367 348195563 555985702 350325966 547587876 992744056 577012 217283911 870050318 515588405 493812514 519192094 667272339 661655957 718664837 398647571 189348711 224557273 656587252 351525159 643726793 824451594 104439383 503686567 476048511 22499576 369989266 173238054 421883609 948451647 316431514 869778050 239822763 83601209 903134315 808306657 472752212 839857425 702589188 649647020 465262013 261592503 514621296 108956569 146209615 22120932 854162370 791147427 714202627 363057944 453483031 107380495 162951001 321986717 226398602 73482090 84011092 126925950 682846541 153169287 120755845 731234968 478312844 298315907 667753217 856859018 938339974 343585984 974041444 496603068 733771644 107449583 398935257 481195102 972166583 330342655 972345611 672846442 836589451 25250608 828567856 254931871 134490446 60406533 285719817 415890307 51386985 974926410 924222427 84500073 837542977 383514131 490250608 720463464 99677000 767420349 797331239 212938339 317780477 781771757 226043607 59922174 903712221 495877517 73950183 50581933 807872118 483282643 90308681 219927972 358714457 190206522 143609711 257117416 691742240 431550342 390655323 460636990 27551596 156090055 914994577 890241848 710495211 89062733 604865567 847173420 472596557 222190261 212774557 49127487 878574411 814928357 628746023 836617554 64257190 732979720 498553701 292573725 183121455 401555858 191908741 96848403 564284080 917996864 559741756 896058230 210380554 693666583 313974477 794677838 539014939 941374304 403985911 104052074 656397006 283809202 286840077 566261607 624389913 664353771 97595362 901852575 482015472 895242538 475143385 534104381 231829593 639769311 547600853 684807730 406092126 472230846 536635203 115451959 561578257 174154946 149299996 459414472 993470092 885442097 670915550 81553202 722062833 617607317 185689486 112058243 332005739 53109701 546445498 964523411 682939437 127475675 684614522 339824899 303023470 846927930 884306026 342707002 878453620 96672402 642899378 572706412 417511047 254079958 925261315 219650189 123746811 646670144 389917581 259049054 112390438 248371032 752036113 337343594 765825648 338940136 613550293 971869694 911031361 544504835 800229800 531278900 522182153 308727560 976223202 51676908 301589829 729764761 891103838 2892750 853115510 142737314 588435330 489569098 687362601 57717338 881318464 383196569 754022378 515718972 437063436 782547386 463697242 390936333 823551202 319096952 689302294 62405334 546038348 115002206 910048206 818724078 273031256 107630027 585695023 859531760 344140186 106554842 902093044 692363714 837541681 79488374 344062946 135095952 967181765 718910284 284553409 72607692 803331712 725256154 525875044 923022645 156459549 796535386 88080294 983711693 394532822 29509592 331392103 395573473 917033079 341876260 990305939 861596423 426218313 852906198 833797149 448485144 851658530 334328397 66729213 271646523 833384804 658012338 847480374 265150939 117029620 953201397 489197268 668806314 106242880 720604111 786361575 242021800 57969469 187549887 956977290 514715674 155384426 131579663 429530336 159435657 264918478 553480399 634785555 285311690 526634744 279512533 25402195 694390010 251417852 645197506 671441373 230159484 408703865 469148162 441325043 968434177 658376599 278324928 353685726 871655796 496275713 481239545 349993200 996463387 86656238 727593833 884479111 725078644 777735456 108612762 307221248 387577676 411421400 947326940 159118281 140261050 658748904 765008201 728385363 725370907 166945702 19150271 642614806 483765260 902197742 946940390 134828952 812582786 519147048 281545521 308060512 75716780 648953921 827653334 488633348 851290121 558796209 722199766 969268253 453887834 610669173 128991993 675162954 849011374 901215763 78727631 639926073 285798745 922697370 888566193 607461016 624750325 623124897 906022847 731908649 909717610 723874115 949227744 751583142 613736673 934823723 194745031 685820125 89198289 255895427 572567272 736388256 289868018 240372739 575914889 509536714 122056012 561070314 19401901 177187901 565868075 350261245 326109478 836249569 62264610 572076429 384130447 556292009 790095374 207533930 605709123 391741586 484348434 936179193 579617646 329015965 489320604 180006684 4518913 802622417 536351841 613339460 929964721 850265924 847122521 304178278 393050110 65872401 810375373 871193344 316380212 101896790 817710661 164692761 134284899 746099776 212516504 469295422 883928415 896763651 617089506 67331975 747786444 280763349 539484553 854441102 416513552 610725626 390532404 59850881 833407327 621909182 204400605 896124423 539394730 225202288 824155325 438434138 631768763 62865774 841914966 217155895 831601681 78342169 159670651 661975525 777128450 88581849 661519419 118814257 795425701 328211235 449751797 4321907 651524312 40811631 31802186 196845958 493870407 946402113 516988713 533171156 881285473 232511011 972603333 390376523 66035034 133118118 134177947 474280287 574055481 224672358 678080111 737791503 281313986 748498437 765410382 16090849 791879302 650451499 201656458 511473893 541031647 189071500 414051778 520924334 185449450 371229923 488594392 508024669 242786195 796210161 248115450 920343960 716216455 945425536 811495578 294157453 572684096 868585061 825208951 524521202 821023997 865082743 605563796 2362884 863672008 861847704 824312125 981563533 163933808 668822708 29184006 741643223 197057934 375984062 569973452 243965627 737490048 245128623 758606259 776333973 110393714 508081545 48312103 399882828 385434962 809698903 563097820 920026960 481687769 368709163 5573329 9130646 391097223 34762015 937917509 170194844 217786018 378116181 248078537 637690219 117873727 107196151 289724719 609302922 865091632 373121336 723154579 221936409 884395804 194585427 655303515 938783662 991970663 202037386 419430449 956017779 357624898 431693349 167340298 558955286 677571239 79511673 388575269 276365516 697683027 270474206 354814722 287999831 869388497 993013688 525301617 91478521 493291121 998115698 488193154 275468929 958127945 463863677 974965655 88457286 612279355 846593616 489561934 158780199 409639921 499278707 572730007 762566280 672179671 178544749 172911015 89938523 756401448 282351568 846208759 436350995 976966628 849888312 783047245 779123119 362838997 648910151 346722741 294177974 677409158 638743717 519669380 458110772 201041749 789368071 699842647 99215045 246358623 99808550 452613646 799246209 564540301 225401541 416620763 233292046 921531025 728957356 924516653 874037153 20852446 144075441 685357509 814375657 82704570 704721578 185905314 420293928 63516716 311859580 523953686 192561189 78548482 724409616 210992051 835403306 841405142 858491483 690438482 965816082 959821318 326633044 896564762 361713976 135587518 790024959 423550842 463902855 711945965 357114469 205398048 246499686 298414154 431529880 469978383 12547537 667870548 954830773 405010055 773631042 301875801 792925915 491219733 653908675 900854370 495096119 944579213 270883808 5797450 879970294 275661067 393166259 185047988 713882715 711316468 249449685 932742663 109926560 818706677 133553516 614842223 60470036 200420098 938358316 726462440 421006089 438006614 323925320 37576245 159118295 577017462 280885629 906477784 924109280 484402990 901713170 76030247 346217875 924636051 589379801 651187765 749573725 58771969 302301474 443050982 784558520 82312731 216028367 863591904 147451437 380623310 306932805 316935830 746905151 380833871 787585650 10659388 916138370 884235033 464562129 779059160 520898450 117930739 16021337 165165102 229928721 815601892 487978899 758779599 336971433 435212102 858518415 504267026 462736394 511767218 157772258 92460314 224780016 818372364 98332075 557376209 254876192 755526787 564724621 284120801 731646561 368837768 854291643 360653766 153448837 726075096 266034664 488961217 48425319 31350395 208836180 890788567 372708584 698461368 837379781 220262876 10221814 265189927 697349255 908276583 601268096 656236448 981366387 650368471 689093761 549628236 405830118 563892564 273513725 339284885 776456135 28221137 84091386 109775407 889633667 837084930 602100111 386879766 609331729 580173165 191412690 437532048 678742769 891862356 955828712 774904105 392515364 169695437 153024253 484861618 108624447 936184236 887578942 816524619 299554133 92974228 127850219 472337239 194282498 173343212 686157632 192847234 651300208 432220388 564917132 978056129 780625738 607857780 668482593 741643854 956827850 867520606 861743959 525798065 858833836 787007017 896708242 20913845 566009143 420620836 83815738 754313066 443633465 455658601 581010885 989054515 725169927 702210008 469882539 282597295 831876734 668576536 847854444 83864269 970077962 688288669 601117592 699843008 621033620 146290842 97952189 390191364 625709205 900040210 337577589 343030366 787696392 716963791 12797282 389871068 17431929 352326750 363847730 445913809 168205809 51212824 190843796 778370263 147991561 540229665 371112005 577369299 405626333 123848026 587577346 790217202 695869717 721540985 227012763 667194026 793433052 345798644 197936865 84356535 999372782 81486092 735060906 274526491 404611975 908640459 192715997 464039202 274900586 555917308 645073506 154546018 695878379 552583998 132949293 326268343 74175194 515068909 646829622 56666948 567960730 926421297 298293120 803874167 747750414 858704122 55384855 411520770 61193127 619511045 28791820 228354789 162715995 904077260 684364665 834617697 501319588 246420379 721923967 633607938 839932046 164061568 839848010 472406432 133697188 14116438 353305869 424697683 7866879 962699709 972099840 459048320 1250617 827500826 370817126 434350039 869153914 631814304 880725388 419060552 943995506 182774342 119199169 618387729 212951894 670989006 69869662 485287861 287463394 77567679 295965643 557147136 691550307 969508712 22154860 266026507 706557343 43070948 415806390 27912748 769549296 467431442 421608741 750867979 334925878 520185240 870802231 20269458 62958295 15730410 260506744 333200376 723339452 984951871 165617278 271739064 403492962 358311574 935159518 808505493 201650371 713008312 632688189 974886557 61528167 144700982 774162757 70247714 441514587 130946663 472573862 824528067 438349110 329486188 310773022 81969507 691341335 103478061 155475566 815568173 19658658 954320987 116303966 118524311 392045321 150706028 76405443 776515165 305023231 377592739 234370423 54595201 17743555 860946438 429134681 567184722 815864603 287986278 707513174 239599461 843409751 39917150 4968289 949741460 561929803 236544074 867255666 905296900 651096406 349591637 169800846 59463457 52896094 925815149 787509180 436094113 621482964 872634957 384724755 212006524 132263851 936465522 278916774 933743099 294943330 540723497 362739101 986841767 601815296 694001788 941544225 169317718 497839890 804539976 72300389 467010339 215403440 494209837 599632033 53442165 478326391 547009936 701351446 653547506 506542220 98975397 201299733 436595094 906007457 292746082 699715560 356835737 201518824 35286921 615370478 434615681 675112994 675215518 216038283 858273558 498730132 122375926 884013348 296092530 519599119 719290537 962460206 79036910 113582052 413134996 860451620 906458416 609679351 208871267 859354505 911183394 950550442 670377603 205637859 952734968 514237165 742780716 130561479 570155058 38407479 894042979 953667281 466122131 12285572 222837995 410561953 770660644 286826077 465239639 929241568 580296253 571740364 209491453 393316419 403699830 569586028 902235392 193815939 79430329 936846937 775325767 367840609 443706413 728745785 598467971 800729003 175785288 622326330 867934251 7914287 578565832 736881428 550085248 886205131 636869297 469919236 492432523 409942620 965585740 694871763 537016601 618775506 877632561 215487435 378654919 939173918 710027579 467277506 816649457 629967416 851496844 573939227 342119105 554169380 581982356 953718713 72510505 631689706 468040965 944668680 7886047 595393695 589637595 234775813 785479522 804887388 884873564 30343463 655211006 113987653 821588499 681010809 192051136 608891777 220407252 631935880 659491714 344877635 437264058 788715114 377111781 591788486 951063086 544055741 752814417 183912014 290960345 855432102 824528114 198917666 837516973 537557719 367834053 616080024 666636779 214559107 3140232 400300806 628804626 142785131 747218375 494110675 520714740 281544144 193964236 722805092 887565731 638102151 880660149 452713776 19445625 178647265 511886174 108937391 185780508 714479038 177632882 829316192 202253945 615559559 961001057 602044116 330066626 930333991 900855648 499721624 802881911 528627474 677836405 37913163 827963736 682043981 92673125 763232650 374290290 368096089 893977279 146243587 38789662 820815174 810208474 684332388 375227891 829579947 914275548 736397676 488968406 692353698 696194218 821680349 287334645 337040342 423663860 199533182 625820612 257770359 481067571 469923362 487504638 139218485 717706660 269301670 550505384 516065616 608928853 493581291 118568719 900436882 428993042 920735705 832736197 342770245 439582326 450016611 992785064 296667203 63980511 815928453 988010972 141593830 385838710 571616833 960640974 447264025 758826282 732573601 161057843 53456452 150863030 272834740 957548802 563906404 918277786 476823451 667651973 356163061 276241947 738390387 560192326 100626682 951577420 140423527 432036121 314416647 317959173 78947243 236754970 214960173 526855910 126141046 220372144 757240586 772700247 2906893 885326725 636612041 162079622 545373883 304303245 310768663 468802928 182997969 355791364 495828774 233601491 415857318 8837487 363753657 962139703 515462819 962218139 127066644 336634602 33158956 800958619 422267655 336699401 968149688 718448842 352293605 384209521 463636415 494566352 374149008 452723403 930003394 551825559 505663595 235567238 258937423 926540626 903578471 786091743 463563251 961753216 159690744 748792273 487685452 326169572 920127518 355480356 802340349 949901194 89861983 482804076 187443116 280143046 860596678 983227649 645313297 317485878 447389937 663338752 143338720 623805373 989547253 42292820 932964577 446350215 679706495 822695597 210390747 390528775 213943480 471839104 479703454 559515387 790399066 253662994 652636683 22670185 723702948 67444585 759544319 627360408 13196120 427075924 45713253 865744417 469228745 545825134 144034608 965081055 491704011 515544853 780590170 496964341 532186043 506676595 855811814 69648593 946461568 975400055 737781471 68561959 466337419 12679128 811141458 339117555 411182287 732894744 365205345 612043382 9024203 246795649 971892009 701507650 879932549 537733920 779343572 882693926 533569162 66786766 79574425 585226564 528363252 539990318 138285228 54475258 325976673 334826660 329524820 373975801 23792885 579747941 819476698 62425907 417718620 475140706 224859536 593986532 951248337 909546340 433854927 100115346 75170576 830613997 877832699 970502408 495460193 779601233 811170943 482877530 394837903 678880932 694488777 97012708 474857968 298588619 101772377 96401741 77286249 754230378 453281197 283181183 293391961 411807991 167928654 192713900 934006704 958092707 946407637 224319829 232125413 618619763 607561686 814616379 595132407 538609454 316275447 726078826 843831916 295073381 453386975 21922873 570672721 656148078 760542018 786075714 860491324 259922284 655881179 149878635 479280974 686677830 415093098 800068062 391631405 144080044 650039996 794985235 696101379 743577624 4401571 721062592 669228938 477099209 765230583 253925870 822758399 325700548 326826650 433032682 537644584 930573534 248069241 844813636 782341460 661756847 618312581 507876061 858177626 626556562 789296054 768592598 160944791 984201655 982014485 615084445 120105713 141929480 539710371 292990692 898101463 968289857 650687096 50117801 104208703 627530720 643831470 99736112 582444454 935247918 948789606 811861252 887629078 787459388 105517003 342102013 906639128 809965793 7690767 679206965 255101126 906281406 330878061 217339917 89577918 484260411 4173348 442640950 739124007 309461384 950252162 673369250 683963562 367356574 25412568 579970958 378211716 180877628 365577855 395409534 805693294 432974061 197371357 146461502 340479923 837969406 383572823 687321314 323674655 860639881 786910051 639366342 352846852 470952300 293342841 502146961 158839112 445748564 174339100 863010349 269002573 755174828 65848792 568355021 876734465 822299057 667571262 602261998 836391643 547909471 66647017 136526681 822414809 305829504 207357560 609903890 859094656 216694692 738522522 942287475 360173795 403841829 553049599 73706263 46513298 388054561 533613150 546233824 63687089 2194817 349073022 577305086 899274722 18663670 972872745 530403812 222402902 287695351 688668206 718564428 266935232 371688644 36268907 151882558 406967138 12213608 155979711 918931202 501996032 326156464 902805270 754460465 44318696 835315510 322788962 993978274 427482354 538465369 341756061 350914943 507596154 71102274 99187656 288540719 993509736 106285027 423151600 476763753 149258028 28492274 534546983 133773609 458024120 640813550 282181509 572292273 108620941 36538916 306286637 791399825 150372014 979422113 914965578 962689434 159186350 197289274 661504782 482457325 800154528 138256022 813899698 187513064 417035045 26179867 964619899 576674106 838060128 287593717 414001584 71668441 664940547 183917088 617323687 233030910 407108670 191638879 142162614 621209137 686577623 240269109 413267013 691156795 809100046 83566837 329404342 84578867 310012085 677616564 813254787 112478576 66573088 825440600 761744931 991468701 348752689 884193156 420981015 261147554 657156424 382295212 461862379 482444215 923881560 49091333 490291761 872986707 617547478 637749651 529798018 437243453 604352451 848431387 54656642 512664707 235258270 263770412 605111772 431715188 246988156 798267171 371607360 500641715 113173488 594856220 551899754 215604000 383682586 339946757 464042011 154184681 239912096 792901511 593634076 681250175 292172464 576565023 588309826 348588963 397372160 387688203 123897446 939208534 361126093 586408531 647196523 139984356 867360991 56260299 446198586 926645220 550813316 55173127 38724038 628818992 543982738 882786409 19290890 889481966 776475238 573195800 750127623 374245513 96123626 316228615 917672903 110807221 968343432 867925739 680217180 146863982 195090745 442760774 224398306 651652090 246450041 421192032 978397562 889152997 553285968 263048266 589531216 348882944 936177741 117883100 35866772 7382381 37242755 761276343 105540739 226523786 437211796 321904960 416823131 240027655 35073698 385160363 516599400 417291736 908415328 235141357 312748031 331570233 850250755 471116745 65298552 1943213 973209671 615946436 782607156 576648449 721756530 575139891 636668832 413097547 479045461 987927592 223456813 975236067 490800453 583452042 571421523 192849522 481520416 599668988 774139032 821917410 788636237 586684915 550101893 643621735 913095866 822949283 782353578 68020862 369434077 130099725 325885092 611334123 822194098 101248250 961237271 562865080 918349253 224632060 289840550 3069759 607715358 288851561 611885323 474953750 786671190 728606307 734648317 212924199 511332495 679480782 538295869 786901912 251429478 676474975 753629592 887035363 965909523 631922572 727084766 397601985 215983942 999621527 206557931 314536501 843905601 209075847 291385759 490965646 357802694 140617514 615036135 569567073 241499945 163370014 8242098 169929350 137386299 977270463 474906879 349421351 707619163 720773684 419222219 201304748 894813042 408460912 125105445 636094923 309230573 695529773 940520731 691179903 484014787 251313894 980109769 831609868 973003374 825015271 144733522 98035713 250029818 280707902 487978462 386275631 921604338 266927047 682007204 572340149 931009644 733530398 259969752 388808436 90059275 893894830 664101571 475114140 925700591 835959462 811709097 413202334 212679366 598857470 2815455 75044152 310768845 764784249 474602944 935506416 832097980 323207579 484488876 536957582 391590622 517578167 716508945 746717995 689482749 312025573 248888413 79844381 244416624 144913925 539701260 751850255 247024921 696498109 358321824 742602729 620103770 932138880 485940390 560832480 480309026 593292679 474565548 385645681 131966440 527407313 719277903 104645729 363827116 296438820 467680305 345458361 443502834 69018389 447396089 420255185 188478665 741211894 965611359 612138563 333359556 842338798 783336728 516816884 538897160 688153057 136840937 929285393 32715574 433767808 304704923 950326029 345531263 863960901 788179202 942340516 450001046 747568237 152932086 171940317 475869116 41858050 710573661 218987777 681495478 483894229 378211866 648934309 290009557 573904255 77162025 438547108 252425962 947295581 665266813 323074598 746711128 486163352 694244377 51198614 171673347 277911332 682505226 803386791 202474075 66524340 711104096 453926228 451153235 967018444 862775607 315133158 533200749 671006645 239540145 649266660 732086699 194828411 24322294 172336932 198219680 306561017 108564282 374388164 624389215 966676687 559696569 622364710 784953225 60871524 858861744 892881145 276988481 988300011 92632688 458114095 428604983 334297691 498405959 42670082 385695905 563095923 702431888 446388219 203180861 856745914 698346669 897234916 206232913 832886149 20254729 637504720 115328685 2643176 482369813 330165281 732609700 497460423 636051532 142202995 900976920 341612999 269755699 475359415 333959534 791451480 41316175 340243232 916018578 254350516 283693879 816982573 941974271 661010908 998098304 324370333 875505581 152394391 868757458 552034177 644514598 118906740 517468628 330326827 163402618 650162381 812560953 264799286 449166395 520442306 546443706 799395722 58187659 952212283 412561949 804656211 423017228 392016616 325406503 629761792 85092081 34291266 874973102 929822291 389402348 827098506 241418378 61327436 91201343 427118791 36605345 542232379 958865838 549977798 825260249 127198385 513994887 452600871 561204517 516674189 417636259 867810371 208653696 150501360 303277404 625904709 736669679 480481353 134608795 59662367 969135735 801883725 464861902 549784966 83192878 918160628 839838442 849436924 571471405 597034118 379558000 257373899 753752726 209425809 879091045 430584831 68855700 427365347 657605204 276837746 859911769 428144028 950212441 984181447 874423327 727462433 161459983 80650597 780552488 903894813 976282522 5515641 50648001 724819333 247524781 729483004 428608310 723110034 342379899 521478323 718041833 945551566 168602563 972429091 424083252 703302914 644991692 359015322 440451209 562850112 612886373 613569332 459065942 82744298 702776800 345974736 53143062 426577054 443897120 506359574 668888141 615749965 148548490 756481911 819865984 469222185 257791501 504899368 669398345 340038063 464425754 784530735 257312570 426924451 891392439 232589905 214318589 938641937 602626148 306710044 495442487 50483532 176789554 525679082 468829085 983925747 858566585 441481183 199317991 615172584 331397141 206995934 517174742 705314139 342714859 783860891 924811322 667168698 418784363 993495690 178415331 785355975 195439179 89273071 449693095 368308099 645204683 998522064 131415917 650837308 354703532 987175425 996412188 903301765 195261251 597494807 978757291 191168059 925876579 160110961 95409678 721534593 433125481 260759611 820396618 758847428 716818749 368183648 918448237 890451385 109480778 428356511 690836101 680355421 650639757 499073141 369870507 462194928 402383231 388758311 382614021 411024131 420108326 564433355 828532667 383021929 460562706 184770100 778606593 524496189 191973210 143364360 250979086 288240868 379784860 270645418 537066025 376677130 321673725 943405133 915270295 269880738 362137898 2624232 582382767 205946605 921426270 261497917 253231816 257546347 53367379 765626834 311238212 873524199 372243793 651032057 850465939 68305017 243176485 402218184 144879647 497511292 218297893 743812899 845336934 735047059 861237552 524180399 218453996 732799405 687823535 228088797 658839866 14283771 650002573 248403686 706464738 486424827 20428352 70412490 94107260 50714225 71906248 816929105 51094702 639452777 997225643 257855242 264133664 891654710 130999028 746169425 776764807 887670648 517664830 635505219 115523481 912664336 401680039 465585097 439432730 231771690 803247568 165558931 729145558 649866558 543003119 611836952 309648541 846707460 292625074 630577821 386307658 383485314 237512797 40770597 758749120 424598789 146564276 21091202 744015081 633696032 158094343 899223374 300034230 288491953 305536042 93522663 319159843 332062680 437316476 903712630 382073648 149654790 567759845 675145964 247390699 47806958 986865105 160732929 683792738 302779786 620718901 516596787 266113200 756258850 248225939 165001420 117290490 783213630 431066096 103840222 685174632 962199479 646011864 303817278 862558254 263742628 811455589 653474192 793702788 81886831 659492402 855111481 554812846 398471871 492316519 433557866 745587958 324967050 167911091 660973083 368953519 199758607 704586824 758600206 667663408 54675661 785965291 344611275 991612895 456111253 554109147 939828383 905656866 956485753 30928621 937639332 148572273 495603927 197256048 281710780 238983232 966494032 703391048 473566609 594194966 128873939 81999578 535747212 850259581 621088659 53386005 602940906 793469188 433865229 517938797 771720879 263213895 463753221 887046624 971034522 330194409 674115721 87772150 917756483 551613332 424847848 767344574 456930814 345092600 181106884 189954508 816674543 115111124 582150911 111227712 959439610 277499623 233389253 726356673 297370835 984213242 738296201 986009464 419520240 829691617 400251144 985783841 511513235 368129142 573940298 550156792 608335553 421476509 655904407 485535684 394373965 940402751 321389188 143174354 581147599 946188107 390291694 619132411 565128869 545074624 417681912 921530008 321391099 561594015 560111632 53146004 802952382 637164272 92136170 682568284 970791848 45093575 212845699 924343783 733039675 944404031 85256730 683866032 422574522 844732024 281469762 187136192 698515003 458805408 120685260 872793254 866248081 246953190 851620820 199574647 146660449 484574085 848438464 731748305 697911566 426853311 966720571 257980378 470345934 737899230 655704121 550070848 602363542 204660535 254166774 567001660 715136550 271560480 823857144 616074121 677801224 235038719 791807242 320617838 584363916 541690682 65915713 375534010 271349192 210156872 741292024 301858244 18494111 843654307 206821332 676513129 965050040 15429321 711026112 45881360 279211395 158994247 573808629 304400294 712294457 482834092 894724840 792538531 392970968 542228889 15017058 643507715 297088301 508645291 338860143 570077772 874514883 171329167 214800995 66234001 150160116 520911605 37497816 999213666 640569315 746029463 139000757 792744419 188725109 496259129 858702116 834393783 853997404 163406501 938392220 436211979 916104463 378094508 312193750 313319065 840060111 513731114 901681625 146164125 748389541 643895297 458023921 225405914 315502942 389642522 616319152 262830502 337044886 371094632 399229428 233115858 311004333 500972260 981837536 736699325 704896455 2376339 951341797 494182476 352879320 921243004 809748143 559339248 745365915 282517172 402734401 403084703 919347337 662583125 996363484 881624278 703214577 526653824 587964942 481183898 799635166 923157855 325629099 728192380 789880874 964133412 713343181 778805137 568281465 491737356 821354971 396115318 390768686 825531990 255410049 979049813 982783098 139233870 502310065 976106969 433661017 177322054 767984296 934508854 118047369 635120537 217323501 267315249 363565969 14767271 531074376 695532810 628461762 75196892 192697553 539438738 706247477 491346600 702229730 878183200 80938186 790724746 592149281 522017683 543118121 724407296 359771001 732132940 585824450 343404951 307620637 456890942 593198028 402500319 835489164 147041247 417755469 4873587 194695561 535005227 482477574 798553079 746103327 668811179 897638795 225188112 667227044 317346666 615513907 896164470 957148341 370140161 737328414 823732194 929766194 969961100 811733816 268977684 924196685 631357876 72992301 299443160 50368630 365239974 261090935 502994176 79788653 5037591 278148436 120320358 565448240 673528646 277873614 510448622 985473299 794008826 160188856 957077374 155241893 494572163 4509351 249372173 350963907 799793331 533188347 526851474 355702418 278497512 347104477 589804304 748450174 596594188 945197885 708447123 758017853 296729999 187885779 916983082 190162377 515487328 887920416 123471346 686562407 212379650 225923436 421582094 640363683 895253373 609519049 589653413 906243920 838518875 600643085 82176491 690654604 569015218 227231449 22771227 307526076 783888164 703733397 820039540 819042445 767430614 604328560 813186886 159604718 805183862 681995621 321619934 630365729 5690171 460020530 638841752 273780903 15581407 243373408 741566422 367746383 675564975 533573696 85038085 159803177 158863218 728214504 215816338 496699796 998357893 533338428 783698428 523948341 905997762 916410081 284910019 979413239 297111440 613087304 395466096 956464910 980035294 108222122 753358233 39584759 360530724 939968519 728771285 762847606 214135388 460700710 438587081 764198295 677105169 657520539 738680091 28813742 598101580 869931193 401028226 938236248 884633767 798127780 660487093 215649144 965645630 106164291 297435256 536496446 541475258 737573700 754170517 447560473 654029385 873783077 633113820 29280713 362532511 442684961 765278250 27822928 541623546 135085122 425604194 183968252 82644771 590103642 458746730 872030048 709089637 583027454 407979067 113776985 514638235 623412113 315807175 678419722 49271324 956327225 833291287 499747296 994483927 508734951 939738928 402191504 949573171 664737108 215317032 177092118 866755112 50297856 645701656 864952502 434476344 974333491 221659429 222644477 948185444 592345340 75290997 463871166 519293249 732057399 557277754 932140564 860866781 343698560 890522290 166627430 565076187 655361091 328654621 670075744 865251169 971485868 503253445 636234230 816935708 933342135 523583486 630872418 230339140 278211619 782047008 197250602 218719127 387614329 38662031 604862236 160195929 677098500 719946677 226251849 365193819 305597413 148558082 797210126 897736433 388322806 858974453 504232976 122363 436185059 556023308 87981629 873753564 396790295 471475411 532914118 790593928 624998607 701237466 663287851 250294640 484823819 977091006 740363306 520889494 771105681 251663394 128013015 416949117 697435634 624726703 950044801 686291766 517371782 431681813 886877636 536093269 317870704 416963857 910053512 243265528 926944916 949618018 889279223 839909577 604765350 706958552 409048709 316550131 482726173 225380673 57709295 720462893 67346743 956347511 449398582 262864052 79304190 995124575 630405293 924548690 733636931 941909728 97439717 232187985 353595038 765961454 637732790 457953163 370081391 822414212 288205386 755331929 42277596 593907619 328103949 595007655 811442907 809894998 918329006 880466654 478520605 47420334 640834607 199711483 868511526 771729350 729534928 624433781 618379840 266539970 955174689 229410390 244844153 873338058 991597813 313967149 413775273 561237264 565740133 114274063 271210609 246757584 700541403 211738264 673618233 486632780 150268924 455068148 485456178 740325324 115950788 83698893 634575186 897516196 528762474 761703000 855645020 104556080 706882167 938714710 999198935 119551950 957608624 243013645 734446610 150766829 88884785 562049866 248061225 356646909 507794000 366889829 485460217 385847159 581778359 200225851 456947755 967523037 296584524 221762355 2881583 200577980 849845576 921173048 614305852 325692580 449619493 769115334 717518935 957538864 469216169 122028246 20169794 336420868 978537951 428095987 221422226 521887688 512313371 267954215 99516829 790941230 335716345 936399115 894674053 529487859 140519007 406100669 978606638 164202198 236163703 71865056 354182223 426185380 828324535 527806886 837033563 216280620 821815259 53676741 429834901 379904075 263649766 871810681 571176706 845310691 863712038 377187976 56353908 575353308 288512303 572414276 990183815 283238955 936602077 175766656 769369493 653829833 690096722 47870620 950095304 67192249 128895999 363241343 271492629 948262661 621445010 477475732 475174959 107428285 843460622 104351442 205786774 599569662 990426547 955788219 754421654 90260200 115728653 213940816 293354556 393732521 353611763 206043939 962912611 573076080 914766460 598665289 17279657 839474296 626243605 204078177 323509625 397934595 999971939 591463823 11764735 575456092 846146138 217896578 965684 136696277 522421052 64492915 391157981 205648585 788681611 388798237 440670334 257436313 842881038 861011912 955312744 178464686 281618145 408095298 667868597 88736637 635355226 470195425 432782914 204198783 454549027 569512067 428064699 4368438 931595811 35243918 375598732 376242220 418899857 690168561 623842545 321404150 155599337 318044451 112385000 413179948 21641198 793379617 308753468 407996526 23792301 267548529 744467835 435509866 48052861 858154784 684816122 798838739 15782901 66754249 529354465 623561823 976348413 428326790 603162386 845556434 719878079 615407615 731748417 808844791 462448562 613913953 294546659 261979553 507844752 421302371 583845432 643647398 72378719 26710597 30911308 171647214 582792041 122402761 669519343 947991136 179555650 352654912 789050295 132323312 225554891 577404544 785983234 729905559 229352739 54415850 587086847 971172438 842377144 699107678 864769942 776723768 675060545 795282001 256984710 724803155 893220789 907262388 394945102 561639357 187421786 279989513 554541619 71425687 786218177 687500115 67738697 581018126 206874040 877275680 124825189 628195415 111942239 863300234 500711723 584758694 452729622 4218415 819572479 614581059 947173006 868421169 359616274 87217268 368935098 304523328 518749792 554665868 462368214 154118036 128055463 105484009 13073253 555629549 686446447 836431849 38508341 983497354 357720839 335669750 144078937 56272705 569814408 195050374 160125996 878461797 246160852 588348176 357345111 463752914 100746898 542339609 122020544 934556914 438122802 564270118 612274337 163933106 603940079 715880913 714039155 535169670 376240581 921037231 270312186 147466097 284201852 885391200 976890181 772894199 363994792 96578199 883427239 400847906 228226465 131716605 284635577 799216014 394344837 480727120 890774627 373604953 591200061 66824533 570204881 607036964 535521401 850863826 923012980 882151203 53805745 277043612 753221388 283422987 948116518 883723402 971427743 27573271 690661601 182006658 518757234 802930705 962208689 460911 322638878 959435077 978147118 526599741 493019521 747470217 481817785 742692331 776904893 326731583 294070651 665980794 232520506 958020681 747061603 791992566 372613556 965248789 739376168 242148208 11780389 901820316 469487692 595588098 921076172 886279773 476097560 286480590 636672061 542552410 187719837 596782591 130660932 928821543 390670510 489208005 476326407 285915605 363587059 755693150 601519329 433126916 384727501 16149258 510441091 231304154 342147185 712548627 221669345 139491849 843587538 52979661 356840502 800655552 465576632 562663568 226375688 618401474 981157287 121375680 802869794 533761622 925968877 536861639 194631833 992009801 270328997 58090519 302901702 144314097 599348142 753519656 54539091 385445163 980291765 52007552 670840105 345808223 43138594 605366184 330098298 404160635 530635829 852271410 901805254 884662005 383888873 413623481 639182544 84859339 130419718 924608221 467787684 927625090 999981601 432033352 485061526 148372268 23453582 452563632 988667716 34388828 816505969 850544077 220465808 386043698 702527151 140102753 477895080 905535315 808849657 706467638 846972929 542636270 281817545 826428960 434425682 971394233 596876893 627919095 72211109 217198066 544199100 122875553 664236869 676844384 208431034 665385987 325939139 184067665 127188462 241858835 449468158 784051096 297367222 636683208 52944156 952283802 545890878 785966377 476065927 382483000 32896885 122411580 837972723 24589795 132841745 56496918 36788314 288824974 292250260 203663313 543294982 451366331 603385158 724840844 722153345 700862061 765965113 519284085 44779931 864821 679845953 115368380 85173110 975434278 431652611 203514524 259039090 242476002 669382114 340342104 316487744 847315597 937331733 828542267 374116304 879819735 399535246 333325460 165695584 333918450 137876752 406855105 481511797 599026594 61690661 837834784 917071577 338754347 730245915 505623840 296072608 775909721 388440328 241938222 258693416 707331972 693553617 187580618 447198742 872343947 445700125 906370930 45087063 321871058 902657368 283399859 512927003 288904522 885028544 927196957 721883105 228634729 662611027 8109898 462336366 273535532 236133849 136355551 883263949 585752601 721562593 94454146 552545360 883496510 370327237 702350826 720417433 632134195 174697892 560283856 4619144 510329877 34946921 393506805 340371016 639725451 518560194 328441123 204283219 855055040 856745510 332464429 417835873 79833968 490042072 411823340 312808052 622323157 595185120 552614469 351705309 244524471 139875341 364806431 93862958 820738404 479387639 625334383 348435012 481156784 710061822 368692015 216855620 383409150 790511178 787452766 555397017 299143473 675930575 192314123 872681718 967583414 523836738 449368900 960597338 526313095 647906595 222513958 5464838 449487135 6489020 253630162 44693130 661251718 16095773 312087155 311998392 731323722 648512795 731862842 492521134 99452289 382584411 675176036 652894414 524707785 503158595 712670769 799793605 262152776 656758272 129369322 422504070 684778413 701745299 795982821 758235729 726921263 445110707 197130360 476074919 352212107 473866732 20237577 882004309 607551238 208042640 628800513 250700656 122078832 375456437 621795536 144626258 378144 88384060 481097458 485721508 976818162 339610828 330529004 574677325 260087121 17045208 435984709 739826821 922642981 71494295 531246478 201181893 605984999 128831238 706839909 574810322 449248917 107527410 996998505 605267900 148220343 171269097 94168644 515864018 66149721 36080962 426631085 151192501 573364241 660545827 722798427 216044358 770056447 434323821 144945678 815509683 79815880 766191827 598558357 690775404 341669530 164827087 858831038 261129012 65594670 611794335 872217704 356421388 219973056 908385098 119412336 696686143 340275991 244509351 43317699 338653027 367906943 149401927 175712851 815684946 526663889 525603724 977143323 944658996 547894122 259220384 400979995 824374898 461347120 408690802 57661793 168967106 865189779 21509819 56200187 460833824 799875977 790726650 984984069 771088080 143372941 101021048 823775393 512888671 771975081 833583945 744847611 686829214 788102761 569979197 102182210 480922030 704369635 496828411 136934323 545401073 731109815 544193512 236389265 135093008 344893194 15946807 488587299 455728646 954239885 84980701 760981437 613721610 94198384 261583517 991768760 832852130 54740344 306977788 385788025 140388762 623717352 233441358 923357801 25377288 588715408 524890536 485526777 959537476 660831684 580452590 497279653 428031480 376429666 917086405 383605997 304792332 663919829 716312223 894226269 450420916 37306629 161264050 970789001 952468337 822328426 899209729 577198343 131837184 985616135 985288019 848559738 942515573 913604699 302581816 466629265 508284956 566186617 895613705 499266553 578828441 526762743 158823142 980892526 170341836 780870641 305676471 19683507 229139171 56504078 926575147 846452625 464822864 146168959 123587260 617030874 700786898 146222071 592768683 275871596 231639146 11886517 70061054 962314020 34931049 450777470 527345545 475707377 829547359 78633891 63967710 894721216 958905385 552643065 868041827 733940880 950540525 37882079 87136829 528875872 792317719 918705720 503344988 669379388 497758040 403771001 901420925 217043767 840145585 160352145 35398427 98067050 553335138 242584579 578830463 212696822 380922 359371728 445052090 923882248 675269197 468065164 684513447 264786897 609198198 628024652 68553186 270893194 551146971 534122413 408679895 384484214 185272358 573305045 404806835 267664098 369015884 749554546 403241584 597643293 1241482 22654396 968234956 90060416 731935335 6636656 758734676 250112626 306972072 163523029 116228692 787224665 125439848 827268792 21900773 602061226 846424065 941540721 205153256 270438365 300859156 844250845 187275782 677340534 373693075 133029217 499206317 252525823 202198958 420419565 218136089 604498440 183404515 721484537 641343300 230079536 789602294 554228094 886784253 717962772 250107122 281197576 540837073 92543586 204564271 272285090 9817623 790691019 89482053 161559781 597264627 903213321 876603163 256942826 272402248 60031454 35431131 431294045 519177676 81587220 281133562 803473513 149587189 58890623 53123639 332206533 428642305 898243577 452938898 111882158 736616954 259865697 323447386 456883949 929544369 908104101 101443618 149487823 242423743 833997748 659929289 246825513 377716609 872982156 438207598 202376795 432825377 6909231 732010880 625995338 10933904 831178402 939769780 636819300 452785541 206765820 85566727 607293091 96916096 802644057 585642684 374717823 117555404 152963028 98469982 788119299 938842742 481075870 285639874 466836667 900745048 206507241 715011847 365901247 3735059 517180136 828468109 426311083 241838860 745377766 921360643 66985894 516665720 537136425 720203613 174728545 740204107 133760772 500355797 401619983 930220359 940689872 237320945 820963695 159367666 741155571 366472574 496831176 884193440 769983955 842973584 154298345 124046696 222280418 598911619 78711332 234886443 218994335 257705209 257902429 913414286 16347273 542402529 962244340 433353477 39411753 584038766 855734494 211997637 925932050 56286238 222515341 223064784 802698978 584739251 303631873 665430510 327844407 219975226 976064702 262582192 980172221 231012104 261890260 68782188 107657766 215968696 706102234 896239430 385277996 926831920 992890860 765324579 538215312 808750237 96496307 207216565 70695968 707657838 119230045 208751218 723805866 796069733 966590621 70069151 875863565 310248834 266503091 846719295 372945444 550563605 232599396 269049378 647912160 548289967 20031490 455935718 898034482 950774574 19978081 64529638 820354579 257544374 833580511 248101197 303916419 159062451 853221730 531175435 840705936 534803162 993994841 439754455 322411338 929657127 236581050 579860529 716174286 213422812 954973957 800613474 392543035 593695882 290402109 725410938 734787517 507942912 519067121 103301458 299722374 472548190 213959480 341689994 783497937 798038023 480245169 967078797 927411422 344201638 996540803 90071684 546927352 832170290 543004504 689743727 57511540 70387174 431889770 779208456 661493417 910058052 662168183 639888858 105928187 945952541 976144580 480184119 221284562 566222974 329427743 451737652 418906274 924589260 34597857 890385076 282283239 682156453 460973540 681226335 219135008 577657593 593805203 446593443 186969818 131853305 993690582 87227578 104025253 918239265 813256490 781733027 26995996 215740472 30162059 960359976 427405027 898960714 123473533 436724440 863413921 986510762 501728271 187824138 424323080 689490423 159087065 318564322 221332695 196457486 854742263 125121606 802732493 850777125 555237394 798545895 729772980 106625448 401782871 346936635 562328159 645725273 502923387 242810754 634473897 809582905 274120125 947896777 591353456 26377622 534497509 539186141 3559334 758722562 584942398 928010070 382897463 328193372 619051425 395309205 834597150 678666183 240434538 678170051 402184289 454089135 697227139 433622988 489544711 752062150 981639511 151740782 597893664 489876750 221466077 891033641 379565772 911251398 256337041 627921216 274815786 879678589 887583357 196548806 49588836 493729287 357141295 24153236 173705389 433804670 337925563 724503885 864227903 194082123 768488382 635808595 695651420 502529556 192479844 816290264 813711952 142648272 31298902 665346520 875282029 981130431 736301516 251587857 621243145 186062432 879079302 891970826 412797323 203351680 618389959 975116820 863587675 700376630 736101471 577280072 106351341 402833119 173915812 919836807 562591928 624177432 51788404 10391927 195547203 938247126 833383222 694868619 690067732 53205321 591534809 831986422 170224063 762499052 517178575 116222655 648736990 139360646 588006170 66882473 469708820 551119906 165427520 982494790 21936394 941113621 686900049 60243184 480331381 218477562 257309919 110652615 652110603 613251510 327692299 150084273 370855568 822619508 701188729 903993950 663680207 915956141 169950808 680008521 492960923 539171606 8716642 678819761 649795277 682078648 27108304 450837405 746072903 221850591 573580653 822183902 225132019 880054559 682406018 624942351 505909188 80271699 344087784 385426571 426690997 378631071 345910014 661487999 405460422 240530289 980148906 525927896 422064131 10798460 302393947 422382929 859108735 449342141 172304389 35488359 189659987 315119481 58873382 415240036 449009056 965268537 409168071 434937179 435236498 777257685 964588661 183249182 475389276 498908519 72778052 697406037 901709622 234321748 234056663 888717409 724504164 64827976 527282766 81994614 74840880 742944057 186670941 599735693 193077994 591694177 359736121 898018659 558376688 367078722 311658140 638264194 549710754 77533614 352302547 765032762 878645101 438258359 11921319 384615845 910289341 715889849 938129520 720275617 194728979 722669910 954377996 303332313 389966061 807263357 274322402 852672441 878727893 33262433 872173024 280271485 471614304 186234239 286264188 234682146 649561128 465175450 539391412 545382002 294121935 196444866 543104271 651605503 991615229 867128646 931469979 666873631 703374694 188215239 328934637 570916851 416046276 918981157 866804516 197657698 127464411 163915406 389538278 209735967 395456370 626046070 394035812 293185696 854401374 933957530 431792464 475090982 917844344 605155585 59604973 366053560 767840418 99657200 613364987 34878504 282329542 494408450 794629583 94023695 217628888 277391632 720734008 806665928 350134225 362224702 539390109 330788994 982157235 306320123 650447069 205707819 67017609 348573944 35066729 849815672 797475684 945359924 25979188 590302447 227513185 182031344 751272901 784251090 699368095 866536381 482877977 75565622 459306568 644270699 622159810 366984433 988096659 754323222 272561110 57695141 625474999 49002535 520474101 444167862 324456180 697143876 242885953 747219803 265126809 309535591 797667692 945758855 186842098 691276232 59565994 466384379 180856928 269979887 583220669 572145472 156681794 148818596 881620710 263461545 170834180 169505279 169150710 350732873 48925462 888110682 691809092 934779652 195043571 384454746 846621101 57330561 98874396 332223211 504621975 385422126 265371678 668076098 755253488 370113865 688109962 372471003 957944112 806775756 135513850 342433401 444145748 722998404 545415696 131508008 816472549 837568511 434991735 898483265 68839405 635822740 526754528 242627419 730672130 100983143 518192136 18335066 417655367 852703582 896017839 793346926 215832156 495369768 547073438 563747338 836598391 401946942 773429419 765922793 333048390 323857635 723850156 100973839 828920334 585292572 308444806 202438603 31019922 431281338 777985827 33032110 227711265 735913558 997882485 693903510 988634769 449672017 90222455 663361447 404297281 491552974 442792488 382729294 151680532 128809156 586328215 863577407 745213564 37678826 698451410 970454386 87189871 671439807 199031543 559061298 409176937 292097417 166314021 975549192 184838258 974882139 523467144 301938889 829498646 859283978 600175699 694894223 191654769 386196285 122052029 431735233 569858074 79233110 346557962 555731466 863316794 196577159 747927942 352344159 944651139 675500746 679894403 910116346 605141286 399223004 396368217 568429922 329746658 469183561 892136813 119226211 992722689 780916831 744971813 909596174 612790351 153675317 281782007 686979013 944676129 965852590 954069340 255476774 143055956 541831793 281948631 513601826 268729938 585609967 236295409 911685611 907493899 124615519 405199420 528159231 948347887 71179968 687747412 531027486 818408702 583935455 323953371 238873432 682367937 424714311 99983739 232125443 60924740 601321811 891950821 472296630 718238240 86074149 512516306 279296857 526913392 79368609 387339274 928771094 156236252 514298744 258539858 458201701 530925713 480685862 326701182 413046782 384775751 232068072 633216360 168545255 494379066 890574534 451165938 795633005 546677042 842700692 334033928 173075746 461453436 472902118 460760219 374846949 981815537 433361439 15029923 703935449 769307628 853089381 851455782 784626536 283927124 371100585 45920045 391924810 665006489 773211810 381278409 382292602 876583599 436319445 785671701 434427708 16336663 772159366 535350835 700632092 458680787 610933446 817401935 109944302 226814580 911032940 779568280 633027022 243766291 866504476 466188620 420392483 477076041 699874108 347230123 683829143 742451774 417582076 65101566 846845468 899144096 101301332 756967835 437198322 77276073 773474822 63157208 340641951 559618066 683683481 976773404 811588072 864037925 722841181 696389324 152233702 352698798 465560937 139894623 222082807 540510724 693125793 402217804 997871802 762909444 960236713 562058775 435916064 356963865 545689844 231539530 39079517 111457578 601622203 532161399 676302569 148987826 577386490 952455479 411420300 688414641 565490814 475251244 977171793 187500710 949098199 630978564 264829069 469362342 886164313 865669998 525930459 97427782 672963368 929156390 362313758 609574050 769729835 670821613 935351433 217722978 214890259 459385997 114240902 261274293 964111956 610039002 791851994 342658893 562674996 150745773 710987142 889319532 285929915 857505254 655355094 814251992 275826870 325158517 288059231 500063200 319881919 210011462 138519803 939775576 263400244 514876760 63624400 49126305 627509569 854089899 231496779 581597597 197389522 654952266 480545823 52084926 79355300 600012358 603310920 573072120 871694901 292852923 155708941 764099275 923989194 447130825 416041206 977851452 83364984 535718044 409649117 51024347 680711702 568672102 8098519 601789884 174405444 799180386 983446862 464757375 340052330 962177491 265069290 935361608 792784056 998143487 361837221 574297544 585307432 321004091 721651125 679341364 932593527 428099040 530657953 935029579 693431857 290851157 530173494 849139281 622744739 263034110 606896775 381406485 808863205 156895824 124983793 758692849 294376410 434019526 853675030 679629756 559593514 704623841 87855335 254810340 568142659 924757802 392785813 435497555 893723489 542186296 504090013 319636097 306206590 179593376 385671617 455812712 503829096 931336 22249233 335578772 529210287 918646294 977033182 873724433 469454502 142413954 319025862 34320244 701572469 915568384 441455022 672687069 494635517 173539928 288519360 438071281 699186419 306730321 251480435 244420830 365980364 79206847 979590017 252757852 744187082 702564729 218847726 738001576 196231671 71809891 178975239 420557193 15160863 315974761 458684514 807245 163189471 822743676 216739801 995881160 654109330 812534676 530216593 152871260 621343076 841171640 146040055 867218924 250329158 296388847 284755133 881918955 573602285 702746701 151284705 801711176 595709403 121161961 762468262 350894217 493180248 377837545 683122075 342667695 772645493 89179251 694926995 149927753 764078345 257740990 547363239 778703471 289855924 729898242 255305025 746487997 152691937 385744512 120909320 558049627 589047231 996329094 111540723 954806263 8902979 973536610 924103486 156368326 444369713 39331697 879058796 148915337 205138191 294976533 220708426 103716229 620673327 782405815 580905199 287263876 478970793 707221449 291020466 981577445 474836317 346190279 552317500 293913213 709812978 248835635 260740215 834400952 842776539 443488405 935767959 105988997 547355980 172889987 754885655 396848724 567342410 85185426 124822975 571067179 329357723 887890027 635056281 428970379 893976271 409351091 890665464 332798851 848027452 772994588 145335675 723542186 225615881 526975077 384281093 641956127 34274840 90316877 12040385 406511238 512465178 637521309 982787621 387859217 450810507 448368937 993083116 493684851 750024361 952797644 446519068 798437101 876373370 986452329 795184897 595740737 290389456 923335655 623816750 486132416 692202567 916937785 992396927 407561793 647194168 613413722 220115225 745633569 683528912 554834767 603844456 177006407 583557120 876811804 390157857 565511454 416783742 621687514 579076161 795494051 406541258 876932254 474647049 733961295 681432366 510530958 678450695 542485543 962252985 995014098 390117392 248555199 203206466 393922717 925177920 926167593 223723630 744853801 411552763 867585794 488007585 328738745 692556013 256882037 606849802 747685013 963751435 265965613 782634151 406680338 192956558 726645603 663751986 824583816 1292033 18339792 177648439 911373148 79273001 147508670 302302212 204050422 887803423 760910332 663804597 817203659 497243452 317567712 597621543 127192145 291663144 419528519 765088514 175921162 51091405 732326293 939370681 987976582 671415391 943620797 664344706 656510037 66435163 433713459 101815645 800110604 912334980 542495219 628660756 57083732 183179752 478769542 424046647 385674453 129394394 34775804 465477402 384804926 445785078 79743209 120611044 845983054 231199011 574746728 165170042 94161607 548471947 92892709 155734413 215922033 386140576 331089740 361653650 980538141 9882658 826931346 619162829 556182440 445375764 751810870 983128133 846968308 443352002 613426688 958823370 184220907 677775041 781731900 587359990 792597116 791583468 17589953 671996967 524665513 637703273 696468716 137807238 781233259 896207266 14273447 628556803 556617427 340557391 69902428 106973270 533265390 4316775 173305858 101647363 629553628 152957232 907304987 394823757 941242812 475244091 74429352 216488773 816663736 832837207 222427708 348792516 499848452 864542881 116823275 701112687 277489369 51906940 630672721 575942566 650541945 658013593 439671449 931124894 419110445 260857065 615707757 698591569 720693579 618307496 758132228 68484474 209904425 88185691 962965791 19889831 11387693 54870478 412952323 850804515 458336446 418332183 987263868 913248009 925836883 203583374 628228581 613555001 688317024 457485533 896464918 492037210 600618604 768126187 433101691 357208033 682669568 730021871 738196988 142024447 858485676 740669541 61129494 859921848 709196302 940911632 415622340 944872405 797695175 781104382 204796045 372955111 496984958 477994116 946547327 762484801 892258026 228462138 267278382 894971401 342321091 545275657 386826171 454081061 506213835 188191770 276713676 882649156 15608013 103600610 584199054 722521569 478538136 746083103 295326648 525424442 148145421 632177621 810490762 833345624 647059208 555445325 40761543 574687245 786820470 271500316 186489279 493048046 440785227 82426147 493315144 946524252 456210812 154698882 640330432 520271747 298439696 796482470 967366927 535432782 478530832 930178371 959458208 464424057 898537356 889136214 572034669 460574848 704489634 667657507 892656625 267911857 344226419 923743286 755372083 610673688 103529766 401748324 995128258 477203854 576201714 864729288 541349556 49897142 279149583 149001159 571130278 364375284 699885503 416577038 274789571 720027261 845284173 219977870 122369203 616748356 995836938 29753993 603651505 43086348 743623506 537172095 254213751 342599007 687862661 765961533 286467918 5561993 856595217 910232278 46548740 328941221 552152932 802010024 731369455 172632978 512986106 383346520 959708399 762063101 650672982 915682771 724421735 763422030 876590083 614044745 703003975 390941892 180167054 955825721 86779908 863537757 782955928 434779238 593313182 486341342 992191680 8802270 643605659 314222557 417775537 834586358 52941319 167778479 206338589 340103239 68984445 340193140 93111231 283582902 826137364 385773079 415360854 41397106 809567866 671510852 699122606 41826030 209411033 715827065 105134236 479535589 463159272 998635504 722615289 38228826 520082917 616072629 342487204 313344159 847218838 757008534 591179146 624535616 924720459 284835374 935615647 106309921 686402264 965840091 510160346 222275939 507753116 800528071 698350655 832453489 391218047 635077856 81267924 322396417 55096045 705996768 482149810 182105613 955095516 621887816 992688881 991056861 859978701 589305439 777024432 79354363 398348229 422624053 930581791 397827896 529263950 52926368 129719144 183203513 661219207 330263111 417913550 937806552 62540805 579371403 940936334 604338762 180447733 706614944 270467573 422247166 316605699 668042878 531607378 686982962 286341730 128010980 892381954 800419434 577195478 727238492 923398758 404060786 657106593 172744246 31756008 247730782 900119700 545318281 208742653 317046154 608026882 120568886 486805786 811875996 649307086 978610917 656630470 910809728 762550362 385873668 110197642 132714857 200312471 617153488 135461368 964391381 844944889 814131526 296178346 528294789 236799103 468293425 319407939 732750983 240993713 993739293 949204845 528202286 339533209 466911844 54733784 433841691 388748755 581182249 203746624 465460014 448697975 552810835 269059433 527385235 582893361 294557326 146672155 441362113 139535917 193850454 461361192 607531123 208306974 643216108 254209133 332591531 340328520 350376537 738721481 511145656 167139694 393587561 347786025 851625772 993417951 182967 931682941 527177447 273093232 543355299 861197758 629261067 73497216 142459730 26061042 876267779 205146873 636230588 554789922 750251909 793135171 832011411 103179361 825593740 473850454 724316249 608035014 865776990 186829746 154046805 4055926 244824965 485954141 911493272 50225820 923864022 186204389 807779579 683909993 434599536 706129761 495615007 289828116 428125877 920797805 65959275 37649895 997785166 967527470 858073869 7729189 982755380 38963545 161875202 35645219 49574306 380926492 147413511 312617018 545738013 939097917 966118052 861840334 240205679 607138557 964028972 597570633 392251055 326309932 388831669 668103453 576598837 974323486 182118688 288670148 203295915 561212086 529408020 432361665 83766006 67182934 99629828 189816476 766912850 246959087 471524903 963093738 494132535 837650676 493790331 588693828 846842729 334968169 960963275 563070029 445821686 151481293 168858789 918443183 309744688 289189682 271693154 92412442 250618295 159005745 154582310 764827724 854064492 402579938 397361620 291551748 723479421 620476143 258597918 447975438 968257373 30352518 770355839 807681596 816744647 49723743 299973682 656943209 337592514 861124277 406877251 552077684 43558040 726099279 26962050 688536652 815099616 324044410 769154182 585734881 800305268 413431569 649921200 636075309 791694715 878221421 92247848 148640305 692194911 786533753 316951263 804152056 125347539 566959518 137854090 815889303 87504595 974964694 238493614 921372709 504378790 697598369 683602322 684636102 687946457 599376383 27323460 749473699 474390332 246726274 329963933 190008814 111363569 996703298 461865535 617740005 951464278 509547227 967999120 621799365 380003866 875731824 154559427 806833626 532474421 53915063 157966028 896106872 366935516 625975520 252214641 271440123 297729176 179902636 412207925 426210751 187777589 2874977 229740650 368884530 922020295 565479883 808662313 106357190 810044585 640319043 489876050 598630900 145485695 465212838 625558156 934286146 249879863 544659802 570681162 353328950 705320451 717429073 878899651 926980709 748093538 743707387 834510325 705635686 115732502 763730009 211406763 363523553 517325614 427222259 658724724 158822264 633398523 794703060 413062569 680466661 498677018 852343703 930446698 226963678 675848819 925340500 348887966 46686505 435206188 934732215 983995384 510273931 101802687 177142505 456602092 953406680 314318564 488215204 654113217 185260524 462989473 107146534 695766903 998765227 537124418 755315764 818255845 306602233 904598876 82018846 533891486 26990029 214480332 373448377 813969927 803921952 855259826 707838050 270734404 506860534 320465793 846064385 353790536 527831383 958633191 675803395 624042445 737123669 390446050 73947233 173939535 467116810 315064 774969749 655031063 203032220 223337973 357252265 562913847 352512049 876321130 99920424 926368135 694350590 242978617 432879660 397884071 702650426 33261760 994484561 926127870 662639148 785055665 127368637 612410047 639108378 305623291 984468510 696552929 319357528 788880861 550877867 47868193 295049027 464898781 392376355 739904780 281673783 50773699 853519052 394488048 731300259 791948198 292016498 664599012 300307702 409882594 621476975 654449612 479962031 925841179 567384735 881550927 192082507 137689916 138153065 462924761 454295385 296662397 191987897 789827240 333418598 473887061 178587654 899233721 526982416 952328588 927164754 551884756 705239547 72509740 358778657 173439628 829171661 333043853 947558014 557252919 586625593 25283655 790028803 61911542 436036346 749215296 643508431 456258736 705153746 278873764 431191429 205693464 791096974 406016745 198015829 274491044 58751485 647993545 886821621 576012692 263199481 193476937 104572323 350135283 486363238 129064373 727428133 652620174 375532846 386004128 76782026 389391871 255596355 10729706 252789609 952457636 456766622 952591541 242812510 40797352 764495939 752798314 792606096 604087292 867026236 352255426 776993393 65515605 159548315 432234170 12320241 731956 814597496 28444306 299673490 941246437 940836347 262773465 767257691 361690738 579553352 467933281 694546390 359234233 670995605 736739913 272758045 135562071 441790746 871361266 420795343 801486516 807680284 64695564 843884815 919270917 151811042 950761099 427885196 466652730 72661441 665117606 517131134 595248411 690259730 243253734 41687971 184265770 803282230 976048921 131296830 351722940 912662939 974775887 375099170 280821736 508711088 161043684 27197859 883192719 927805166 88070526 58734494 495130967 967912924 388945162 905107069 709649584 888413443 699005885 596942888 198638805 975174897 944731153 224996380 80680900 176735810 313154505 467074644 560769350 309691548 992556789 715242069 494821356 795883430 125712103 967754288 948480013 796348434 253017405 953985401 754112203 496394909 217281239 245984337 696273164 265643270 27134695 303499867 291666048 744478489 410029020 502453702 495801507 620659112 954380407 51714634 762372018 304524684 439386808 212816933 923027382 812652714 808049391 159438620 443857791 590546666 881677485 471348094 122227111 13089086 563077073 805734176 360052106 58697378 65584509 818929250 590816340 287678233 256871709 368331560 132194807 627701928 95073640 922099685 651895847 728858217 475454297 989356683 539815268 388191087 913433395 779138455 461202938 782546913 13126533 464453906 469575926 975864294 979249183 267547020 819044146 380580531 668203296 685493015 699495504 190929795 497802220 363341908 602179508 792755858 699465777 838883688 739605393 882024499 51431648 900214530 86584798 870146480 545246008 479107416 220855645 903357547 532836283 366436139 781129874 785529535 19149622 122157755 209443026 70425882 239030207 17279706 651996980 61322993 660880815 881837535 262501272 979748793 636164267 994695847 828194726 88160758 429950115 879545752 592751566 695059506 879760583 186567587 535436874 807013890 277898386 133384505 82387479 843939069 645761231 202731868 952851969 952030151 905547396 213663891 217318805 480156425 670950920 85076971 358615595 10255478 683227129 344759799 195780582 69454792 405048375 750388187 254184111 785040834 332713198 98809912 915430194 965562156 395959190 550392897 771731435 897041885 480492011 19189419 864867863 243296681 716557551 663254193 558274754 35187062 184893937 681115419 991592377 538193455 222844801 72752952 270795927 483791813 857010814 21203424 369244600 505226288 573150989 897609327 450179403 836372598 112104345 543277514 173329465 878675870 558106069 930850145 56778559 35486655 578544577 710725674 782243804 407955181 680971932 619865509 26969 720566351 877398007 2623189 153062339 944017164 472671909 565206856 403875061 340635994 129316800 9491481 256657809 671870321 916513200 208073954 685470202 160610450 618826526 935686858 220276580 245844491 794425857 421441411 45493448 396905000 349590672 471559229 416162277 580349258 970862679 576594104 938089539 534853329 749311261 844877887 503199793 614350373 380107253 85332634 725575624 991009720 848851520 303688994 176029674 535959050 299855521 697044406 715314494 940861590 120864257 911166397 894602038 308129517 146248342 340018979 983657222 99339677 946322654 390351710 757798066 773638975 9231516 11261550 338334721 144408440 665815516 930008024 426199429 149331954 358703602 76929451 906430864 27080033 734237820 213491068 208544586 733436027 801327196 554273645 414006168 438680324 967639230 173922079 852963371 165613257 12065306 353907397 122972793 985109144 334584104 508793872 789639877 602274636 307240431 251579715 280943892 712300747 200332472 86207010 261791803 865411323 555036957 332054268 116286158 133022929 761856756 3144105 759527982 276045125 293397349 594705538 34028423 693032538 403558363 782579570 700291781 182701084 209149194 537860839 530235809 314231708 724450798 899211988 188668059 146938354 537127631 804727739 388886013 711483204 265808947 784978846 950428374 112666045 102863858 192965391 658119678 505455752 439653929 641833507 38072088 355400937 25871419 920945016 6940041 72880410 441277395 239706935 622658435 96950120 762799079 750469640 111638781 737134888 86902706 53710886 768322743 977028530 428266938 586274896 692687675 477645673 635422921 972732106 845397975 644571829 851496180 309087330 691354021 171440906 287928475 727028079 134746757 428469731 919346525 2169552 984383009 987310017 894282023 595162346 274974437 224301358 914619694 773458090 392703245 506598846 658094835 830112907 570658711 634774792 852134195 777314695 694035274 443618738 174079228 7815207 807241146 17547879 282195620 841079668 367007807 761744085 723274953 899230219 726283510 375353015 938232650 417052422 438011339 299185361 911501401 275294478 425907563 375988716 779212644 906236751 530533457 650535898 873007150 452123777 909411259 55737465 398679478 723775454 587270833 114342566 767055690 290265651 207786245 41179985 822583169 643817672 272609358 338319462 348340018 48856185 219563759 821877219 971129988 562659998 328709898 132917448 518483429 36547106 746166167 245765667 807709958 545391730 165163849 153807874 760374246 724631684 681184163 185477249 328738759 634773462 43708906 137351877 434894390 31026542 12513331 925594099 134822408 44445404 383579216 445078592 327170136 890654517 365924584 538736614 106208653 767389206 180740702 248954408 63404623 276140200 32187367 288537681 962984597 689746070 113012855 493756592 248124058 284270362 669725134 719741859 743353316 460835311 104407417 570318473 318400063 280598109 224781764 582823628 552658621 313679409 221595336 358378723 122422972 168460994 459373928 342854469 111796449 901336049 507827785 702694770 128259606 153493278 843790554 173866233 529984656 249601597 305946712 186897513 905995468 223545536 535652033 640682586 174317710 263526056 21724125 562559095 156282341 69155706 150188603 555149920 614861343 832838983 674308149 945872078 193064156 742461856 905707242 808062584 640343297 906210984 447112007 18020132 23072697 42499077 989075189 556147350 293956472 112496097 344915311 498294183 493223674 352561142 141816566 816335661 253055559 260603011 914091412 39555852 479262117 834103626 129119254 834988844 565528237 857723548 874420503 168278659 110630712 151561808 414697460 536476678 551115374 237001410 616389593 645251006 658810808 202830298 12331187 558241713 790970317 311739911 580608570 907798767 509238181 774944063 941932786 806198935 783535496 729226236 638586144 445954251 786102274 459889737 480531415 223497648 267466982 342742195 469519338 918034558 406670929 302632270 96768769 55957614 391670182 874255037 469668991 617047489 181413012 750732578 118240917 801975489 644924429 531477294 857237306 258730689 891978572 575586068 548187441 924118299 809161944 440089495 973261568 580714033 500605308 17983225 536117243 231801966 349673292 347177993 599684404 618706244 830600359 301352222 555770514 375909933 211956525 541571352 750369209 234436010 363222733 392708698 49654042 101765705 87430840 937460181 61381871 733598617 648158321 518310909 577248308 521094454 535947957 829103570 859731382 199401921 545659026 34760153 624138498 377225187 994183264 28023584 888034674 238370129 114913977 1638462 707253033 862767557 485981055 771224658 80085513 263555583 530478304 633420291 931336388 994677450 896804435 978583164 5590998 263101434 582593936 165657204 658953341 957791081 719980444 753876269 229663168 579095032 611770823 320084840 150903153 316837009 832266913 955867256 440312615 663968550 324307718 198350129 338546499 254946740 904819999 640174830 101138413 131166010 319621458 152646300 739804692 113474757 16477528 801566629 459598450 103835236 939631916 333411582 772837512 839139894 859953170 463551016 211211167 390921048 378287510 178843179 817809347 422968055 489921164 349975185 532931788 537832774 60194832 644023921 169283425 199681660 139504776 206591850 333812196 921324000 539397793 360872613 314894216 227046585 754311243 971151308 912179525 723637081 378624453 701797401 116116699 735564315 725337236 974460230 369475024 576498273 724690051 937025180 281593465 964960151 536515749 101603817 522182888 722417196 761625689 732097154 639548421 656954527 963646016 754460745 981141105 512764525 264928075 395423903 30550945 375461666 961705898 471703413 612643530 363341650 336958426 410713155 650209776 969242521 48470435 472892162 292871894 96958866 331752715 72805182 220743698 686806254 727787370 319731459 296059897 73557596 727809628 585945572 323226541 517671574 576127685 270157317 944928787 822610786 439486418 799570185 956142303 78213255 82281974 712719647 192872325 578336983 228814828 119263229 279371850 142524204 793292732 710057952 922198834 222466924 710843313 155702416 196705555 189858175 746264924 435711069 599556735 437900372 278329501 900887321 832757465 276066024 642390678 389692195 240670024 775049536 101126325 455393893 68094910 868176227 480733615 56214856 439452661 582175330 714456188 221944262 906697832 636757853 996291426 462098014 946859875 911227503 876497650 863182100 939328502 986809286 464464635 496830071 286423287 876277397 898293145 260404379 894721032 559270421 40130101 171760162 882790034 206390918 800689780 744377135 529584325 32546871 600850770 133763699 14243481 859544185 627851270 509273634 472050379 429917858 885493526 228435196 445465065 795618585 345593680 863463750 99617598 117611079 382816453 403517904 398315493 519542684 8683474 32373487 873764798 248061591 118724638 707221376 182074483 781291446 421380499 400702955 443018351 56421765 746965347 875219231 666699761 916929940 351403790 961859983 430179314 793727362 973582678 259740221 891305792 555174893 199790410 641089963 113064298 772302208 126068029 891369197 533155782 743745519 417908681 133629587 229016184 728035058 234938580 732482497 397699941 420583759 55927435 880063256 970945854 472191434 950286945 683274699 376555645 267377722 168705554 22054539 186664543 774409848 823178404 816093339 551594479 61500776 464641379 519552704 725214460 655640563 879085793 917207110 314147614 23841800 573633018 684837384 546604215 400214438 462467799 366394719 986462188 94869966 905723872 534421812 565770163 443824521 609643723 22877940 443518653 509880041 180998034 178026393 16226958 398406154 382199676 27131037 196466288 560221709 551972884 346156804 681155185 424037917 254160433 73147493 101923944 240534634 828432618 127880653 247356153 610764083 977011366 305769697 284932745 462346679 257406995 70313155 724006987 935948606 608215328 26946850 854322 676887584 279986193 625278262 339890437 542103218 650615394 88717501 153543495 416994907 669123556 715603706 954609226 245124223 816298925 53115328 727783976 383355286 606035220 338113634 659370432 363443224 487419587 652655808 148551610 356886918 974944161 863423553 863171975 849792367 505931748 55657678 246672989 720750686 43211784 981501925 742708799 637994741 962468308 142404988 600846579 757727950 761766226 684981024 656454922 357311898 160525271 714083037 360722653 717685770 368727805 601932360 472654221 116763862 10630058 457542018 362649088 919396289 233078539 217707055 806678502 700860567 824024979 290997373 465221307 351748646 119945215 416286243 109335229 205759821 594498643 442866526 259494898 397471213 661937882 985295864 122228013 599234030 388970796 604964411 519065351 808414279 694992673 142104064 617651421 840232940 110896094 198946212 253187035 790308578 279662802 880036620 41551852 614170934 488712366 605813930 118351054 247020534 72331891 667584113 705014015 897073728 387705438 147865313 6304967 348969010 641884417 780766206 491916596 819565563 74583087 117343833 926334243 305243851 585565186 151690758 334802995 639440859 746138080 656231334 966113224 159601517 120903031 867279197 744172567 732569038 144987065 189382104 178347287 953984591 184287200 321163600 838707079 747401291 846488695 924991619 938279918 20024867 832337986 476314038 698934176 215429185 860845916 473524665 414429108 117865495 81915423 819822302 763864586 389300513 367353903 607339528 779854411 348269537 142099830 653109149 676126948 634080992 401118508 198307974 769280530 494271409 991106253 46107968 553333968 560345070 199514907 832010438 673671149 205307960 685096227 807356318 36976882 642800444 156128057 409066198 938274619 870767276 81787385 659080967 556087017 94913601 213312329 64359245 973367267 281342653 354475348 24322125 548600536 36701928 401877903 497811766 788158018 973682330 739783605 945682112 832405857 368546731 659414730 73341483 616537919 382247160 122826781 879619639 140711 275488115 200708160 757679159 260855351 398981899 517489167 117309185 880511819 301525944 643172271 189405168 219084558 885590144 694452620 467718637 732334191 646902378 752464220 384935015 285953575 37266828 626936600 182697043 756683191 170861054 673793544 140729135 939009124 441627872 869979060 956432385 690997824 193937251 823501044 7233110 835308325 831994288 201558242 295745864 987062706 65529352 268144611 569349237 581746254 874963372 180104355 416282366 900415530 917756390 994088214 641360023 183387712 80378630 970802042 248148597 602355790 971141482 44223824 249147986 403876830 424564850 503172712 631094139 279887167 646194568 667863509 743946680 92830345 879493920 26139888 912772706 465012892 505122227 704452707 314582360 688061986 348369603 882594580 256124417 665932429 461156313 284764478 373221448 976431887 341002123 18005846 788426662 88966061 803737200 217306919 397019671 18133037 273300013 554925753 490650917 221958434 735240296 457802082 445503704 721898208 715212247 855966908 471279820 742811789 999382324 137035182 662470431 51254540 554026558 1287012 883310963 306992144 380812485 886058576 537255930 583756049 833297814 505424179 475938921 584268367 526132110 294324234 44365052 416259024 658553485 878592294 771519871 557681768 820658817 986670107 688134714 217385646 375379542 500554436 810221320 547509761 552145678 350904393 824831556 366364555 996717734 923790353 169074647 364323643 934865192 336172241 537479724 763909832 589671851 648060296 832420155 945099444 643484484 251771001 511671171 953066313 409746968 95878705 42578187 689700244 14938193 679849091 509466716 701516398 428316449 637305739 914367891 347345274 639140800 375302316 382284107 284023325 564010613 83808153 828178857 156301448 13489542 762846527 934220127 951606964 743177286 879536858 530709663 240757089 227795475 621395188 876189227 475963159 30818123 872290390 568214084 362765092 767135321 784403220 985618879 110230181 845333681 420956042 496875758 596036471 301620170 333064543 32307889 580115268 553058858 470413436 914255212 15571579 427593306 588254742 329116177 824649556 99195885 432032682 769718546 365799632 376685179 850549245 963748720 397594551 552559783 430925337 225511857 931994008 457704219 763941972 232188642 814952911 169879947 607635784 344746907 989473913 715096495 838629597 912176888 636089726 774845002 353343805 888237984 704659344 603680296 863881180 383912133 930217257 170524955 584481910 84801303 880029061 821024507 441383441 403836376 282214317 309643947 102418937 674495951 860438387 551894805 895327423 542043206 860527726 188371501 475851075 475382297 970334464 921110506 596118441 999332513 39777103 543593299 556054619 581006534 972282445 391954798 332139791 616854521 982431409 86821969 813131710 273493804 343779836 492165138 193705906 172180961 873135991 199126486 546163828 725432602 640540977 215669447 385138904 259776106 364588800 599783703 450103290 112027876 170668426 715654399 273686592 892583464 215443763 220316610 168963668 684822876 60224301 772348076 712163884 100911148 638387311 549238287 530259973 125431762 989195962 542649410 880770913 583454729 931276693 948876971 919428108 930302489 48569170 258219187 936254237 464244175 356590089 835336392 581678061 315783298 919526042 43176812 26288418 242605072 584416684 539992092 32499627 255932387 647737008 632496740 962382263 998958563 65078497 511792855 896082887 206496137 250452026 121660941 623806362 315338962 333136008 499600297 580943168 339966790 206777944 718641493 553665038 676092661 949108228 970332101 580204957 586246513 56446126 915132338 888548565 212564698 856488251 108680927 240351455 914314968 789568346 863633684 366238767 873911191 686190215 414403878 674077060 302183119 540471553 574365679 629292256 53537466 838811856 628217678 718289042 614159140 670911684 138068785 592538667 920231514 542634870 500426888 886506376 312415281 786770502 261366353 736830416 630223108 128163420 468607112 62708333 486991039 10995112 527543613 593810963 552633805 828589538 185724287 295058878 959502884 468724109 920001641 332053940 232306244 630170861 1163293 823411326 840141876 557757205 365379269 901796340 881702529 400919770 476752276 725245490 820786494 635837922 408473030 362420378 538050830 305731987 284627867 871624921 508496918 44005403 964504412 158431203 525561602 29814643 855225438 673342709 710429196 187677275 670393339 110565011 811134448 697150300 40899219 667694474 852693236 874892232 1394835 894150636 170000359 793385653 620836203 405846041 488494878 265134596 695846037 873787825 334166393 344221021 251418774 660221089 153401183 363410737 109098486 697338400 113998779 133794230 894682697 728200105 653849348 450925551 776233767 902483454 53550650 30015139 786405171 337287217 341086692 430092641 843615512 78660750 684047630 701251459 438636680 805406649 70697550 765138218 898922300 89456531 504447173 358930493 488164856 279583815 236336406 593416043 707495304 928742731 224689779 678789934 893523899 102376536 819719053 170524871 909003882 351995513 187199398 361498429 628913274 731833075 941007236 577171550 958628566 920774751 486651510 759877062 937447790 948905881 884240719 773080020 97404476 800446657 580585840 73493680 236637766 550026825 565744063 423671115 174108306 583902177 290821547 912662618 828012340 712789381 361147942 623977314 874559559 970097277 652979 499763627 714130667 256007762 960704086 957567809 10238541 695459290 149277855 174881788 78583452 315259954 294712480 524429442 879471636 174309308 466035708 304088888 936199675 376250151 463312857 534359886 778751380 362061923 244740578 30184381 66207543 738404783 676307793 981439556 864924986 874885775 12082143 783109228 578558213 39851727 673864406 37077127 389115898 377367940 776250887 565073065 984801938 3562506 228834498 470212535 267241286 604490500 90681066 496103508 480801686 58669921 86710243 293218807 243860753 302722384 760566682 671560146 109591107 671379285 373334409 474430955 243668424 843386668 658127788 520497667 70232389 889742568 863771531 705847985 72734818 362303449 831008049 156962889 234208723 231949212 553948213 321584111 103861840 58013464 57356983 759116422 443730845 207620471 251519580 222358981 601151875 401928493 455868245 105512733 895388373 966286582 481726805 321056981 57130606 708057302 331791514 827086575 715683886 958844188 606697197 204977216 454297603 769576795 609528984 589419871 654602970 652693359 809439606 623731626 76616114 322857593 129588196 991371341 236967050 486725098 42294729 693159221 897295214 314150005 803776398 139995165 319161203 558564117 635394863 94787458 38833580 112140814 772264745 264827822 619591232 719167470 348754814 747594165 350640987 272810632 184082114 137424487 49421355 369589754 735081226 350330730 186241516 274300327 813956851 276622886 322992353 666916155 662848674 21299402 122875732 997809576 715486920 935261520 857704087 354958897 725137306 192300148 41143298 894118739 891936726 7611077 903154685 190940637 805896130 235461005 895312618 670771172 860703279 427230181 62612549 767669701 374245743 831162288 688693121 126196000 459751522 669959830 26459936 726531559 471198575 786852102 227830704 277345098 131799940 713621817 231454916 404286150 33487639 199246380 271112691 172677410 274677541 152250540 104193503 723637606 661712439 559482441 474174773 550352874 461592408 938516567 542717349 246161738 709814563 343555323 593702635 983866214 802171057 130358808 324774856 950524015 816916650 936228452 49171207 859639255 797541438 524311125 896610937 113377115 353609762 318043433 309953531 383472638 656045460 922792426 253656170 297650959 298725212 185525866 656757430 965864223 420728516 31087167 830746318 488398093 950273191 710391753 398320814 526532347 219867232 251042608 150281560 796461396 156528345 90219368 47134677 755376592 310482810 591380773 28113977 231055980 717091136 747465192 319640731 112811625 980491173 993552125 936180255 334559059 714333104 636925551 85434865 882979326 838195440 117410328 871200835 437022090 144531580 811096219 254976845 181153881 710189553 49554013 809943120 604758806 272577141 339542673 382649500 864319416 166009782 508833835 732481151 453952120 262441196 575964911 13295187 822880989 238290902 91436643 568447356 986748594 924264887 238196442 384803172 487122189 495343710 138546281 429422716 313497414 267062050 190803954 753222464 722633220 236218850 968361502 957916466 886794805 947056642 772804701 384127450 219808266 167905653 970230244 489057229 39575555 770077611 533054649 900951972 808058337 738771110 878790303 507057410 301394862 676681709 338990632 550413198 989281989 998607242 305534380 487038464 912115391 102967065 662616142 920859918 639573629 759251634 345245940 368057466 511486257 520012803 678212941 304353811 160959819 41866546 591146195 683419812 441367944 294603259 203202502 769424654 208463343 242827928 977833007 808364334 97006280 245494483 658021595 359479027 102216106 806715641 886856807 95670604 360069235 344280286 322933295 914420533 484086850 261359333 484434270 641035949 55782024 455409393 125764579 596247490 778124791 346728305 361268599 129972100 173062538 38442585 747085977 649675537 97049480 335567914 680549266 897933447 788754558 506329835 665801587 438149136 475363900 260919079 620213523 582236896 81849058 574450423 395957268 377905715 666930133 333430518 286654429 30180425 131943098 398399312 507609244 363352426 635856527 236837550 385514062 864783087 355131531 663544136 684335537 35470378 172580656 193063900 376279371 786869636 414762320 717797043 259065454 163620709 505799932 444381846 179411509 54973759 477975696 924450782 210748028 186605195 547878833 977809771 658031855 989812170 445462605 371175841 928317947 430389645 897794452 634488173 195418074 596765022 575246084 835404617 404792714 360230111 587287909 192104496 70576088 762363052 320727999 268729003 402943056 761536882 668593766 404326852 344780363 886246115 501305850 197081111 51750891 784749753 30793308 550053055 484819735 588011959 423957432 329800288 577427070 658181286 429571973 962166317 853004954 291405657 497101181 283486936 673743018 527222187 549467815 296123299 750418362 446123645 497750090 420285267 937050517 545863864 229234431 196436277 360720343 300798544 894687137 452549150 369062108 28745537 724519507 457012593 458386131 656939147 415793538 210310161 260412580 872610105 322602210 883833196 19043087 932595035 393037938 7481467 190488465 825716495 830564723 156354230 245968752 813651828 356442995 280376621 616564927 328712118 953929539 41605988 349251924 887803910 797389314 895663737 898316245 535989923 945895958 631287302 720331938 885023942 367179305 506635059 8342769 887857090 820129327 459285932 428703673 726418407 107819619 767990442 763968184 91162507 320454732 809297389 584623994 531958293 763149750 377949365 118385741 158882540 372800436 948230357 983000393 347895431 431988643 107703202 209601870 166242139 302770214 29237498 50228998 407477996 152458282 816261188 500398562 488700614 478263268 753772911 869437718 611698553 304705489 469645805 713437351 650583968 249217459 244292033 183272027 459428062 226248599 506629743 411821761 582831836 999662800 658961415 489918000 256499791 312784126 305397276 378119630 391527405 727131907 304618193 857538689 937650554 419021321 5956551 745828855 440816321 952213128 602490159 345985448 834690197 449427771 143199424 211019224 374302159 18692645 173285046 271983245 382442577 201725844 89012955 803916438 661616645 223432987 234717049 979467919 850033118 740762262 902407783 844634579 558474455 805957419 296317959 151204239 668188400 740742724 169626168 341664689 255817782 467971224 730565488 949799409 388207033 814018849 160822179 583855310 149774996 130790948 149174604 955487381 297985259 697347628 612367477 3736146 483143396 222397200 287988651 163810526 340004791 853232362 899090690 723383261 247056537 66514721 832772380 501443249 364115407 809693020 695508508 387883407 78039458 979447957 366924468 772769388 819524966 302894597 555957014 148063242 174679666 757840945 982752770 539223282 758624556 962422754 230032833 174607986 619303935 350923570 870235421 173618597 240946262 337824380 953458286 264511082 852616117 396698979 369446034 407354984 740335255 21616080 700373488 365183504 452589958 698282751 845755255 516323229 716823579 946312805 979183002 788397579 469915627 33650889 683305306 157887522 453367705 98886967 596026172 857702774 745791951 944390146 563599440 992715104 470268992 682194378 930609451 441264634 204928166 189632113 284651755 621463859 437219268 758020130 48517173 679247288 311551076 561628242 739781178 656436225 147075161 834910400 457372591 942838095 682168698 423785581 215091667 63207593 25086636 961061029 31386472 667547105 42886361 760123903 159192005 31641742 907627507 550259540 394033079 372377875 111948274 264442058 223571619 16883090 68496861 298605263 807048042 448137475 899924666 303694100 430712190 202475033 213901470 993988505 900326356 14431830 479422370 884073373 817884138 172037378 261507304 598028977 355768519 922145327 443478938 627447718 207075832 351414195 507715052 977676698 374071444 639904301 735741976 450166515 576070715 789228552 144391007 236796504 142252046 187265138 525610251 920518594 443474882 380726375 644318573 790492524 190429832 633392037 599668451 652998875 432948258 314966449 261210828 842746841 332185044 881111776 543339158 780165499 577059692 499187528 447435952 801416990 411768899 349739468 568273812 767741799 773403698 207178001 471447238 970942784 127704741 207809158 671246289 703235807 884996486 514983272 27793733 462621887 478405711 408477621 479627196 270391972 4268283 62813493 944309978 365443742 203014419 524648567 587932234 48342013 716106914 811577302 87183546 194781790 885369152 623297136 357220074 324555943 781091597 682717486 396243608 779425283 98903467 68475329 387462032 364197095 421709133 449751455 131855524 170971660 893031335 422300938 922631343 57396605 523700981 816454668 520949137 720110462 859357441 411738483 907228471 598728106 920806934 367816663 310819470 236795355 392814095 493225625 830473368 793798452 637875014 670556384 903608147 291655459 911496099 736807070 923238088 417038938 356470162 950242187 420435980 166278615 816689933 739573286 375407672 258676703 223747214 893639353 639229807 221043964 231552545 259052627 968798682 736676101 634835023 406669260 645732525 265226258 911309614 978106053 865089310 320176525 960641377 811563687 880529780 414327582 416768266 591715232 28780025 624266171 944716504 435340715 31717885 689932447 606251268 753556868 759879898 40016975 911028811 26758584 234537207 757014422 687490801 58578327 831937206 257587850 989896645 189208116 751673745 139581320 918614815 718733687 678208767 781119027 539730395 109693697 645529472 771403382 777998946 711318343 726584226 848875398 63444897 398687358 555911926 402931426 907786765 714511273 576106263 79758155 649578661 631655310 928750244 678972876 250174448 208184766 924133964 108124862 295106810 201482644 313631679 11104954 591771743 878972205 26130613 689480100 165323062 225165425 260772853 421256618 9212459 177083920 704689732 260578881 976595558 531510406 540661113 846202147 997510821 277102865 45619050 389541202 414892064 45070520 927769853 575054369 329894816 668414796 422894874 937726494 216070770 231543399 878355380 786730536 838903663 116785255 578115781 816606821 584610802 792980853 663426384 745887036 918857955 323392129 886786655 55760487 94410670 541722178 612605954 479690719 416183119 786604604 765132887 423374568 346063165 164354999 372527229 104945937 810123392 232868542 282611105 851085610 446257835 81590574 726141427 260056147 159294673 303096229 204950958 775355631 315246735 34904205 596943381 377172906 398164236 29626644 675724912 956273273 828308984 929951284 510346004 11902361 520045191 796179375 77955163 827850379 642082936 640613640 164209574 358799132 229806355 613579925 836299870 706607715 344349221 204807272 931527931 403226554 782754563 650713448 119543791 211119047 283714955 869759544 81070274 38770548 77383462 109556300 844197116 839904504 619604417 25897179 774851377 749641932 615666384 466671589 960903161 373467833 880253014 383737137 337243894 259557061 249194965 774665038 723057623 871899209 216634716 765195930 812965704 660940511 140721285 616959025 227864072 996752236 999758185 932462843 936079831 510643485 772039600 454570155 577289857 185833572 45665163 426599604 655894740 487362047 932108972 901008735 922384302 683761138 316523859 323505323 204209904 782048907 451313480 355461487 989357191 511950683 283972822 627237439 59789664 429114430 317162454 259777660 880561787 443800668 713266343 566827857 659830229 390508830 289802539 563764394 965151612 66960700 409328085 740219460 500851328 486889391 873265815 53474460 99308541 376618171 601923569 783838715 588118548 385443053 119326186 743854450 535907567 382014488 924136208 454891480 858302915 360940124 807113595 501341901 862044612 485376283 499213252 703892923 723927357 558810111 67768855 744416977 222400625 896976384 302437663 796237321 939528884 796151897 70478611 495263774 978312037 961227149 61807793 324354976 707002591 892804203 718318143 990821850 810123664 537903874 678823052 979653605 605670122 104983477 628929519 755295650 342166121 259173925 725194563 313881275 209424523 951326781 676837107 694526877 12974047 780303153 27441641 699883649 634831346 771525249 236860574 455423590 480619107 563304684 434264079 674428952 247414226 562570117 130042050 442681638 532271337 860397722 286007238 323726569 844082012 600079051 924041651 7477628 185877733 490417659 535266723 766008524 524213314 302544980 531291198 153405323 519792706 929552718 850280628 99576877 317845689 592379557 378695610 822629363 593774971 671412058 109310607 406930406 159524719 389337277 326618614 977098712 7997819 342536542 528168771 232813406 148492694 115927580 15869766 316635354 746135992 713013533 918582626 668532853 778400995 188514506 962022013 491127583 347494433 317079256 750708737 963842956 637921671 415887685 858868966 78559044 264588074 698264403 555763886 708365193 547740211 103922319 745988701 853477997 215453127 713443279 261631359 342049226 827575320 56584749 422657324 772518974 50924900 894742541 711749890 251425330 130799850 311952412 886946857 862931158 534859257 850189902 807737932 357347618 116418269 743603426 108710052 850440409 923296244 900890968 960227054 815504255 818627230 495235968 474207859 849555305 646264904 659341930 226516218 420844713 754219874 979970423 646135779 497038885 547961448 826232137 389068548 723164802 355336924 241713866 854105030 797429555 676575815 873842227 268758555 288343917 78123837 351211514 933669747 201150770 636831317 911818219 807951312 575529547 260879156 670666764 420828344 32224582 592729989 656486325 778718777 72984190 174055415 593277055 661589993 494792976 621330247 458713424 794641893 255393257 176380215 61534036 640661973 979221682 992906127 66569473 163941863 165904619 436296484 768697616 761758160 226066128 270234319 287441289 896625619 880537707 172153458 895586997 531319726 554591368 240073720 977932842 705887671 888078279 146970707 111129026 699610046 719614337 435605116 502100644 631002662 439126754 717656696 147775549 547289301 19100121 136015439 221575997 106000437 165001759 32024341 940738212 660898881 400400434 952344032 19006132 579475317 59867230 929556697 907963386 554510806 55898544 333580837 971798605 59704820 867163909 556593910 971705797 74806759 329138679 924039306 949530055 912825929 639425009 125014306 87530496 727808835 866646306 676614921 924516711 495763333 584322950 698551180 883727155 318006592 334835674 626189324 143358444 790214967 873523366 87242982 833178204 952511404 267547453 79822472 295217818 194260851 534993076 778996837 686307072 177558751 491029742 211458547 360002868 946073805 72550290 995138998 67390753 881587619 438846225 580679224 23055867 380950611 463522723 412967694 887898430 574860624 356069957 355009486 942389168 924283288 124425669 946455326 551092316 67943860 65335727 442885542 573426582 937872563 358720349 96214811 511174139 134021926 404337900 701867314 62349679 419844654 439034955 880825009 657950 475615348 643708453 827756642 343810429 151379747 458670835 640709656 434675014 368018672 831293940 622249387 123517056 884884253 962482230 922484222 172449398 735616623 865483139 858818044 714172350 458501683 954469750 841293721 281104689 975620415 399186542 272383690 684907255 405718770 661302935 698603668 339116918 954531381 370743515 645440004 325827691 247997043 480591863 55208235 309300683 294816416 787902826 538163742 210166494 533068352 56645756 196049414 291459887 258723414 545201980 939798539 803907474 589566066 190585734 54056542 599793444 789574568 816538103 520513851 250141769 642414487 727619831 941439971 385252780 463145830 940597686 789026719 753478981 709228226 258776880 801935044 436848460 283033826 618799394 469424557 649947463 735899014 998403863 699431862 335675651 982240240 947176795 646848595 756948883 513363955 954008585 494482924 634283090 121600738 378127872 619436802 537394152 531233948 219719146 430149399 517102400 179096201 277526841 695536563 410138252 217772690 572670239 281317224 454006859 546759221 200775072 685916880 619098685 284726123 544363142 405991825 439521906 136569787 964940894 157921104 37827648 375208244 131783042 789881541 643955007 800726893 96356113 733097636 276032084 313152640 563805173 34688693 761681070 972103707 251463645 963441855 745685694 958490724 103017024 40106386 777409861 466050839 962563938 960220175 657337409 212712560 425801 600723986 440458752 800802870 794297028 448552841 332424219 531797174 296093294 999040356 744854118 207312327 83526052 431300766 394603535 983812038 252667794 524988730 716447867 937587356 676647463 606101315 904100447 206930615 222958360 954083272 915100858 152936458 830267112 783250405 322559438 424784662 921753568 226127804 584694315 329384928 717969681 668546937 119687584 300028664 140138833 405685836 501057100 375373939 543076415 347049840 779822483 89782508 845400901 313333544 84455714 547326096 503948437 593867711 983911405 202278920 142839844 172766340 413120301 121079695 776887476 786884820 948318570 575854557 250797775 303393041 263023984 714279741 829468608 144741283 791999826 987225211 810343589 606290430 276806508 949956590 438114140 921253276 522709861 245540980 965346188 762573056 916391206 870648948 943014310 984892084 667774949 89600732 117397477 478085705 878646556 292858402 28076356 86133594 295514003 808337221 195007119 169816203 686417491 889006281 565569367 377751684 898170290 53026239 510937841 352620790 797752907 71313595 512772988 817817504 725780997 696525021 565271783 282215232 405159686 506951368 51722206 87292067 138250442 283308463 201588952 370684311 615046921 76083783 249804569 174207482 391210183 771078091 522751397 417618094 223843155 682862341 811890767 663913631 822721341 393910081 289647278 258718648 154513764 711329111 708574501 910599164 733236207 240150691 273891286 915036776 48359236 727319565 487423929 370923017 480194332 507930883 119129473 749166316 196676464 954100859 577252529 423470386 979366792 479499762 76152974 734232570 83880174 496750194 533016876 670796913 691119734 559313287 50215010 14350533 883322173 238011460 9817294 497540913 415378342 255284301 348618460 771825400 181656158 264566979 31007672 420438374 958399322 560484184 296720991 315198156 13550807 141279040 619599502 189614980 781774422 529461820 363484109 187924720 595303335 374004625 650890863 351721083 286171098 416091914 138020488 721087126 178693713 569921026 188663038 317749693 8938922 773890644 734650484 509536627 281964244 466909032 712057437 346617151 76200452 713104684 514442225 104788403 774729656 262603543 869740335 616001388 157892528 591643941 511302625 651101709 158942715 697306847 473979540 979537215 553461740 960600655 842232742 536906674 276573983 724713232 588148275 966589986 3480699 333648191 656746274 496675922 240497960 487789182 326889510 35897869 53184413 574835970 517862071 710507043 824918679 191160444 789527829 384119663 953594391 544952622 810422088 434506195 686162029 271562973 854952481 621839163 651195176 959053268 3404855 991186070 193675309 90170862 248097003 970001632 269159575 285818761 757875557 588816413 977488342 519119494 943651221 496315989 527957152 864275801 89658163 865217691 806633968 444192245 898915008 409474568 283634699 719619800 594857605 219121347 502516602 358580748 649085328 894572782 571351061 475178523 153763517 779047363 951843317 533442846 970781094 713325174 595439232 489081778 113113018 116237137 694147939 70597629 828297510 76911767 263036816 832059055 411333090 593768861 67182151 74809852 412855471 521520060 939315720 879979170 698305045 872358745 6152100 859364074 704120164 426971354 501058346 11024291 494817717 788913078 458986234 513295646 915025128 863307622 636858551 818361404 195330725 860398187 885401674 174595941 541749597 390664527 305888495 31379333 334903110 254993317 230446619 704409876 898404706 921548038 141716119 678447375 884744827 60276249 950514539 61353979 68271645 105683329 986374382 498018536 999371684 663643892 702428090 808525423 360255279 46530607 421620152 607376297 910180517 277800430 466209553 702867773 324138679 573951744 577212728 253316701 765702622 515655479 35021291 495727036 241232730 220235883 99100207 751004826 393524789 153256833 483575629 628803516 487794235 859394911 340085213 393471600 137849094 728677882 669001915 729625486 523887865 102710095 350697478 177667700 803145784 79332955 679743539 634701318 633043383 442692138 369743087 134327732 221508650 671736016 954198584 317806196 845345559 616249959 218413907 596305351 119566787 185914385 409454540 781172396 678253117 292822260 205274232 973248696 779348575 846629192 209677941 927651584 441982662 613381446 653083683 362489633 853164512 713567790 756405296 11762241 307813082 260398926 78127248 914716684 987274413 481673973 584873856 604575678 757491480 604180860 434623109 52870931 989743525 355719753 828740968 382030671 59200162 211011781 136079170 159799362 109887528 79967073 67223405 926463810 799569178 313980057 235155595 194617900 59620381 496878060 782839179 365028458 847483043 652076265 957159582 264271334 295201763 37534751 99714630 651486744 307074015 792170536 793111107 451812094 72557148 472537770 610999459 268083744 617504748 25261386 960303286 152592778 152631019 59346625 24366625 721596629 790211698 422456257 567076287 109665818 426998126 454345746 777927873 671758085 264448400 615406461 259602331 310094273 167050829 261376722 812921608 186651139 311898601 22038255 136630030 768310285 444147302 395763125 492472311 400453539 561576604 564856586 759074649 618010901 665934622 266348520 750349584 241085495 634798926 63406403 202546753 585691497 840197717 142593825 34248276 701971087 383467553 633829256 697944578 834027545 734917740 901174159 602271814 434271742 866941366 474343500 117964644 17472187 268730950 265711591 509420008 378710614 762580785 804453509 719975846 78424415 333961032 818787673 276929724 25677290 913551919 703367071 3858573 515219607 231184206 138755479 2147524 135085451 475415766 805220749 399341654 869330292 934688448 380896980 957247618 186223755 948998088 219665604 428616648 887292811 712812157 208341441 988257526 296569018 752448553 515259444 36250147 771586280 574344677 36988816 396590502 879801967 123977621 638210897 571267367 343517733 382886623 64263671 182856849 36291703 794284594 19124746 969359129 918304334 155541449 65793824 11215417 226461734 498913953 824110290 449604793 260152056 728260996 128227780 626068899 234830158 983097860 322915487 130832712 291879477 469373304 97427731 49052237 720489027 361452031 477529821 130282637 84779669 595404161 793647805 622703162 363940818 563761329 822447488 245954758 639350059 774620676 612028151 596467181 672848210 262453949 289566458 782647989 549304201 605546979 5343856 911009896 515092627 462580551 158606913 405813661 548239296 12956798 928619100 629104430 539875814 639177709 148775616 189112128 57248869 783366072 108309100 324742206 963550750 142439637 466796142 43535328 154970247 615505909 92143317 449355806 961369230 294648479 919535034 837700671 499659704 195234837 104126021 454994381 905260296 296951402 815614875 275436957 845592589 191551866 775266799 412280525 472269789 428061664 947476861 607058878 218201621 807387655 115312518 703806240 128533981 100777244 836550996 645728998 836467426 622703642 143741242 834182986 116547676 890154691 690539412 376186325 83195913 22801051 70184897 1018956 91397932 307101686 122916141 944802250 702074776 312471272 114352715 882891176 708455072 136341079 377460627 830737035 202456613 462976230 570662534 788141919 752984971 176311305 903256756 450913368 265147070 231513845 687007403 377433077 746821946 717587885 926921989 829172727 201210107 180517367 354503527 48423016 665980804 977680996 830459768 685997730 242005734 874813263 548899308 250964544 952619192 79727570 50439038 983557155 165952278 413972188 490014704 654257018 890282409 210798105 375296779 375496888 535534236 840676099 951647139 343973019 935019944 280026 931689615 316948261 798763274 290749607 915146164 259115683 305401995 24841785 420903165 373668008 102597749 356037926 284754264 219583765 135702174 530766546 599420868 362264328 503681896 400488039 718097987 828628466 488898745 245246414 472858844 307527300 895115002 554025158 326078115 469160892 324116009 919971276 461239985 353161695 6237372 438779691 422423338 933092729 640730305 17323503 238022712 261590618 976674498 642705140 462769935 240617636 141683414 700144600 265874149 44055483 442873755 321205252 464111100 633058118 40493366 717379496 856007333 351192124 359977049 581721790 670915115 185956829 805860151 777367557 198313453 639340198 925054096 866744323 212772427 974472043 688276648 512156170 317763502 341387323 858029136 820063540 418329482 253706611 662523357 13232480 704683867 916699830 522930220 351822390 397814688 385423350 263269799 716336679 239980773 729656419 674238265 172940651 992193212 777606009 98828118 647116543 246033087 449341946 200385794 54425521 481872273 755987705 923434688 415422221 874263002 954294469 706772896 291251821 660700497 791363068 815109174 344451567 938852779 623419011 6613408 527795583 865240493 295803523 922138246 508860362 184333342 341099891 854272024 47227210 794016471 662876432 466289417 687221057 257955755 307269725 444123286 615034035 438593921 977458852 566642058 959179120 663595841 342681213 903801136 34192663 552902366 918027458 63361119 253765633 386855507 691536280 621193844 422595162 628057760 536450412 892899417 727720210 267153617 760083440 519037304 844817631 918712568 319783717 103225032 424000836 695003441 230330953 657843659 465490825 118175897 398616301 646057859 691319739 379419231 621908961 853764480 705730999 774315189 145023556 487490264 927586329 87586771 251060349 450229544 750647115 213962493 849591602 800412568 33467517 945621373 53908572 703664088 100615848 22998434 643131444 984975642 193173389 515322828 224756802 549098783 342271154 847711578 667445328 41277229 404293225 134209462 141704563 92734224 374870728 366310740 739628805 496109600 589108915 255272620 551424428 391178814 435454161 129374018 785219668 803494091 826516623 138166430 763782963 570610105 364901158 566990679 754644162 524506748 111504539 641211907 729619657 660034837 471242419 448301634 253969745 709927687 592270333 378564550 967501230 671253090 237048530 256351546 969641857 212983484 187933266 736740188 838850984 520509491 481897320 871174126 749087060 972763247 726017475 156440763 331315447 303699354 805516504 270170259 150512461 271313774 550677229 387769935 105839707 865675306 113634308 739705301 17385070 498174865 331662578 370390286 860097817 158333938 940317774 265345259 604372537 832412966 568152953 84848230 235841777 622727049 304679318 915232644 533956270 96628992 482894492 317603407 501797415 978059772 547609153 70266839 925491283 307477618 939348738 499557686 675962235 174702817 846899501 113394318 811117606 97958733 298096078 73114639 461413422 487915588 426151873 749235427 566262188 763738595 842539680 687031883 435660806 731453118 502097368 722121349 562526950 269131012 631675802 924494298 406909763 253204319 988383197 488845218 96414294 567517701 404838239 42652468 354756774 403711414 218250410 486433523 670018301 468522168 345319183 388652358 100302707 882408408 847688101 548229028 563541087 407954285 396713550 577523589 183809385 279401558 402632369 892570986 591642746 263885561 847623484 460941280 859550413 306233410 227218476 321716856 257445847 83817129 615235199 336754380 469961310 339852077 378345723 656388991 513063281 403782740 686095156 942027576 298884960 747351850 269825664 326775726 352871629 402513482 464284927 416154777 172579222 701834445 228586139 605226171 685858285 604294493 703116804 988911839 628460864 692734757 426850225 683064535 206094163 917498590 473539298 739674746 969878307 906490821 723664033 353737393 232906239 651362465 835986108 44090979 171306621 597085374 617595599 594210688 119833975 675453687 133150006 31216644 980794640 454870693 414599707 921845491 338623931 225814192 455048814 586066773 260610851 899159176 546874088 735905085 83843914 263144227 17895691 240792261 837953397 502710780 89998874 805882127 308200746 492897311 978014763 300173124 695974213 348308243 286767891 144149915 122395869 812832245 867293040 198191688 409444440 478236765 869819313 673398419 789640802 497075575 526711550 251506114 486605042 746340588 923958870 328273962 55509054 828900856 785235321 542015013 578769360 591086166 363818986 861865235 803661682 961595723 705490940 288378462 126367290 506072745 130497993 574689404 871328129 212266944 874945584 502301670 372335084 515186806 755569113 768278045 22528619 912279084 100260403 253831851 893324589 579120851 983375992 430226978 369412273 953250270 323420329 962773278 330126011 928730447 757991052 604585280 430729561 262879912 125463731 50746930 353649626 76517373 372432758 209281193 245230049 369031390 831346164 865954653 219672141 984080750 979838743 564665870 164408397 511216979 176483468 426758283 668871252 211602617 352794575 132775842 306097951 433456468 763992350 643611182 93849778 101730665 332761733 966027799 937496409 322443960 452692174 111085374 706459305 74321811 172128407 863966365 549202557 511963598 364391229 474557738 351202810 539663816 254241256 521645289 623388300 463214441 445663883 58020322 525606121 797087007 911573722 883932458 498833929 981873373 672080731 157718491 564337717 966190883 798150225 779674645 412504054 245171703 73933519 225564163 684421411 354099689 626760109 922244825 968523733 517772556 598763656 470895568 647363955 282407427 276964047 601692458 826796456 526315760 649847981 283512627 885285224 701023876 994935834 927835962 631039985 936900338 853246936 274330780 329241029 585819389 490184817 6757306 721097137 525432039 770125107 11571456 617232840 428502910 938524981 579538399 791240811 826232093 732849243 381386702 512691000 70278814 690310728 578889046 789820449 490520169 243712370 316622589 611065940 194092906 122684431 160857685 59288404 946473498 431463708 103843576 41797089 362322809 649638246 15849867 360879367 253825030 50920059 866128564 258357020 100431575 866468277 597486123 858833084 707313276 349656369 702895526 319903691 932402713 995179225 433613288 53810293 68121680 685416796 774317501 264057903 562262611 233503543 669256948 249522868 483029 214880676 967891821 406379785 269466898 478717360 881424898 108061818 629976022 808022825 307308451 763795868 318527598 982490022 11812416 588733771 104075695 806950795 85854679 569919402 774595316 648421629 921962340 534203175 896753450 436121324 152624118 814241141 461221307 476053011 528046496 978830480 894344093 204957168 814711416 533713342 917193294 911204302 513703331 483054730 158118617 969412026 222263370 997461448 292639943 393418639 123731105 128519319 580112687 947077608 292865758 116905814 95524787 504879412 917103691 949344948 809666931 705206433 96363563 687909030 568168994 620124453 755626194 603841899 190886135 121896066 571586716 416941184 55040429 468188736 124141802 846045110 146951050 601905329 537368360 637364768 567464030 658367464 246977479 272989981 192568704 885110989 950668096 709120845 813100238 755962371 330636055 928737183 297930668 36712184 613421269 867563590 11563533 228563178 686632716 300779967 994573153 745070552 879011931 675816910 53238184 998082952 170275421 892714623 650922093 484929163 205926592 552402726 817432504 609337146 43000374 622259040 971392290 122716340 280668538 353783315 620543181 913416674 545206348 550312550 970854489 623404662 743384185 499166931 827980276 669521893 62140624 313658897 601856346 555949682 40873009 252693544 671589063 811639330 597034103 180970852 216233982 45264842 250101648 158944088 292143442 948884990 555429998 288838113 979135127 52764192 779494925 496936482 362659881 846432601 862540395 450807176 150743027 7694230 552777621 474404554 679294047 438125716 764375708 477868769 467314023 149940432 871313567 475514385 385681796 304473746 211851705 135259367 551880899 380047598 948693016 137153847 990303149 151180472 174368494 522144031 451554904 853271952 218886006 929164288 679348585 283931875 458829808 881555336 570428671 170643677 534342314 435064495 878385097 806862200 388396786 193876650 893168128 130597747 24856101 407001603 927701602 660929368 878667941 663673221 458533687 709144695 166504153 697200961 804430150 799352293 613618232 60632982 928829677 226113927 817650745 184487979 555715846 435584770 872813920 848987878 748104698 56029896 290734647 207332094 690230452 919175441 43973711 91516402 965298092 929406682 712487748 435204226 753349091 123774192 461883831 242718142 856304091 991101667 434551378 325708792 406474914 96679433 812594889 452921293 615193808 956212864 860731604 347553569 423850887 780645940 128985400 71010846 475750247 399029719 425209532 194259005 543504289 521196508 860104501 406842678 852892907 780445575 941403261 52953105 580525186 512170463 468705650 794744342 596137774 534301365 908530437 73051101 601631806 64120222 104588067 440045631 78998663 841282303 421934536 2411874 451732326 729022717 766517752 917433780 344593859 998997131 904746171 642239207 513663757 710662236 665151011 763912438 314198583 390425080 380833869 66857 318767811 479321760 24113751 471100169 886480818 172718699 819039599 227499885 732478106 611311915 328669637 767989614 282736267 83199362 381894549 328029043 897174310 173002203 984446496 275970087 553225617 508985187 810025649 321801085 505310584 902741779 110529434 581765044 957006356 703356077 314354484 919289934 16764194 231399865 764490981 540727067 133911528 368485509 230863379 785403176 455789110 2572585 608089904 599182808 286112609 966462601 931772603 298351054 136410951 85054794 487714867 993108980 701533518 968845534 539775777 754032257 372525924 428324988 994120217 826077676 313246467 541349926 793148342 442146305 760774178 523982243 81064345 203439303 561726543 784772995 241023852 482058642 764963221 821221407 451022820 5340160 231769478 169111701 330898873 688323319 696580680 22246865 344031915 779279775 579501949 874035582 830108808 23926385 214823762 137985306 340544033 787046946 470377857 818515684 37543505 704172222 233165381 770843362 754098422 209158798 278643559 871611879 381338625 545427240 326645553 833595527 11330144 357872740 170100094 350807077 440595726 312231786 94165675 182311402 400539149 550307751 433590938 138984388 348730728 713347021 94332865 132822895 85548080 41039575 125781009 630102374 183224707 247888138 631924742 932825590 936014716 318369013 79381933 776537645 63505996 245526123 553129361 922356965 346312997 892142471 195601349 74772411 921125181 400624045 860563692 928261657 178057944 943601291 802849066 7118894 905311297 726424852 282661166 765555190 578397899 378217092 947900206 169922607 421560268 241557858 807077866 724271967 446047660 324502646 91249572 71115992 512583378 115447257 990544687 152354228 349638320 427485155 771245789 656196562 395497666 400233530 667963279 54457051 770124170 707809483 73615786 260376381 734156690 551246537 580062750 383410482 282213994 802463152 780379486 587173307 845230001 130875974 721933420 431369116 793415172 383615382 595811788 203320938 132506641 245565941 979069068 42579325 29291398 30881277 654838597 3722992 178227234 687776148 283500306 692043443 127100070 358827240 530767515 994550640 495471580 396788587 979280140 120110498 140796308 471945945 973966112 154256522 508098988 187339318 457835025 1088303 390634243 784601808 525735077 769693022 170208390 271350588 131494444 684481718 378124837 388403794 83571583 386511250 667211226 612121149 38921206 645547038 583420075 471811425 319472765 525418313 937971102 374153080 457154173 455882182 926134982 617705084 560520433 503539486 692074049 470583733 986942293 898692244 178676525 461750952 616068270 431122488 409862324 48397872 336338573 80202726 774440715 876829031 679291910 758094395 973956715 197811887 12810427 305227167 683435542 555331766 364770765 674453828 700072792 672665459 216350446 791294497 575108738 283256606 614158163 845151735 647290349 485209405 556922040 364494927 229261052 864378269 451857000 546871159 995782427 369995089 722679855 393444233 70685371 324948917 464350049 511390053 63288405 796484974 188717023 576617396 508590445 243970922 866908942 625866725 292195725 171376603 18702047 216378159 608410948 25034045 396021445 614161300 487179059 915046741 341099710 84586719 580005110 147919407 786356306 544372123 590959675 902477598 153787279 17455650 845175730 709493184 926536714 823646101 464915478 700900090 810338789 822117084 601794858 41695224 28114624 850452905 628592311 525669676 346482897 565943153 447047057 409746775 505425863 968544375 530638993 190490742 407059939 865459392 806590872 23361243 652797164 868151585 906500243 463487000 374837041 335384111 680939121 351495176 184673927 722101066 835255345 245588436 178672458 180396954 417230289 816066277 809142116 505252115 39773530 638944236 304596802 7591272 801134565 247516141 773347032 235404061 305558151 399623461 115513512 795249784 57986402 1675301 831454904 279100556 599839907 875988158 143791506 758135345 6136187 752919311 424453457 196608259 24838947 202736761 455539857 358247533 131131358 589813420 626805625 966647456 82738681 768536731 553779893 766534037 974350017 597827967 306001020 198944776 911186325 917925857 726146960 988892807 180270293 660226698 829748275 980253277 695728363 567101841 999176503 984280228 733877067 26235729 881146093 857356097 11923309 681878379 532153399 517943765 693576149 535488977 378111867 578598099 515123980 636428210 82009511 734693492 716134055 41832591 186411313 859114937 743258684 460105512 89950486 38575463 287560305 497343116 149237727 268884755 934560237 101547280 873328280 990601233 722704996 907904333 629153241 607300739 502591889 384184619 992310462 662927951 291579956 649549008 210982896 745547307 65381146 588504505 406179482 705001609 694844436 308358043 377283956 945877676 733738748 246403454 174614462 369025437 870774965 638915245 378428989 204022059 393429542 31759292 137681469 588472558 746024774 29168520 424010903 928984904 169878540 63738932 872504998 923189343 816976253 941940782 905114453 733994788 865193120 472055083 535428622 120319058 747976075 779418915 766362571 340090724 498057812 688658271 864423943 768418215 356511776 115081577 927963592 752960297 872737304 530746900 666132640 716018115 862208113 19030142 599507875 637423635 385535330 502543117 502492271 338962053 419888687 804672104 875020330 882009156 591441440 285551753 373773442 108551758 638849929 592572329 334412977 27968611 784853189 783796557 608284782 764753926 494206772 624068416 212913414 272879498 548259396 981888152 712509508 555187465 825100901 395991218 811160960 966852963 291337743 10068016 876423321 149117244 739503303 531011070 461399793 731299850 638299670 718384724 629209721 840817920 203166352 936431530 363609766 99846691 781101263 180723654 857754489 923555640 568212083 359645365 348807284 268383441 438207270 92382155 841379754 572629318 533694366 930463905 894169263 514647990 288605845 839338529 35142561 963838218 266508233 980529010 189366310 289181939 869336326 36862730 450441325 255915241 868585249 626352041 45712429 228300585 984858865 603940173 777445794 826231232 131756120 555932230 594247828 768562557 495487298 11488297 66729808 527426295 721917602 745620175 995866542 966207886 199000434 656358236 673543691 913194605 510601138 262219073 77003340 586663809 718193006 677288751 415547619 80725123 660574137 516549667 637999554 23635956 857196970 830054496 680044909 199065628 170819430 884588148 676036578 598264844 873804056 805841970 623992759 911757980 489649136 710815158 524053757 479065450 835384617 156264550 526767188 318486498 57417476 106965484 199104484 3676722 431205838 601039680 585690203 762900563 950059225 677771675 4280299 122143491 637702525 551590785 698438486 539644108 339425823 678156734 142299875 454434560 460111140 957633129 916807517 928509621 610795524 93207517 368942364 580728781 362690105 111524796 656094464 153242605 313922112 92394999 624827756 316793736 120769192 717161404 506718032 540359383 682557187 558130317 348712738 494274263 165118185 973562157 292147169 86176339 289562365 948203172 417366546 676052185 521541098 187609932 678911172 62715333 615960930 349197759 642378892 278292787 608456479 409319903 54178443 351813388 604501476 634519514 565345124 193165315 543664762 817107238 392767048 726797967 902542517 180974973 428090347 640461295 841699948 757731812 164711821 773531949 739539077 200719273 475468275 752514071 267095016 416662362 641612909 48003654 909493385 547977692 749157838 300068893 933178974 821342541 431381367 572868032 979619952 662704156 888493645 687467555 507251141 557141500 596057536 939965437 695143534 967962858 375151301 150579402 517121672 248284712 396212953 514101210 484221749 699519814 584967940 311718200 123670943 467083545 666447573 749577407 752738294 271422646 336241502 713790730 270600312 237000328 131654723 616441480 17563749 631510842 647251623 318859879 397395719 566034623 571460664 904809372 679496369 343983954 351056431 897641452 90081725 796028027 256102980 653386972 372126095 566958083 232457158 179214527 10317709 62429953 792588925 698618280 770061869 887897806 523741120 345987711 480426473 776114705 217456 206745062 995848256 994708916 164123376 565807950 434033858 673613292 256804913 745014771 110109180 360161593 338572456 350224338 482585739 655337817 227271762 129122997 484356622 283543644 736204472 686865192 602212916 471543191 297200615 356093323 124024236 403948707 855374707 494819574 864961330 232119397 425078140 63300182 842705031 248132106 270405034 843625309 459423092 619553289 427307050 816275839 279837904 710968091 423648434 934871292 91810161 337598276 199705473 168225247 943882040 159559376 890967643 890775801 45108244 557499222 755787153 608882910 240435957 205412530 758406391 356362482 395292884 984689158 539463402 938046045 987914676 253946047 370368343 969170189 763435938 4418960 325388452 583869628 403104684 677799800 471107277 157485547 545351918 187573947 772950095 937316062 55310218 196542946 252716846 430726316 274349 672027332 730756091 771490345 261041797 971486078 223856841 356616946 995606350 891280243 740570169 919682167 524289101 953005647 439167089 597541603 242715590 105135364 833998879 160341553 587719952 572108500 593003897 617157406 372125061 947731519 41830204 305952821 590506374 515489297 780434353 828555460 527652223 453174880 682025892 2604004 703187167 823777161 748810605 880292729 900150563 281099565 851942888 201415975 549022923 207641915 779734908 808518495 144628323 857041126 178735387 401224792 46825854 151419307 407338805 576787221 257166773 243346510 205311180 840940125 981707688 321998812 883728997 626876865 662605830 519656102 266610960 166101657 969741440 201208654 732203361 402746627 308452556 987350450 124593782 672741097 945236403 167218693 327090426 1522941 197180408 40262068 862740 11572148 23403893 424325759 314496640 828056657 392846844 99510635 456771962 788591579 715595381 211850179 772062154 135805474 117078984 561090586 407123130 360317119 508320746 80485201 411104039 606857233 689831632 669926791 286675558 699235392 472042370 329065257 998182247 964427328 142975239 931264494 527624593 713978054 699719538 303616464 685431775 360580435 625219804 73412628 640181706 936487212 77180011 46657606 624104542 686152808 296539458 210095930 194229031 17040602 273009565 959451150 355030842 324817701 141253039 887709988 476549689 675175342 138149050 763327786 76647237 175570344 309321742 248756756 7127567 384349195 543945720 252489244 600624588 426947735 143884501 902125770 479022653 728290005 573112326 740924391 147844773 671739666 883644151 391961225 943101141 228940649 581971991 226413066 731845664 6949050 371267555 141977873 772712 869611439 229549532 494476424 987783955 243465653 61738380 406340262 387246602 849025029 87939977 515561958 266337994 822896800 616285799 75967501 227328845 446077774 425171405 485388067 437522203 114128032 631899490 969556097 355310144 783174383 530971611 276052418 173858902 163936598 696001520 628127179 108383610 392060613 174530407 36806084 309396816 341372644 504841732 67659303 320242697 760226101 534190239 169126829 494138712 281968622 572062737 344694362 483756415 713249566 466018363 836572796 794057792 17357717 891199751 440692135 597251567 674703846 598810982 677790647 500216414 432490358 334633046 249843662 68577259 759296367 52841945 926573917 124653695 224001979 523659764 987748627 74877063 225355799 374811073 630559214 615822839 76256001 184524371 851557430 873635664 357170370 799615953 988336243 783831704 398208618 132127331 321822329 662108252 321900756 621547322 740931174 596829364 899202460 476797333 649222561 214351935 826664493 277824947 955001297 19992351 221894837 787019228 741139947 187315716 541743407 636625768 295493935 145818918 799147097 564619693 821491740 525278530 882838715 258565390 420343173 728614560 842782121 948721143 729685368 616095757 239531060 580813784 524243540 596141020 537996357 934788652 992867775 981906161 859567486 965762933 941770656 511167919 280104018 269452350 440579889 283752706 933512442 332343833 511526378 863932262 176957044 563501729 701196944 190447575 764910472 314923126 933390899 102995160 538888649 225163844 871684387 460868474 923860109 592210876 790082559 288864340 232372722 982894746 151755433 523132548 93878758 261283232 230124365 351808686 272260374 339824537 716420960 434841090 759653882 633340499 433534626 687743286 324114389 96623532 979881491 120453003 482949546 815935622 945057022 45400001 60699980 7770058 657657338 381890346 606977623 789143914 223967716 883407517 190883108 629659491 904311006 433478008 933956578 292743861 336844630 836833950 308614015 439009387 875531006 583313795 598582449 701660820 856675286 186505497 491527929 685979984 408909087 497271006 570317728 787289535 255664742 623853531 969983159 212519177 631334526 949491098 79525399 668827491 759603847 874991414 913023581 957660932 271153890 537394253 247948786 810058546 937870909 71845889 319460874 385774900 390165643 21044226 407120793 814597472 452532231 242661258 71375968 513956364 153042489 698617939 2251243 755768478 373169387 460589475 483261060 956198014 832506161 466653003 917465160 834530336 778259559 268480161 473040921 434050557 595544883 724651905 642009241 870723478 711086719 947822419 324907322 633229945 426891904 777503237 636069174 843868978 973013941 785660173 739588239 296069730 449394143 170147431 344166666 675132841 180594954 285246879 191425337 242845358 477195405 780202685 873652594 626002985 693222915 726783834 515065047 100588238 156528718 15076246 596821585 363163237 649774751 329168660 826377103 108292788 273970533 674703876 206307851 391360655 695610206 123862559 227426305 603290320 387768464 120790941 947817853 698005851 479953736 957496393 377434447 937281558 389559574 580396142 434217486 927999993 658661338 772600804 558890781 477128697 22197943 387061516 94641566 148012059 715258649 818414537 677473673 44247144 504516021 497512583 28406928 409008114 325677957 459324737 563381560 737795543 342428880 673352818 932670407 380151349 500014624 245294626 836229963 109539639 923422540 979789025 641291424 111356944 756062318 316759744 452490084 297289211 932195565 430115938 10117889 620623672 341390448 625466347 686369703 432120853 879334384 207374858 104371020 554458592 914140840 857838836 317198514 832007669 739502365 521574249 820475491 275503287 890339352 374180270 941150123 239829137 74488753 883349651 858495910 411246320 331304513 291115628 689844274 405023574 719825262 493950489 860851448 208191041 825982756 761683455 54628456 934582330 352189595 662509836 520579261 369875668 209004361 383778744 59918578 896417197 869573109 529957632 515406291 907234658 848224170 305084778 115270896 833214625 799890623 169314310 43786657 520566555 151859662 805990248 783003141 349584522 265969340 421477040 560079876 927118256 336627127 197452931 230877776 494325591 403794991 392331792 417862497 957287763 723685860 662199821 629878902 299447165 436941272 590013369 120626329 544781494 894590297 185987033 877618585 161174506 620921083 605820346 235656462 656661261 353999257 444418100 369921882 270934550 140232025 488789161 813523618 157650952 861047461 358765049 509299675 219615212 453245232 167901588 594578875 119116248 296750333 582531186 119425982 61423077 9465675 541546001 307403059 924514610 937660836 846982517 473291814 380973807 905191651 125503023 744639091 133620038 118515743 997471058 206580917 496833659 414152126 346380928 432766296 591112648 713362031 715054303 903505290 73124476 666225185 926091289 618283591 13322984 190366483 29381479 723936589 737590118 109555399 598634632 922568226 636899161 862956813 504109763 281537817 44901417 635409145 979237347 440329291 399758922 209989091 489144129 903034005 775938102 364723827 239300281 683899041 127164784 154824596 172108211 365085153 487232898 294139259 429526557 766567305 212598014 483111075 297908076 998778780 212526719 52989648 520428963 497449445 936657317 13952019 874480193 554328302 188629532 694546360 161365336 663601431 980822679 931793250 394048127 158662009 366293965 456315378 438886355 810008831 407077762 459894934 3696379 866592089 870869891 922511810 460111395 459300352 609904287 455860785 384431365 894227250 221298097 951305704 676153306 323522813 468577947 152970546 858129007 835598891 793136456 633380775 266076942 902606679 427087019 164919070 829226893 76105184 108767675 722728129 294216780 488276721 793218684 226330614 813325616 881301111 698142458 241270134 440693929 151269418 628295751 543517757 381602987 687949966 924836730 289409162 868214708 32759785 251523256 492612337 375634383 628409674 580492332 795109696 747831173 864659853 526808327 292854680 212041453 707166284 914441857 342062424 431523495 295226615 913485536 880561715 564397784 256197048 293576812 31935255 888913455 821661322 576578681 742876994 507810531 35873837 529624671 367266107 666567088 924564265 871543424 944086474 457021150 544824526 117281609 463715592 81123131 283016759 360892458 792066381 994607389 756607294 167658144 435754558 176541537 322604432 158426923 700346826 195164272 260580767 838518357 277442341 25928503 998367134 587995057 584552902 694265387 626273425 696142552 421020791 169441866 4386623 434869871 322480706 851309087 745000759 959851294 369407866 631040691 839017940 758591128 554006718 429245596 987347253 215538329 525950960 894630141 621538625 495923679 9498432 885105273 608799913 170198327 741391389 833136191 978105831 586906738 520645702 54598915 370454585 385735533 710087358 100603399 280534696 713715462 232343765 196757007 333214980 487485997 695395610 321625704 718468839 544090319 788019308 203503596 396701871 879481065 792812273 502612473 959124613 920106875 837787920 332121456 110840152 997241745 416517762 409615812 787463653 677595452 874692419 998620141 856773029 229898392 480373908 789112674 183614439 678039240 653781509 627398449 500479158 878950130 673707622 246995683 83666927 818362700 73099480 706049935 448624684 794939921 843424189 719405781 343925725 645978751 648366014 969824218 784546860 796375523 672789204 108414030 558786069 499036814 71439676 645559653 631696214 697715934 183041654 885756126 593093497 250594864 797913168 724252673 839226061 124294130 843249630 9205403 608693610 46975125 18552447 752073729 30913584 422476432 887761109 45166098 521348042 795439469 977466825 721957429 254931876 589519535 468767636 206412374 285121786 626638058 796789936 787196910 93126092 974629562 715239652 304532733 286867936 399391171 842710584 673518339 63809478 961345449 232546308 479998994 263865306 842384675 789084130 757913538 888409401 298047211 966751417 56220207 308109003 893519555 421263280 590589183 16138307 372302451 146880320 977347680 668557591 845671630 255925795 598465034 851914118 859630256 388466783 747163195 247111066 323894269 39738942 375678134 439668774 728733849 722352471 108545485 589815743 713096059 573539714 686377300 259627973 774696861 462104041 450487725 970120544 216643841 665435637 703107257 72993922 16795054 836701273 493347051 827847909 241476282 14456338 833786932 504328965 203833663 282898278 186309912 60751149 355568479 147497185 795612057 961208938 751611712 594158677 233074247 981503384 313262620 149158369 283748664 698935894 551243047 930258662 345425674 34187786 465720486 870929170 917248485 832074473 584308963 810030941 78774900 331756776 955258670 37508349 627171056 395837129 230676198 631838329 908605463 725763856 755101288 610461343 479642157 718587666 643908642 545114495 488913923 592279526 92427653 52950904 731645932 965354347 775833099 43365937 11913930 488148298 895371829 686685073 219145472 260889076 796088976 161688269 970175358 260400545 483402412 458570084 506553021 741258575 159497253 588237339 898456500 980234696 411986845 962298872 915921648 991242399 5588413 386277207 619684220 748675880 198324791 563819726 177489393 652815236 503213767 365110855 340018537 152379295 298560045 942684137 369294477 842208290 85789494 638807851 980114570 516987788 712554931 930119113 624157721 958280986 888486268 607906502 312225909 428338646 193408889 693375345 604024933 510123409 703815310 156063835 205022009 4215775 321551536 842923105 793413061 689100579 768161755 419109800 198075753 297802116 482618637 323140254 517860618 822740471 381703509 958881012 648528919 149484334 700417216 491882153 783778694 670123693 928914285 756880639 389593812 831125945 792680060 264991620 872716554 342112870 941112601 181250827 253627316 644579979 172353906 250545328 88586219 398139591 944224711 356280024 504340297 649851267 147198807 721781296 554172151 445857774 737123179 147647146 226254498 794020610 108845654 121533062 119482243 607898240 307114102 875599685 759920981 261740528 997671721 347792052 910377312 744317857 165627355 837600231 107846003 779694506 433753854 461122106 758129888 816066285 206128906 223306836 836466571 474671123 808642951 750236447 70600916 230398602 935712248 681165518 464511664 481937293 877075191 734620128 180126352 661474075 648454934 133305366 382848631 187097850 141238271 73110401 742441447 916821950 459863382 372863345 859859182 220685246 687563217 12432259 573322535 645062681 567945769 908411036 285011114 954873785 836711969 377740264 390594852 814416460 778078592 221721566 430615742 948512589 173340447 801541431 781908784 793889529 49196497 834609652 834460857 790922074 297344380 633241707 742416157 375497538 249988619 545664550 944729260 602091847 369636460 31645959 643594556 379271369 246970782 791530032 991498540 663825651 782998947 179197713 724478051 544631729 218954368 738810459 147718476 196873919 746637134 520428808 592442335 402866842 61934882 893438304 157506202 246456207 872194594 885614063 469500804 417321640 355917943 50489992 545426219 467043012 923955537 362400584 894543269 439745918 741053932 179716498 731676558 842876481 373354636 551885077 867870995 428634427 795361147 445113539 587375323 417748070 522504710 114436055 860673311 652201090 605733263 250622168 237938332 60587542 651504752 978048656 937359772 623968375 680419611 595875607 109671145 300866743 848260863 491806404 810520796 827920566 572417940 816614208 415305299 616210978 27333472 865873524 13702578 284144489 590833386 580606358 132430312 643751107 970738120 462890019 602941807 426222383 802711952 763931356 897384256 745460084 950552809 733898449 615660516 753140518 238109816 856952915 190016105 715681692 269364725 757975551 832195941 461518068 445441812 348870075 178006517 203925786 973248668 420407730 255698114 753591997 245718356 394962265 899195640 707415122 472212242 358527594 293736271 519592222 977670061 550351340 275710211 473249319 991062536 800965418 46534365 194847547 736105231 317415610 544597033 886273015 617880755 246901620 240734653 120593079 688867564 34792835 440861433 592135590 304213185 784474443 338013891 390999989 200684854 902421638 529061512 907528601 168961636 879211823 99955520 912340178 293718112 214767243 174774375 795976365 423043153 393365027 423998724 103209268 840126301 601117391 485807785 409858631 952252857 928573353 174535270 98876542 356344221 660881684 682572764 444438599 865123917 972214209 366945845 655476432 156252432 166694305 780923160 75617041 867599934 477350129 251088833 409776843 995033647 959031093 743491565 243043206 799314499 110831159 904906462 851495826 919955940 841595663 549899368 675687691 875731334 505652505 731554785 23289546 57611686 510807285 929328930 990168445 228249536 764176276 804585366 572968593 517257573 932311848 873561386 603259711 951777059 587831855 686555987 407161737 918976914 385517675 468760081 969631543 718294619 710706665 655673065 14188246 790998306 916027900 558218218 915839170 719696543 349517379 168925867 903302681 996667271 371431329 137988937 7274948 899901854 123202370 716235624 555911029 93742257 401823131 807822138 548621474 563996558 439048552 653958262 30059914 299542288 883702445 700858199 213532729 540771613 879046581 653744549 482481021 421460890 124517399 575128492 890256878 619415935 87731116 413223236 502107886 155775425 112810394 512989900 630122915 446654052 324649294 277799466 813695486 561370485 75367291 218478541 103961016 658778114 792498974 334442921 477781331 341851430 242685050 965832765 844130578 528791302 359334431 363423119 785880073 685076428 402961372 988564015 281336081 8904359 689828305 271243824 885534150 73311957 783706464 472554037 823778709 850867860 172202550 731509342 337125036 156291632 430227785 667171679 398776581 496011518 290404305 744340333 985993565 13554263 409556055 409555267 960823870 764273818 666345893 549385514 297196281 66159669 384050638 678833136 58384039 367068824 196375859 200595437 721804068 776489278 889979249 414825467 529571869 999662763 780411002 212115075 775301631 694478182 609774977 933576819 953138437 751358724 778335233 510271552 47531564 308672796 412569791 301142763 79258175 179447380 65121990 640972022 155241166 244510551 58479726 50968949 860156208 939752401 235025998 637968633 12444039 810485123 252987985 441830563 450918328 636402986 967357082 194906903 220010102 914650516 689942182 679245702 836673081 901153937 922187308 458361508 566929984 980875260 287329845 816551347 570967445 352835256 360147974 105513330 330002439 266888625 215885882 250848569 722067758 908882131 37012906 993896404 909672813 30462495 616708731 829141163 869269735 142240403 638289176 889862301 154908304 610319163 731806521 907478811 732918562 482548777 588934870 650556186 940527640 437305717 440153396 400404507 211469502 979881029 550739426 833707809 934316837 356974531 887913394 647659965 617510691 282331679 94798272 516733698 400884566 780441491 854711411 737784466 367559213 228166499 729949810 172037009 517421776 610845912 468406199 467499439 179649087 577828423 115031163 584858654 761770551 228724230 295858754 82281635 286044735 431826811 967021786 552112255 498153639 83831820 178129750 121436545 394173322 525586993 419927317 659205889 122137543 826024545 468823223 893014235 239097860 943738908 762026792 323399799 959470519 994826480 603467938 955404739 739909648 666616687 818829724 159343669 359583511 637825070 691255773 777056202 960087697 583951577 853901166 699037708 883159823 450266384 564384680 984828167 575679718 329866637 608614436 4765774 934183226 802628356 535783366 668896772 659362547 952155452 972513725 564321229 290190271 740652030 741358200 598279128 485474585 527170077 45700795 985985499 165023039 927130224 860696195 662674452 156814904 163566812 340112417 986783307 465678040 764814668 528656166 891583691 840529335 711979696 249342320 529588077 108631091 759232003 457190946 906012815 723990900 767938888 728455851 415469076 963842924 928728713 116076989 423618159 907559890 270577364 862447189 10884498 390354217 615770955 320969911 657350142 884201908 351071244 930924399 367910330 758718088 949136193 460507217 386533200 990667900 567663645 999610745 412322012 28732719 995586011 774492236 473273592 102937099 590932155 622146678 88591821 64270654 703575816 997551855 174455301 379193538 382758934 361855724 558734811 632812375 680066878 177429751 459580425 782191492 65568995 295193561 926201049 829071004 507643247 957319590 835158809 230356919 95916627 135128254 915259164 139325104 935572745 257578691 70559682 578023220 975136789 511859617 339819891 293249973 385667072 645689994 637566748 35801702 286223455 867481854 817483570 136702027 808331977 337612738 276625077 674689067 577087459 992165343 34852394 717435796 557382738 657222571 704216735 446281188 894955470 632586176 892474541 497871671 916213776 593244676 367533935 685044597 522890200 347797157 838473613 343923022 292823538 183089941 501358642 198415166 393230384 88457999 976189467 966892162 434522220 18322331 391192193 652478500 661415307 135010818 115767338 963987442 708174961 706258139 239136358 797067655 858103573 301872382 733371917 140496193 629876593 941977746 864407162 401951561 761924740 951612934 992012948 550501518 343460700 680761098 312283082 943606221 818177035 712368028 883525906 318229631 639328424 169244929 892930029 714708467 933035098 839230144 878201690 31516213 549875271 746190775 176683247 931015454 105830053 497943801 960315839 567633742 832828840 946103534 176594279 604173104 792230553 274401861 273906959 489768946 216631489 549354733 432141411 658362508 870065263 761900325 856027293 931281088 274202111 718822512 533435769 44615188 610984147 865988254 39778877 399842010 83283543 840827071 32493752 236964651 834323194 352456241 410172993 267958243 757318970 956963735 329646259 648244655 562016918 505834463 849400697 882068987 726315162 466102588 605523069 477469186 495528409 19016235 854224182 842825159 206236397 18957423 656930214 730574605 789409652 629439510 911937358 797034084 800353054 760299125 742322752 852918315 378309786 197313828 754854419 3963259 592059555 372673291 235825888 259172670 852337917 370423637 532483154 222933801 689773935 846500983 15637655 928761006 460648652 388515629 962164577 198722064 747703280 300880250 298400498 679961430 163378366 322431402 363192083 895810388 70798111 909509461 799835147 434543262 356102147 434435157 571039668 895698070 763527781 937600973 462369902 175552612 836589642 308074280 712378396 73049595 543201210 939068191 734262065 553386252 643353544 522275499 925412765 445484575 912984976 790242320 941318113 131093369 672107824 921703900 84894724 925583912 234353367 583175652 798437524 355711753 565486003 160260160 590471592 146539961 463763200 25899609 132305884 633780639 483001088 801363417 710303065 650721006 461362686 9592755 236726987 188307872 697601359 706472742 286782568 334179954 979778630 31316149 267206385 937991660 664080202 24382762 952510120 167017313 279067847 675242142 249382496 976558566 849482282 645651818 960712813 369176925 635194611 584260915 226296747 135801198 125294496 373208036 375457924 212214923 981044413 654923957 130261989 326245096 292437979 972090654 516396100 261744009 821342870 962924005 363475102 231181108 767457167 602781718 132595580 14185852 959439728 590136838 872315882 284214200 8185324 819697745 305295488 736508422 417984702 924927192 453331546 262043730 723583654 446840270 481836576 623136584 379241587 726010531 799762176 410224997 769269744 744145682 698187697 323084772 271883005 614427168 281068398 503267795 888262266 111143197 114465024 139519743 998367570 484877976 64805815 89446654 477742966 549541746 474109029 242238004 652488931 998058444 250958443 829034697 116234392 262134802 625828524 938843565 931730336 842648573 106894493 352305047 189888015 871740802 248659244 723811846 268652543 228968938 194097630 368267844 350155919 721033921 916584374 226354789 404467949 260783832 712296515 439323707 632059209 75983696 583348891 599602281 347688414 333599884 118493275 953618775 881860593 5831477 311491242 297283636 357533894 328570691 715289912 199026170 742457526 155549934 74052410 143876714 93821462 860935105 688129134 178992909 880567373 48146305 318305821 215215150 382340286 923071302 285848591 323336171 680807397 461129836 427254176 952080158 306278453 95503254 743782059 779417207 408302896 168054196 426924696 707629409 116658279 971453172 460924759 997823253 920321125 191089625 688006233 96962453 920617929 247912483 429298593 706813095 513360944 214737372 96389299 802267868 361561418 105260639 286329245 885102735 161277897 514511173 95940598 193350362 189061216 883776368 289095132 510922924 886292187 701772303 433210102 794260402 198346495 131849108 74440563 114790244 779132317 474087615 40891654 356501507 342632337 180078480 89847794 396291478 964832447 911180375 996414457 338804976 937076495 397760676 58616682 679263911 296433012 91877977 998160924 315249691 331953897 355776149 418473583 161047159 529058668 631491270 147183175 915009958 715287822 643900832 983566353 421665126 675468509 394384928 734223302 754369588 181168628 582154892 20251620 296231515 303166581 455391084 49755248 700599527 766526090 871035543 375608312 683116724 607609705 460622376 739460244 561686369 1413703 32158086 580610785 103733844 595234150 789710938 231984389 874133952 712960278 110167449 406340016 260769183 41595556 780608640 563445526 887076013 394487662 589336466 905394678 925334387 27072468 64374687 464538775 783347524 342818368 885670583 375942087 753578807 40252965 347288374 515837916 233978152 28564220 925081796 278445492 952286407 518082890 567208778 189827508 472598655 784928153 804462590 671162574 463285899 726066039 624713821 70994294 763827177 383827586 213154087 244778664 942924128 834657114 694618988 732624623 955933316 469340333 985553280 503843158 258883756 160527914 384334849 519459957 703173111 428258701 115202255 331842406 73705551 438772630 679624214 873638103 190923362 381740817 988657488 801425390 45727403 618740688 537165365 888125798 302721640 994800046 746128328 877918844 214675106 662897035 113571161 671194105 944848683 164197459 278560121 458895654 104391574 507349497 49191687 293157085 629353034 549951093 981860389 126097019 113302891 115685066 697821505 826622694 556586475 4114435 272898575 934980494 967003776 731064371 689625736 658879847 120406189 561313651 6404085 466676720 10894264 795161827 649652704 309809200 335659954 54971826 726865181 686660023 906016887 179746318 647617736 267804567 612090529 127913013 906603848 295844718 871789722 608317286 974142279 276275305 719301527 524768494 543433401 269744174 163539593 90447644 42953177 301455352 877640500 38637646 804781614 220726661 314495267 870559716 712965509 621352474 409225377 501107528 839163631 26833287 46165450 711660270 664947657 505797408 729439612 94341966 284344504 133233861 910343776 584607212 211932328 614651866 429446119 940528720 772057550 702200399 88197446 610547472 577325222 902934938 656762499 206993605 287879924 318398395 261527395 53838607 908057797 517539892 92391541 752447384 213152107 334646552 954728978 914494741 88987268 346884090 508967259 165285952 819826421 131129593 194489144 67212505 172761064 260709309 10465626 202757804 384132051 923634801 4829499 665961613 301203824 51188428 259051285 22764883 214135495 21120784 524464886 351130335 431113251 152957694 695681962 888736545 325393684 518002408 7128014 617234180 491012988 214019236 684889793 136119691 124818044 522067087 941409702 430186670 386653570 520519310 958250101 632582785 190659906 377437971 968279776 923345424 571837110 376771601 293869420 944717945 539212327 308510214 884403295 653322203 614757917 380616955 492204742 648546913 523914859 301352316 594424192 804578623 429120305 947660705 822303784 179146157 806359506 571058180 805561897 713217007 428156410 830434003 395905970 858005070 872020639 737053365 226502332 715148828 313332474 367197668 133125127 314450614 970398611 889147677 86791706 519106172 755515699 991838375 255270983 639028184 727692271 230933327 222320551 789104190 48629795 702000492 11944983 666629926 844921717 125707741 963096897 930724629 186378190 748079878 949756309 180926098 831368296 131753432 271978829 560083763 128050363 229410505 250811750 510544014 102787466 45662420 540158634 769121096 6303204 866295426 609231533 245285386 431300124 957164769 510745792 600682121 966029008 350677128 555909385 687431803 370229730 436577426 326712173 996237989 992199552 193398187 235125916 914046929 422294300 936124154 334214928 838472656 714747511 742332732 429641739 322098303 474117263 168278955 713577104 341304509 668177589 749381391 504717941 450265461 153112441 252822708 431785295 104412314 20008890 739732341 121566590 453064231 121649566 368651947 104291117 318928668 976917391 981371710 44765510 467721350 416260926 334491295 401031818 412131959 79386799 89212865 917704306 901927175 628649760 837009443 325909067 531321689 148221471 933172940 230829091 973093015 709310592 905572169 40792530 264400117 792654690 847176883 525809657 83686059 133633316 463949474 179798784 320932092 760150648 161593924 350494231 957102901 3080527 780792644 449852982 98763172 752323044 261831383 287411488 548033703 944826813 247634109 31593563 500229532 742696615 954231355 22039605 869036530 572594615 13652255 154511562 420470806 3756613 503252158 891981048 661332104 64438520 878489853 173252456 722346695 350217406 682663226 154748301 508031068 620212681 63447912 560261273 423503836 360976533 42590973 452337810 9630689 788639462 460825076 22081853 264508426 127623885 442384856 915505452 749184517 106139543 918459571 60212919 710727298 970510564 640374302 413034237 250004031 363053976 377740342 303098086 637326073 298458336 711551136 462097444 806051452 729072433 204535182 45869616 611837852 6687043 215915699 932331849 316818226 919168799 440036943 649248117 523413281 498662669 451878951 272732038 479827792 243768485 683115144 695147030 369352887 380880832 904941900 906474628 825382989 757587335 424214222 263299065 842240530 211523937 336273144 178108003 571008021 569012228 495422004 964005754 361347429 157074542 494876282 275283395 47440157 133360864 183138888 518230400 738496350 72853995 667771812 805585863 610356308 2306911 593006878 256264045 247697714 945220443 784650444 524305 476914994 903671614 160866122 747949854 990148245 267561660 776803007 913927876 204592036 778749124 845171163 901669627 685767604 531487381 378876115 429801600 186887711 153048240 526209122 70790113 332747076 208298980 997406932 385398379 445317522 370863686 254417143 768644406 884010616 849059374 513761051 837918754 787640177 279905605 279657509 597724888 267933952 194920820 376953975 914388426 498143151 373630450 877661952 11887918 655724814 785142329 501505080 26276868 193998523 916899085 734321439 317176598 629409621 986355068 677392436 403727858 321682825 425170392 715125901 315279348 55538951 974458561 967206077 70151992 674414472 336704025 984751072 593852329 41046483 570193931 295886495 270529524 208783024 757812746 596319785 59993751 812525040 755549145 579491122 872188620 361303918 709685365 990790395 11546528 158689292 960412975 374555207 947226848 319042230 76157080 472660068 156272166 323715933 510691726 817142316 924911570 589995000 25974327 222052605 915212301 942678415 767682811 709984697 610592709 626511146 227309968 456249297 402741685 220429019 613955572 968774715 939706200 611567802 23078251 634244727 551647231 9648108 39704447 963307911 999623090 198220701 34548484 257133820 407848015 879721466 100284187 618088942 786358384 522042689 324768291 290466808 852744837 317546164 825398984 534490179 590944184 631819164 976147204 546595960 741126404 148913229 681505551 243446228 223747626 177721119 715042413 327298066 875838129 176075126 226916074 665767032 909160681 12944058 718220702 326933717 72064235 820309344 586149344 260841598 725966741 875520483 366056539 732789076 466618258 68822976 697028595 14355643 797063248 29577863 768114915 250488483 591790858 224361161 615060899 53431935 459333057 438564637 20374522 606046286 700536888 348573478 122057715 361814938 675821314 105694866 468081890 861694574 44545147 990355473 167903332 700884578 422341564 680803932 505000287 958124434 117755314 565324087 585237754 996649382 255553551 550299243 253572015 121001675 418896967 585654474 179945013 571763896 797649050 859913010 371447445 436828077 199982357 769024897 379903768 325177708 651974275 251186083 776003413 219707977 566308222 671763081 460538148 929936916 158476136 856906030 138189231 319561008 238593384 605931413 915239518 141469569 493025136 323841479 219084262 649552757 895538485 211833560 833779525 23540997 125387064 569087968 268043452 975717546 93050308 334213379 673903323 545537649 960377830 471109739 378070899 540006114 381241977 653194568 179180706 94229017 436057882 960433368 628320717 319611054 374979378 287614810 808804510 703830221 791286 48489757 565577227 411224352 246494296 329860461 294370639 212764639 889663517 777543078 736234736 87008200 960265416 489453615 754719161 416409381 431937966 777821034 425275836 218803389 674200039 940952274 968807771 237977834 200797006 838675419 86048311 855703180 362208146 221141258 45777467 396000264 162083105 504712424 118670491 485472842 428300849 352414986 840009942 510454218 28381122 473735942 491677616 62654345 104320672 892023169 452414514 243146761 916143195 711576357 615930548 172930136 134200905 609677219 648813520 640696592 195522697 325221046 272685421 797412172 181910279 276466467 310016946 996432821 515788911 6890414 687283736 548111735 962523965 94625326 848121946 103084872 74434223 677046911 155359100 796967016 605879759 547037564 106780874 514728348 87155820 330363926 54823128 166531124 9126430 518367804 732075138 120478468 488897863 287162859 633338351 671255404 786151951 690877475 148786569 796013649 986167651 984238060 391602946 363435299 86592510 262634845 456541275 908400340 225888097 40273039 668175573 560282345 453456593 57804448 908174847 629910115 244765283 748379841 508262057 892504784 987814379 27285793 810225651 49844554 115063819 719615992 359278143 876058988 392739627 92782218 820679739 554678367 886265979 803434019 632195545 768635343 325860594 109636885 629717336 536414962 171786324 742570423 178841658 263148424 347933225 372721519 998233678 88557782 441053884 447320484 81236644 420944045 7723051 70700747 862724252 562273375 33508689 591965020 270443227 712429516 663033051 861136604 735604296 626199133 315450422 10891987 609896221 351819258 205137052 536351699 703387091 64521249 399438863 453811832 283737645 747625674 305769554 526149218 490137659 358504829 131607034 674153278 202214222 601150027 587140447 492082111 911489284 596400327 209790877 972508826 258637890 603258127 773078945 538211220 489488949 38318795 772960024 853780091 443777868 429514280 781583740 573217307 788542536 46693598 91644685 966319442 968157996 893580074 681667027 245490689 880862276 437786324 940315294 21769234 543434533 97882152 509331975 701640314 420346793 500562173 253945709 375151152 669591289 384401840 594436603 988948279 316318331 965225514 678955420 653071771 251733225 183839958 43821070 944271467 235650362 420263343 146544078 959152324 595761591 58839340 570820903 241947848 41314536 650081627 792065318 36748961 361545382 394469574 406921381 197413247 850247434 81783683 292100930 895208606 255637369 168461874 444737128 954433602 723937183 587766520 334872135 313402035 675498609 977775237 997371606 229655364 709894440 595575564 790418135 139320655 229759566 685929809 614325454 446699831 865693869 886373778 108695571 400225636 10844245 619066020 406874550 114353484 167168936 385404123 754626459 843536998 629189190 821359381 477617002 300744500 63577119 357702072 944026004 297216068 535219812 15988148 401528402 476810020 845540501 282311036 900039842 888581491 301791090 823573011 217657165 101588943 24519691 933087226 888347618 405758179 332115633 338653253 513923004 75027041 759196672 465665923 927175417 494249476 775227360 446174424 694486914 183444624 48169085 905233641 944642568 925517519 822668102 709191907 156410115 563937422 70781437 977158015 825468850 102154159 322088354 130550263 829410079 407489806 644118404 941818131 844182297 732254105 946839609 244590627 465542967 109602111 743468696 827578365 529725916 447708156 212200649 134219773 801770286 984895189 259492663 905242890 59701281 339966673 625166229 671850131 591487336 602088961 830948320 392119183 331575943 405249667 962317664 469501818 129652933 612870006 927983517 26832221 863670320 747998727 257052013 814951106 614935206 256150629 752476139 955259588 578271427 939825358 198115707 105091841 916273390 730034304 978025164 954693786 617027164 944334027 420415951 90432836 97896960 369154556 825546434 364299313 911356318 754677359 121582891 839376158 494558911 221967750 797098705 216275799 384417199 774983852 326474957 652382885 107465866 979306069 243133562 303683678 491419694 174041846 119508602 95880805 351008580 652786711 820871102 246951965 962773308 977621310 758177399 289967989 489271119 19237119 759910688 538509283 647888253 412240373 29467521 750196069 290204046 85477824 131358627 849603456 496728083 583969293 413072090 536309828 151736163 851905421 741346500 216887113 502853790 848773881 197090888 177634474 949662892 591642133 467944588 692320785 801713472 924501673 627399179 370770342 217073619 328972682 12508026 261990692 36240543 637607826 735928546 886147787 264007091 426734754 618999950 507700826 229941720 169180325 8960021 790031910 857373103 363511436 250497870 402083845 821270675 203730258 545996128 158744145 842295211 967368442 404452792 999413491 925273835 427978127 287640843 46127705 986613257 976638494 586662992 785539192 566145926 373387209 560251857 58231249 928906154 732328620 199866904 850503782 301282180 921020149 385014011 491706569 905888753 552965589 198654610 296213775 948213386 3851908 560851526 603253207 252247741 937230665 403944385 927356743 229125817 720911978 204162038 759623179 505075317 547113788 817911332 666823259 565884081 703900438 712613581 409082103 326587383 250731102 533128382 268723235 893598613 12677502 927253005 93620909 57971366 814784996 374611221 178194155 489434376 915241232 116729721 236368318 720035428 154558336 232516388 507868042 377065771 138891710 431002958 732816700 776960405 93636449 816244082 85099343 730728096 83763710 253404245 404785853 468013846 229711930 342014720 169806350 407229578 253151935 813112780 943822414 665563728 492551486 785605458 68163094 425413259 723197810 352235382 567765637 238982432 490923550 161101412 824129086 918023875 251037196 986264980 490507377 352559593 89424142 382569150 29397461 840297941 457126142 333076202 779377573 919797644 77202110 999026529 259647146 473964259 630867769 529825465 861089330 766963567 415948384 125169612 930109204 399062929 884117039 822255297 222674093 242002801 825834407 709725699 645941218 783012348 872424915 153850695 960867364 952118258 361219781 191520392 837407336 806413516 432022679 223770379 589033516 155237846 288061034 223497308 729131638 439546657 940403050 617857361 751190230 660392066 583640523 347310338 379195489 578307226 894156229 321096153 22561461 615494613 850253464 419231356 239612153 619392860 35223955 640598757 349279449 565455406 642010371 257802572 312248718 309107722 643633990 77683000 33941204 787866742 804122558 936162421 316815349 619883458 5529047 619554836 300233404 209976842 11847678 247951734 24206975 642175530 552810161 414286653 825699102 895228621 125651312 907071059 708763135 429417315 502452168 96169712 609372431 87290656 792895563 398285711 880530884 256670221 188074385 388958707 432037918 352754152 262423869 714475049 673212322 431609675 652739835 184445831 39268449 457597062 893567353 727578535 146523117 595178686 310488951 822411117 458104934 463124186 727856819 447997958 516779893 473341578 146164985 941455846 525966661 492178761 205176090 589896140 781425547 608442194 683152883 722818488 573575817 423449265 94041954 650187771 254766594 769151541 357294934 956395556 620657734 488674934 90422460 711329299 891935021 653987543 572144789 871571176 335075088 371349116 654685917 948519957 19539419 338232665 974943649 678471754 797132280 625604899 444338162 820688006 212675938 597751388 645808877 165402381 563192978 929879885 563214513 133393513 299164048 243746053 766632298 219753583 309581036 526388828 801365578 234783035 279230139 368207603 585695371 299335219 961860507 886783538 541207150 701433601 104465330 282161226 509958721 236396189 345205680 716682034 701230931 557075519 968899017 183805355 309739263 345471084 955445437 346709565 135536553 869775347 717178576 411648056 745313206 645804260 423438546 425675959 502868639 471618977 592079642 560397204 273207770 804616136 293988999 650757244 138785771 66817355 924212091 333134816 91743579 695427928 931542758 816420342 815102909 186077041 760551232 424369599 683146922 463020120 414883720 211307011 16637639 103951641 138511936 314761297 919523516 38329864 821230202 636665348 759219773 559080898 358384331 306136890 361568513 891897386 890253904 219613661 285533646 307018607 837331890 919838874 437365101 560525059 26456606 705426927 96568239 803121824 370750027 648375575 890025071 350145360 923000178 600426269 952419471 298963037 474914913 705832910 299015419 492251737 783150178 119909063 473362338 227621921 891905100 622763108 285082752 322581978 289873789 692639441 780355738 947959793 430281949 665058554 738089206 874237976 661966806 509031837 278340521 412934734 82693474 596277299 533417162 330951126 339776767 590936587 216075135 149622332 475508659 130817328 286788336 787254869 690998539 929875839 44879696 305794362 69764125 811301266 521001690 809475412 259222664 706995673 391676622 916624207 257133941 894677375 854687864 733582619 294824590 943637884 991398442 506460406 179382541 346512788 817668158 492410983 967358124 434003788 567107609 797709113 19658421 304701175 297130783 686247037 827322611 561335978 231857096 697582482 196424383 843587911 176685195 327429405 525715446 274755446 319296236 128658440 85752319 649244839 974913140 348646539 57277126 197306898 482510774 513919773 668401606 802661306 923734860 173374341 523790073 147487589 421230809 490368465 891327975 360798625 795427335 690847058 615637148 9197770 29581191 231080359 90952880 14853119 585451541 538464688 355037763 434934311 956969841 136226974 3267321 725670132 42013032 484146917 1806593 80593375 741826762 121411902 32925201 531301157 770460786 905814961 856435814 19735249 148038210 943274117 852920265 40681905 48755238 688419156 697963655 168232031 282004750 504157175 759967860 291678778 909690358 491391891 987670513 263484525 812530911 589085074 913537764 548084454 589062101 345079980 329031611 638657885 80583143 402508765 917334634 978919506 528817201 155122022 895513461 61273617 910404310 517546454 201486044 540323748 793015294 248406786 639342896 222520808 810843359 610505475 454775942 432773244 29286065 367508798 794003841 383732935 19186614 829093731 963198528 658764028 427799609 237312098 755963253 603712273 468689802 627150201 216874838 288681926 3238663 678326571 107189923 879504293 112783632 647067717 447562142 531321852 595438609 87372509 831530266 802935271 24914809 39533389 126173547 168223553 525557444 730991929 800352623 597323191 746159220 431745678 598931851 619118518 504048406 787092098 41267376 806175608 961806393 620422289 323079506 170541564 698409335 487676283 526684275 759494157 980289908 420678225 17223316 618064184 39349465 607578469 47765191 729410265 812127067 620558674 469533599 230779146 787826865 552991742 174570046 364527546 192349596 162544024 903136584 461450132 35782378 138237329 953731052 136600852 658988654 532288420 464712414 474874744 767670271 916288214 284551523 499506635 27196033 441532534 237319225 6127578 918853339 852544790 469096113 45792574 86440196 862892436 109359524 763175000 667747572 252916242 763226221 473465682 54218156 815889148 921446901 269367576 149512248 663051786 229565864 106573926 551880877 789314869 881777277 751940795 220511006 654026176 944410098 231469916 615812277 310766907 647661837 492138081 555267223 872673400 886324063 64614298 332166390 768365715 357823481 180709293 197783057 614072306 85815934 233868031 350742308 952424255 258723859 899792576 707703680 428872304 348954724 122177002 377808243 690557888 177622187 529044031 962242392 140991158 493517987 115802948 26083985 824618267 117929874 940249930 666095241 462660613 678125899 911422570 10226609 3594446 704831775 729196931 633624197 301292061 313016046 313226046 461031046 680682718 435812896 831846669 683953471 689953603 403864224 664060965 113130818 970312139 242552296 437952648 150343976 104729657 949860338 413168127 943054486 668086936 148693065 574504728 255443253 367452734 102488825 667194414 159690165 33080519 689267604 155627615 630935763 608755479 760449600 661195413 758250064 931028569 226100383 12374654 62710263 983112963 605231326 180969365 905901723 525665232 925621430 471859734 904524562 803980998 169843813 499871758 385757509 734685233 538199984 282353741 974400280 169401762 153091301 275417447 566922624 578912507 249238493 328496831 812318072 930302298 255920370 17021310 860594947 745898032 921892877 351118227 73745446 59806766 128800156 138143414 686712827 617382482 329146260 142928233 821850516 843396322 229087862 236090355 137440538 867414631 64228934 37797220 847534260 12740278 663955859 562762389 918783381 115730411 470689394 316404005 290854134 111364973 183947653 43049597 180512541 299442917 931295981 997393101 19571280 762742087 344798042 614372367 173655523 728241618 768820996 49901313 869688112 232278793 728788137 624545323 612079768 748247993 830301326 387788513 206370441 203301364 914545538 88036918 566846066 259011097 221186011 388322830 147580367 622806987 354331767 631194639 827986209 433031412 254588861 27182252 863624945 365893324 583319195 817703450 341573844 683464399 840160644 844615004 958071394 513851836 445867900 679172920 475635776 522502311 216892678 360753984 944331543 860690910 22739761 441256140 43347096 161504258 605954194 325408251 556131454 943869173 75040331 297660086 862396299 635727584 272135421 117828015 45636234 572856127 761128408 891600219 798814028 540064710 246948245 940313852 143293870 895414654 98495857 80786331 492367505 624168883 69752367 75626758 539707101 709927158 731925281 72395479 367138949 750887464 92181788 676451183 258085767 63845738 341348222 851270386 340410591 302281514 937222959 94420055 929106332 76784412 730954137 5524048 115772369 666341691 999345590 139513441 691682195 141389003 349063429 177413072 55709705 892579162 748756104 491585711 382008923 601945531 722631632 731166423 556626108 806514955 46398452 293856485 339922278 15660975 367878290 794216770 91501981 769961041 18340558 265837347 218660519 347861734 487063641 835380089 9725146 800821164 401121385 339303435 980689041 759826981 18044601 720410203 995423016 408898078 987500690 714590399 475253266 795756716 541214658 306932554 196040635 756881194 597567903 106729696 986763934 817736767 968773639 11477033 915582017 339433171 169388129 403177107 795616811 103747357 732701851 596859223 676389102 133874072 816608298 650615927 95361829 534481418 606379790 74796987 797822066 679067262 861703373 887825329 503106688 39647304 411048307 556808371 610615299 735281415 163304601 866850273 160805808 677957018 810453085 294191136 627878735 599918898 321697890 311130918 586342567 666781248 977212637 486720106 193784456 234103171 712158077 363850792 957506514 164793597 759732867 994533999 493378660 653180157 719324598 998678535 861780521 472511250 849671525 274300303 531387923 218494238 75857253 224257125 803400474 43101763 559461906 726582190 235481924 419948524 867835223 349033824 468351131 504958160 424939422 123183921 661875757 700582378 419198687 729493921 882992408 145651581 991832472 622860534 675992447 458308631 848243155 568228419 106003336 546269576 810479638 191249505 189034091 992951285 566592638 119508716 664116573 497300153 377473960 119841107 533878946 924828549 668542905 203197886 937700999 228156236 649343328 230350381 549195355 330602828 745423059 451299674 741042041 97615880 528668368 57578451 131159107 466967116 836645277 290403554 822247203 804572204 402650633 784609191 50974093 251686916 431143018 632084987 763146488 297732474 406905246 359883657 4214762 535598714 699059725 266368705 765582573 951367223 392412835 527821788 351003534 401010733 150924246 676017114 549812591 168560416 849838246 492982148 806151980 409878559 141283737 470185064 344947572 48351611 998459836 635767265 945331700 382763986 306463654 761624588 240565869 44124936 509049974 239250133 526432154 164644682 667087570 620054249 154461259 877847053 831729126 512760512 25402956 736537353 697146986 181061023 169268095 310558532 784028574 63540361 717475521 575218702 257721927 10454352 437809918 332670455 75835825 231298447 85476903 944481245 822248116 195873698 508091960 415409124 506560174 527351732 870366259 138937977 767563910 34042034 126191392 163677004 607059371 661936986 843418386 168880737 133531921 720963878 123944487 814078711 52486711 125644130 249771900 961433241 676682787 304562718 781958720 852989982 746903652 191506739 905661602 432710820 622801424 983469373 239048412 67287690 892342982 10590888 746647603 912393347 31268781 11105442 289182190 861890685 827099758 294240295 333705315 777992375 936845382 664276213 634471912 544819381 440704239 141339794 255194083 54366273 237174704 400035664 697295291 811237492 906939481 118491979 116575716 959632038 874293823 820407644 199549144 140822911 485118270 643948081 977222172 780000745 989219010 612676920 343116085 705694742 278950581 240031145 872307384 39622279 657258637 222526854 15211329 946096895 242473033 782333077 152242287 383230343 11425134 92099944 677961199 92966773 534842895 57901142 828418673 538700903 317647293 52439168 627440302 789100862 442940057 460321999 848753261 791140139 410252360 935595249 908492149 204113566 132360441 997113441 947939481 755956309 338504291 195577180 1363122 577291861 356253376 341279212 352974756 696637158 858076637 757775586 346904923 802925987 743562756 865514198 958394052 793509987 358811405 603924265 255403740 706020940 562915667 990589185 612753831 91924683 97976510 198101070 301591853 232403090 58823102 216318155 712581248 896762528 142353480 682062070 357486269 265980214 403517661 644754712 974641667 866255589 46798204 308697666 440574591 271830397 828397755 997720396 163636065 743201564 445236906 808159189 899894242 291983655 693629420 935835463 75209803 449538375 657591974 5701585 573130463 950838899 367862660 700468586 115092722 794250727 670243520 172432085 26863072 565926439 76402966 88858776 184668170 765481471 661738188 875465222 572452315 783849861 366511280 10658871 628643524 139538705 3395866 775535367 223033411 894357066 303334632 406308385 740873940 25732894 700781182 348562422 381751559 683453120 445817549 329268414 293026922 38445739 488339017 750800249 668603034 579602339 259067377 158069999 873124411 963987638 837158476 790589102 478069233 280882743 129664616 550765076 916865907 946806979 291598042 756560700 471289979 292851774 545576642 323401232 13024713 898152661 204591303 634163522 446643752 857023481 59944468 636151110 565540205 42061162 36081504 737867616 855209326 685540396 432582124 122197656 609618705 253567880 268454013 832649405 738488638 351253014 129504864 560450406 959094761 454714544 735525997 498855670 19227915 708553084 464633855 47582612 122626980 666012901 285169662 788357680 707583683 610450078 99701213 846759812 735713911 352850599 864702091 872569103 91163355 271361601 235592073 756195863 782185235 662374137 570416607 990210222 407034948 243746210 980414745 262623406 386530470 677840732 825353292 238385844 976519282 85641 160556826 442617645 585400553 462830547 288173737 207573317 628696916 551749938 390332068 623615477 753852426 281746144 924823109 735965950 22541664 482217058 342538053 586998248 455648443 974735237 297735920 224496389 660474244 827067741 468457744 373281898 526086191 853613379 689275647 358956792 521697076 693733857 698135705 131708762 855595542 438585374 830979394 96981756 148505696 240904240 531792109 614078235 708268197 902785687 622976270 32307637 393223037 51457296 441295266 90562192 581926029 392568236 820895283 623172671 215747963 242902464 910328011 377720603 155570431 576297191 480260353 652806721 239807948 467929605 139384565 472225947 573952941 623595076 853926989 305208282 773694564 713644060 946428726 616244087 270433993 703226952 522282344 111453102 583230386 200591563 242175776 701594764 136791302 213978098 409050148 454706911 463521450 594238291 154336451 133875007 859967382 246769350 398806738 198247181 177767102 194535796 202111667 832935793 744249899 952409289 301553225 881532509 790367713 165255028 955014657 217284485 23530740 322265206 985891282 330385773 628202625 540485138 946972734 381498460 660675752 496794324 256554311 490855267 282932629 882848913 38776702 666160984 263849590 978436964 92633334 813062622 367905418 633329331 654267473 316559964 398238225 627241000 364869555 991052547 893522260 6170808 673799114 537227208 979902376 530759584 291534 159544176 96386665 668819815 536360828 823916673 645828595 998380243 783984155 432814155 205266613 192923132 642421112 471457766 708232734 105139517 837331947 150296882 116533164 931551804 310277713 58979802 443464672 789034724 592860430 792459852 903887171 202877034 333674774 699477184 469412199 571935817 908241115 99007542 316329958 844994886 918366044 646990714 995778919 16026221 53642015 639870999 549278862 49776146 244217650 559981416 715309840 295286994 855601711 922694541 607940265 90321555 737815342 580005998 536430103 224685948 423084762 392367290 745084457 464284935 284795489 433892076 354398893 778361580 349568631 556755522 497893758 104332338 707171931 486200775 204274563 167090725 723779796 259082569 614108576 504950103 853071150 403654751 953629130 883793061 688935491 758015338 379741693 314441269 932671855 674643095 754440503 155601011 305224601 342257359 618735239 475068688 166000172 406597839 690849274 284438028 517761572 476530708 905718702 604252843 913322234 497272296 913273030 832265849 673210296 583911518 66773611 183388742 716536298 256266059 32440525 624349493 136914600 392462158 330030633 6367140 714879887 402882770 645622720 725883461 330215366 383702279 104250588 199530758 759687417 954731747 272079313 133893675 848595553 822870569 281849593 588737841 318486972 60039776 632725939 743798761 3732558 51349976 952202093 500205410 282639848 2422954 426822296 690859776 88049630 777279925 420794798 349225313 996531729 600141731 699818033 51216243 434247651 666914274 491831213 604570475 533028166 174011309 730098353 990150596 616260015 63477507 390989785 173809731 237080349 979741610 629069513 987678452 925065492 902167606 631498024 415284013 756775332 996230399 233750955 589381767 810126436 312234784 816737034 288730601 473488240 777564040 982507274 516015743 7696499 953345508 613785459 695076538 309071253 24378796 879219992 886205275 914561166 909435168 970683091 103773282 792498079 243336266 982771846 793701918 879902859 278338554 283378716 112564770 143978402 580632263 385550982 940528204 651154107 552423441 327482048 685049279 897097267 873818371 21795021 423411684 59959280 685382536 327272116 436965750 120380002 549237599 676721033 223317869 549521277 169367299 416386149 763879437 418412993 56878270 139060588 97469410 136273202 83359651 572192968 222837445 57106017 177373828 826305965 772235981 146829155 200392966 595486033 768047966 394113751 384358545 574889462 101368873 738006752 518558546 485436396 71860767 491160624 799102278 859026048 841467514 493911805 132041003 383962385 878439876 413410306 665099142 515353596 299437254 573057419 818467758 506971566 404498322 756986464 495694007 645742488 870125706 995981531 834038401 600620854 97236812 417843672 630852786 953503499 992858568 189609409 102037443 989886364 539685170 148418942 541353443 139475075 277476615 878381452 17372695 174030163 162514440 993053927 888339749 570505906 747347269 772792339 12691615 982028619 235843854 962723870 582236637 345132239 861163011 55334307 158157565 766743286 995930119 200618941 164942315 591151751 712891207 554331409 301064021 560871495 804504372 925924046 453247922 165082636 165965710 674060204 790185031 423060399 442141529 395292392 40659990 263384595 515480543 607118155 591764212 445867040 84150710 289863198 497934966 222460364 474527163 754253883 122213120 745564430 53809678 461807359 455535798 799705323 828925729 336238416 854818444 732519528 556405922 983071902 613527864 675141535 269406869 548120031 709741627 987281059 652826166 782782095 59718365 132391579 967539991 230165940 5675820 309225135 530664459 681642719 421262598 875436306 645473324 931616037 183937798 175531007 9427424 402020388 251629462 742854326 674768343 502458114 882402280 30955140 567466492 62562159 323642096 308238777 705234581 493039262 187805813 117030065 91437856 346167891 859935222 812165324 55310699 421758413 618674637 87312247 218591370 567873759 423646731 169684257 364010460 99925726 894401426 983326792 172315648 681370536 840222476 496048749 405479913 379545252 528642537 469093143 192674756 476052929 570116447 260415708 398014995 11775600 824443249 38160981 606618263 857831094 676618214 535219493 80725340 703427095 455993166 786767095 787568568 565553313 980659202 21039224 601019721 561468393 71237922 933645929 847222510 922273294 539917205 321572489 357794774 860496054 150390541 207125155 267631225 612234768 865976066 371469192 106486668 749155796 534553522 376793107 916956440 925800508 518541611 267818022 965285736 840394003 104217652 855973806 262501394 676907682 501283182 512593304 956862193 642303683 137565751 900568290 804423974 108933077 408063923 103285646 226770467 758493114 573348823 734888871 109914776 115292386 342214233 752985660 896818051 66913095 808731066 180908650 923138856 175711586 790469699 762384465 434244115 397780284 229056256 654247966 156739608 421158756 6922960 947239169 106016597 999449070 192435535 447458870 664795437 370317691 234804710 223683583 456332619 59108908 795114693 862854306 164610725 338751670 80620517 646571385 156710518 833857866 366466564 814182360 296372035 106702504 117524910 452017700 752442329 32592665 643527216 241597127 411685451 781283174 118937766 745683250 747298550 134158826 848419564 759693025 151090558 938565504 560867501 872109652 173678030 459945105 126290007 105450521 575410973 286832648 363143204 390536639 841472229 90405982 447133972 490423521 161434090 312537233 65352689 172401696 229954876 960441124 608468550 717126696 220684587 688604459 22074736 349246124 147027028 9756982 295146894 691860837 650756764 832543849 498653321 98670869 43224624 173606757 282501903 212010119 72388739 467198813 957403032 607738253 66892625 260865282 894345577 173430783 442850721 136544153 626726789 248240835 568063675 475596257 348180926 20850882 8685367 736343342 807841199 166077423 710191598 783949394 495393204 251263041 239143175 515531952 512921593 708285 327544044 239270698 462247786 138792556 862785877 553912113 354005186 252716898 844947514 96361913 245981569 843848632 98717408 93696576 41130222 895482512 855419606 949514702 792016156 969599764 884340974 334597619 280044002 315175289 483567684 977427392 37733343 657165812 741872447 870465753 212638589 410061772 444838023 853216862 682050025 61409354 627241491 407113733 662188575 239731137 117752351 687056636 379240927 929942665 837776943 656331529 720664750 815459332 133937679 731723116 820659935 438769566 290056402 487157238 18876554 542475211 826299864 876567551 865326223 692629250 276568002 546971488 8145813 699601095 897316220 401998725 173988111 846403747 141219134 688664665 758534192 741179177 702375296 886551891 509405440 572330739 33554440 324291699 971103040 628125091 193113827 786479930 677220742 871559907 646010212 362574781 363314727 114612582 404422952 409461645 365676098 33122279 548434706 45064394 376338626 136627753 808471633 702596380 401166167 172129778 761753940 561252015 31983993 241648662 226261726 543141178 986408295 503987571 659580654 473021690 905747753 16967657 728867285 733477304 152022417 338094431 739879202 381629891 377562423 5258954 599348404 62348522 60253562 439570212 748711854 893476245 275587972 4306035 974088064 844554659 152746308 182326458 489071321 352231300 810947187 257297 598717112 363520305 663612305 428567694 53783907 650893605 657889509 601549143 914573666 45198697 646005121 843700627 307595404 571141257 244750909 969991798 884099325 633901722 185662647 236712764 750837784 233797695 261175899 82481701 97016716 911616923 971606870 406926715 442170955 656772954 770556322 723875985 419661713 884601784 263224830 7976640 45632995 148905328 913839348 652152429 662686732 159036104 974691284 280463873 366718499 749072527 231259062 209860844 100129411 959741723 11473016 596529835 72167631 378745160 372660165 517828543 158758133 623793027 169809932 95057077 281421862 306328755 158816135 557913882 780725731 118192977 195192626 270819980 399954670 609542746 146474971 513092013 185495635 953045592 641581839 484222756 296749159 387825751 308483620 398056104 126131652 300959979 852540734 985586162 855004752 34439477 956736069 237502402 264374329 277138906 654274537 824309988 672983280 245481993 413854879 471218475 463121461 962114681 702696363 220035182 752156934 543138406 648716820 996786068 594509495 777611417 681286059 796258691 399685078 811397724 152423431 13861935 613124419 605226123 725490568 718704531 521919776 350078593 344605785 398059182 284318171 48061730 54948710 307073678 612870950 871315425 520853357 995576132 737500417 23510450 882890216 971093228 432873133 528793619 883678754 366875812 352760758 712168457 603305517 911183258 754038003 627519780 301157343 878806526 171779452 865185916 73600984 256567306 376842683 902220205 455807105 179048197 70247000 962338269 36750603 287240242 22158153 376679099 217105516 562410473 503698632 851334011 690803817 791671425 115749469 401124831 861932165 573516636 614754770 806861610 306579219 187343337 992648250 834435887 996534827 280620692 160847604 861936446 120787626 429777373 207042211 230722360 506596159 450963265 674736179 648649350 900183378 906344013 436805593 290515730 181128738 520680850 591037455 311316564 717835182 167552431 288375963 320405581 830306749 644437567 887881098 309142141 252225756 404330224 827976753 514252023 440182634 437972084 862436393 73307472 446745219 766585735 168641110 134562727 71155983 981026790 527928808 577845664 495261376 653609313 947537747 773814125 557411598 462417606 236718929 875693760 950393401 992040180 441806822 357327833 868187720 221843912 393451361 875300992 927084557 445173553 449980243 397981440 945844766 207446045 241196953 834314546 121897951 225546632 375657816 638045556 802029684 799529332 738589693 638738347 127636435 277721580 287687738 437445191 305192364 704025603 346075407 207280955 545378951 173591762 512252604 17511177 818563241 803733627 65873361 426163635 158050592 673023784 191221280 620384202 97747656 956219916 858392004 77621607 912527169 494006370 765320741 487578402 60175344 316122731 378321645 623511335 364070153 638346355 92760848 318428193 273090177 599769033 891399114 614006343 609027354 974976456 759063968 293569111 871383901 560085206 584963934 481253014 334256281 532893017 614094107 85829590 507050470 538404039 122488622 634699371 845988133 91659924 459926335 986211634 776104447 175790923 255062329 525114003 591759586 730604910 848461393 248537466 827168777 343649428 133027843 938497634 123019888 729361496 696942352 67875908 696454887 543160664 87687307 942181803 22130420 838846531 616126146 459357088 347137017 939645127 772072532 904872639 463152143 758530721 319729447 169840673 280894242 595063442 656455010 136265326 249825249 782739812 931223166 859807447 296469189 31605994 996198966 673965071 702238991 181596416 875394956 959775573 38845890 525668997 634634193 885969775 909182135 925626981 528366999 277354413 955185022 532752529 497342391 816941283 627644541 597691140 224348249 474814065 813613018 699466946 341491176 549929276 808978053 352893139 526110232 993190579 91591990 663463752 194493671 54745549 513966447 372117568 167671190 443925508 96155252 69476569 837407157 42037349 785710684 685448767 499975190 655082616 618742523 41988771 923467733 367447385 756311281 83302977 647630169 601711776 346307239 728071258 465875785 223498616 135562060 625954872 374773663 834842510 550019547 849295409 4705939 40518169 591196691 230404248 252856749 97295061 698716540 864214231 792404661 471931147 130976358 500589138 575518914 477807237 129095402 948438910 621060401 654598815 616406503 634491607 728174245 282369331 771739655 811132378 604683272 798957479 529348280 29747736 456243603 484448236 13759797 595349023 581319100 289356662 854614397 727356043 55440462 221316167 716101463 987907322 747370323 828171744 604391765 369673500 980146717 341532242 384961998 844165538 829210184 453925684 380089827 943073605 113557180 455192739 553645180 665157061 126064802 873604164 558245707 244439792 345021553 949914696 543888324 433413015 240856291 968988260 406594090 448547988 224395772 36429529 764883591 642710473 849282570 644114791 731108777 529617184 29956768 409380961 488480807 369385871 546409373 343469467 349311332 586594827 712055841 43345781 918368902 521176214 791788442 413160917 85819263 865156416 60578493 718709543 360943111 807841558 737193093 340868965 79847581 878275382 505582905 582633227 208088459 806289343 365574496 761504798 283868640 541859549 782043861 995604271 456471668 624753602 113770412 769957971 270631145 326819241 846635346 726912038 474995876 687254739 655490926 893398228 555230168 903686024 413396724 980624646 768574591 902420768 585071909 112287988 425024852 531730161 749274752 488013148 831943906 628018014 484475858 751116420 778443901 176402642 546853682 350546236 678287158 838288574 436730618 802205659 270099699 742967966 345321680 732245307 616097113 540029684 231176862 190474690 87281880 711414347 69601178 178026597 402020779 458547761 305288512 350942612 838132945 57938501 662498388 286269519 894419217 811000613 677825504 891078943 765110269 886135169 951307839 435684620 897321197 900288260 128078341 48432819 146989054 518157679 16651547 95537452 237275423 365618048 970241963 203154724 606466811 178531332 833736493 641698244 992976394 162792651 999490904 174805444 946151824 254445489 7593269 975252066 702559378 398133140 79297549 465775206 165307618 370296679 405969012 918591772 536305686 37169939 36056395 71015770 960985235 495642774 819610800 311463552 448560763 210449652 201901332 414423413 185158850 890174263 882104363 239617957 529464352 84250988 3305964 148179972 447017492 208529333 94230432 226919958 101215720 962205486 116573908 45777631 611313578 890907909 701748315 714766317 870738742 587741545 123166031 710858836 835401000 404557974 549079573 575661492 914904042 673973200 188096858 843316535 803009199 193967201 868684052 360489093 289177705 390830742 753711999 601553622 465111774 471554257 77386778 352929772 80506259 814079087 482517689 945528073 153806043 635277530 857009770 547540476 315017418 537225864 171126924 753429022 2635333 383465457 335382980 574082378 955662321 807690902 75975932 516157160 569396543 345000962 837007978 496241893 918010726 560308427 789853322 466957496 439447147 262562183 589182240 817094240 524868626 291317721 105108537 713269090 451793645 71596395 291274535 657730511 174637395 972956911 168275336 676131129 217521764 999558435 349937216 866175423 897143048 408308165 623186556 808250123 871800051 695114910 546002607 513886023 647169946 793229958 761118100 328459306 850058045 708902997 178446644 898471414 508983783 457770986 107452886 171745903 579594340 801962802 215832848 122184672 371629902 809436447 317910209 328518179 45034505 170223277 36327435 422953876 870477751 277744602 567333974 525254173 822420556 748385970 111616606 967765032 898375041 23896651 158592796 407266223 178488276 693100474 331534035 796770605 837720975 721817381 462282769 633639593 758498751 358168242 375407270 984662194 37980481 352484249 223846583 554024287 912660400 862555918 624034207 381081419 843591802 436717912 53914895 394619553 251672522 108163776 943684603 861927435 281936797 45830294 113144734 633306050 588993198 182973496 493183 403008130 703925130 615513607 156823398 13684373 40231806 25483883 279983722 825665733 160612774 685644504 998177767 978628970 427343839 26087112 98301824 261250915 531782609 902386879 754489637 698618133 156930540 184871749 726205444 781273966 402915437 851484141 465526687 327831270 583515727 846180433 536165558 144590971 934900828 112113426 20248664 226095281 572198436 958133469 695190232 830942873 845195008 743817570 938234581 703118023 157611280 460117597 607185454 571640410 778264636 392453775 666405141 103543801 247679285 481692354 775434490 176698576 658241137 36993226 355351450 287050650 422566194 612661889 295921658 40395665 321474688 706828487 738805609 235195260 268894764 179936391 844001909 552350890 60539855 489671093 834417662 602116594 50819526 528297544 170209835 245324976 563276349 765044551 928468323 663644111 971256865 391859128 589895516 912326325 252867626 812273073 122490386 254738014 367120346 388601161 965736141 99635272 746987642 54034339 979743507 712277883 697214490 94782953 840767420 896792448 452294291 426575951 344657895 944047473 447601792 525518093 64328176 735138538 447002705 111788393 341383820 450250515 148383024 385813159 486870954 153526683 616953366 416933150 714053512 233934773 991932616 648993065 797909930 30137634 812830922 106158119 510992348 688219433 819275372 535479173 676893490 496328596 228932042 46152114 485130505 982737854 445776321 611523883 383725060 171800450 277070584 775582065 606430482 995901513 762681061 548172815 735435876 763521023 262346936 787474838 965727353 262057499 387382907 590908578 814766356 938823834 929161708 43458260 322966593 267581191 676768164 681274839 178528595 838707049 83010038 61919325 43879401 506849629 525815301 650247457 865079525 567231229 172316854 566299106 390644597 884308974 191278525 375025775 370692108 751204453 889118864 727058327 790609255 641260048 102775665 936058932 805013899 216843060 559612516 922393642 358379200 472253844 464282687 510748514 364036256 634462590 259155351 494091985 690704644 870790347 446561228 90082158 366914835 242039254 979886601 997587261 388639796 882944646 255538746 667624518 826358560 638514506 783779867 320528799 89643731 264311832 387350570 455849054 566606220 321391470 443674288 533100712 723536350 318310740 20849855 298107048 887059355 120402004 54093101 344308623 762575582 984334986 237346712 874631828 826529036 681148560 869136751 993096190 289261520 452553356 845776604 485446679 41579040 554539824 213248474 272889391 678359864 142320816 152895272 701639072 775688092 450851784 539794258 530130639 628146712 965163714 607681442 214039076 96632514 775279724 25338679 443318034 370505715 134428955 736985067 514903317 119284051 889870251 168673642 631869098 774142153 121986180 296464418 976625761 741574030 348591766 535633487 548498376 81590556 424213080 707049196 481596028 527703608 296486084 88090822 370379550 677956593 665886818 908306285 424886874 980690068 232531011 160726068 361930208 657408708 432189691 324680512 757809515 312897124 809338791 700821624 245322175 865182110 976625390 732549774 619334563 163621862 141692926 411319798 194035434 766608637 254068112 275724789 938643313 526029283 688336609 353381264 270869014 193611235 213733044 213362841 682336712 914641813 659072090 827665063 109846646 695865298 578357419 866958875 798179866 869630659 163101955 836806428 634191802 105099471 132633670 958393501 446330973 870405548 437523430 465408852 272047124 229532505 507062488 792763586 560007421 694497558 85708957 768349743 89436726 534303346 364900916 64896939 561521390 976669760 364647219 92412686 7447381 931873695 408825516 143066362 88855973 778841327 852356158 423283669 513201951 543047388 305832209 838113488 343580942 404578656 266856654 791378149 713151943 327878323 219902131 767032787 64135073 594100825 433068152 647336224 832400384 353369631 144345958 659300129 192303181 94318875 620820300 288503787 832963322 716852901 657078655 977794652 761810052 309940583 284017114 988152611 228455019 594589256 776468426 417731496 724033594 320257918 258454329 928070954 477656707 576960905 247200157 829834665 559095774 277761575 192254709 437071081 543048176 736044905 975973576 19164539 707371621 781022367 103390500 408325051 826818027 790557032 715743648 977529029 707600703 524883115 942811737 432988547 93645344 518721935 946930933 787884967 299574364 541115531 71825314 606489766 778663110 682516058 39597079 520662723 510839349 45686528 6461075 22523908 119952011 683129549 432892634 251616058 2765237 912678224 869277503 317832446 707132579 459365481 703651731 956534448 317953105 651188027 620820023 403662713 215903934 759331634 377932558 920663369 981983739 680194818 737480844 968145365 605547795 277292969 661115043 648716705 931724578 979562345 473012688 77054197 899059277 568430798 24707615 316128990 884357820 972768687 206877208 792286777 232988578 244890662 659430358 287926434 584528442 93983640 872075253 330462596 322530503 137793971 94940826 955323150 435857295 726727526 383154294 379014969 714747366 244568562 759197631 804160708 78529321 829577181 57741616 868703800 847694776 883639788 97515282 613358823 752177662 942528570 126679091 128986087 2674541 698629919 320242410 852727062 641433983 309472323 197804051 478137379 686254260 907881358 175131670 585894777 199484826 547943992 731950048 248989009 293056453 91988922 358780395 961884845 758470857 638107357 958145839 58689618 227105611 614432423 162042422 284764627 104506871 671706993 961224719 170950792 294459519 210241493 851972942 402886289 212567705 376783801 213590803 647368151 492811533 968564038 203563011 795239686 497205408 154661876 467586893 516216988 891173160 577582463 13437862 533608920 892535936 684865769 825843279 639363518 88074631 186303871 746328075 498943013 602139944 900403157 332067882 794013854 586441560 415143624 169701251 535326095 907094540 611117690 205519218 793659679 207285324 445587292 539554015 43474491 312084766 163932447 863327033 155904926 683844249 942896062 491887475 739322568 886891216 163040899 112099086 703466240 273002732 349263603 927831313 832590939 652936210 771420644 553913606 166727339 616354426 510497398 559433736 397862547 885824090 27142922 483231154 690534010 168866549 138368591 255226668 381079954 16275862 34503222 877859364 265758930 294956687 89778940 5339089 680477181 516787768 924375078 888808431 728887960 452367864 716617091 219078 987993332 96139062 309483043 829649186 789110570 571803748 772147042 946123614 505356313 264253438 599314407 741135955 646951018 687833479 978945181 578741611 248348047 354205317 449011128 644410514 683236540 267678095 41589687 66068287 961823223 300984122 682860632 753832304 821252355 184046895 706900399 486954669 222187635 277446930 576862475 163964673 943589022 171162008 872728072 885417989 940053156 842209660 27771278 828447189 670058352 122680961 730155721 254068249 28682416 563452525 929384489 696520958 151443421 380066837 430629485 35340348 675111221 612834388 291625880 604665873 396692163 492394764 983245816 293466179 263634262 611590182 698228000 569547039 951888262 790539924 658929902 604493946 433194678 324898130 148396677 950723767 613765642 475768930 363247439 544916408 887209332 737875405 308527109 54890476 298248366 803675814 741203359 621007180 189635126 324958726 387710051 199098962 565138518 477449747 305825502 553803529 874823199 369079027 199155939 481144316 495192677 778777561 835367567 880213827 913046730 62820864 36478789 350415737 261928633 708447661 256501426 573418182 183372894 577588004 298405836 925597147 99540918 519465919 255320526 915062509 275751294 291232976 896132923 212420278 543736385 651765952 181212385 812045697 345941323 568392694 42141393 300409883 813799862 512113126 197098861 322207961 694964069 4352009 249839187 427952283 95209468 40232671 345656181 575344070 482502638 533940470 958722048 37339979 49378674 297778655 615442808 211813276 906584970 311146293 916916382 787802040 438148860 331472793 744062591 350438440 718828891 673236405 261582189 839205370 817284093 628720955 651258886 691221443 842637059 663727078 851153452 203254431 915993682 661057658 567792144 978462518 385386657 417904065 465069346 757523131 593118819 863852424 851525409 25233884 841591002 951328176 29083919 152425436 847892238 763112217 957247034 967648642 739801296 52689579 713241908 47326747 179596726 154795608 548105948 119819386 646479396 623501855 818898260 655856131 793881662 291659006 193749770 645705624 390096120 174149635 291056560 970344107 148709641 976323899 991967047 37917740 525901807 221583044 515445004 367935393 917000437 15141825 644164240 959214090 813358122 820055385 115399336 623625978 255184742 188319169 904500846 193624965 664300362 754713393 944029768 206617926 230563903 156151020 934251233 666092907 834262900 741604413 912313386 504414618 328939488 23897974 973159015 688165134 427741513 213535473 738897174 747383173 609747758 262665744 907017732 455606341 667569129 904031807 732921416 64311578 939995019 816037359 865732926 500749661 280145655 757615513 578693511 37647084 997745876 752405696 99361810 747640106 713489557 138179825 130205970 828854282 20855150 374096568 179020037 756183809 65190756 858892470 816439725 164602378 399449663 640661130 520992535 31778990 185153674 985202654 484690071 884205821 479138979 125951846 626500554 2241672 596113831 891321306 701608853 244398960 78739580 153352958 775139617 766036318 506135257 958577308 156669159 150411901 771929650 99821445 338494878 285927042 13101254 528037525 425742158 722436017 367328931 558835116 340482114 466459081 108030611 118866615 228772881 294143773 718648622 744357030 683629203 232940931 899931611 757672564 977428204 5854038 927616955 328131109 654371981 920444033 320450755 89001921 957235750 703393647 636271784 27378776 870156981 118841878 163069422 186307851 219722879 400762614 759648986 823324150 185558028 50083861 981989501 240374599 291965750 24215550 370521009 569934383 469616151 770456271 247008274 496412646 944751123 296427805 482216719 773886642 901688532 731405588 468967121 258307804 145723730 912174433 701499221 842981303 34891465 784693817 396488025 116105369 680432057 285419101 14277479 982564329 456417523 946077201 259255501 219112465 231306377 629376547 557047974 828421246 841570008 748444392 957249744 111676082 312592260 624994117 711620853 736621354 176217208 433751961 747298179 919643251 57018090 222858965 296811701 151936026 651399254 936786284 385365385 719460801 716512128 277717091 731784905 700275205 570623862 237576764 581810690 453329296 145471113 873385477 475650193 699138585 616226646 82453079 79621266 407726423 348465602 528649291 359801329 703174154 134833659 908231821 866936666 832609534 662846320 997320262 107673416 975010824 302219746 692014642 208137469 851167488 606571606 270026123 381433725 959737545 28557844 268509464 126205594 364311627 636358580 653588009 331296751 118375290 319211025 294736786 836509144 753862738 776837453 410264243 811896449 251166674 944448470 753845872 635527894 205228292 163079523 23398970 933769619 146272255 65185260 957631750 678044213 624358105 764464311 116499538 849273863 315034804 57991505 719557415 345147672 390113983 551640205 465307917 722941250 794893093 570310023 811515169 518549794 871301670 35543204 513729274 160206628 201447682 388128912 267677638 207671415 185722117 622222657 558684974 234842640 530166911 371755760 538980460 519637426 329673161 146955556 741493053 345976551 679240267 812094377 422563554 324363258 721092457 53910416 49120051 76385035 315809688 982477370 15859581 180275954 637247826 904880200 459894693 108747357 618669082 775401127 58960653 447189178 214477178 462186892 820515749 30241091 90634244 767712114 707618530 836087796 562299474 34064414 817716933 256541336 373813766 11881885 374120144 742331843 153817292 504829763 621145367 18662854 850566996 406401195 584115501 814230982 191463001 443450040 542390061 819324586 643155869 326769819 376597186 687408674 314866410 36402372 571490842 510145960 745436949 521093616 160195305 17219963 640695029 780517925 563117934 745631136 375943277 487122350 947102065 317526253 224621416 392682528 532374333 352638967 936239833 329952598 831362730 895984670 881929143 757956724 394344983 27857548 760842247 787546858 965472107 431193904 218028498 732726120 57812240 868842435 277380140 172895979 933377280 297197764 505556526 54360504 832109497 347844220 799095291 526211676 770462527 258665468 125890493 698887850 418508834 581135901 922069157 373150398 856805499 529008763 340404204 978212863 212793057 56498307 347705819 500834327 875452289 695137891 411444404 149539832 155494662 416389651 909356494 686741730 955671974 298921045 196671106 627572056 652131362 344091054 229847346 857271847 937753791 742080880 358130761 504982880 759869515 91525814 696643897 317595493 218844953 950528861 527501180 208932308 437443085 343919886 526625684 659489438 223071625 237150776 122123789 7625461 569028220 118431510 383384183 798620759 950303070 466955942 121898092 266989445 302829358 41216946 759209104 479506317 284050543 401133003 77412750 296756421 471429168 358397509 779608343 220608967 160035081 14162755 769967332 802097271 142901785 906665133 741942712 501737218 293104128 690657076 479660638 414866654 366565877 899786063 215964840 934239175 289533096 138601535 435491953 923826876 523002713 657860364 888301209 572883217 419388623 483003271 435902476 702899540 681753177 740057926 959353020 644736613 82972363 906654893 253217956 679652455 387832707 478683105 439461061 71729604 321337195 872636883 606986280 910679092 438908397 965223228 198350050 132744115 954778113 306432413 724061964 764415362 952534821 854472762 949540809 990840625 402816097 161254185 539440706 621395344 583355201 351586878 276268202 93348798 146153179 632640029 140843325 87352865 738846416 741243688 278257464 197012322 644346435 298649751 480926186 949745015 595387620 482993503 922146725 310873242 521710570 272387388 258365634 758625363 856972563 179872700 784249507 398040685 916537250 49346862 280367282 914755065 411707752 88522155 820103010 389000790 607308732 78178318 737530156 34949673 257795709 344982278 191509398 425940573 792918284 68760064 487245351 924468007 932473182 603994165 137991025 688010496 133311717 536841634 538563087 183049138 18686366 220439061 971919268 714873157 680528661 884102680 863059416 35964175 565845330 281768458 981691744 498897067 202003950 816980743 356396791 702350076 97081098 579118582 877589597 187140405 801493064 974620812 439986010 430561729 368959959 824723519 731270340 881629538 259916143 54680396 303763828 198260252 772986189 436529600 68516173 984962106 954520887 359795305 496050745 648403280 967314301 493211614 391018280 933452602 584613875 954911106 231517464 329032478 936175353 202468988 801880074 748012647 262423667 74749630 294406662 601041353 456540880 239655933 861764128 799654465 735528970 84319931 619014003 680720914 799865499 562958656 506134048 228496843 965552267 191551645 229993552 86988095 389884007 126325672 499441978 781752454 78711364 624674821 968279570 9183498 325644486 783940376 317852448 551050870 185302031 430711060 888809131 299509695 722187467 781566449 720332804 826281500 837557556 902935662 205417611 571970582 678636553 483692308 800284826 80780410 278283151 458925364 617877154 529748313 79706257 634865126 648542227 490939664 276824425 860446984 545398886 81556804 246301940 83425863 247653406 945161699 399793050 624265743 226323912 553564702 550137926 974349465 76498675 596847988 132096368 735936231 95970104 580640423 479604248 73404863 720686911 625359557 123133634 639171760 824124844 300186656 455927932 863224600 169976372 289764694 111398365 472500499 832441491 765829196 842206724 431462538 695899014 910959917 495414167 841240620 886237662 109949292 136187843 355337844 5008745 812752584 565709118 313410722 354656768 499741252 89743176 281281979 117728907 292895530 755434662 731788179 853658607 846938133 557006504 842940350 66234398 159892952 986360866 874519712 13067543 641950366 719495285 389412450 236145111 231392979 286746754 410653681 567875436 26739751 15965118 234146823 504830950 63638681 477645083 147290658 735298913 59308397 604301336 993665420 523524350 322505263 495242683 100756569 141589480 417030580 385484180 836576347 840249425 239253270 812820151 904001588 815117427 154831551 308478149 61955663 547825038 597862740 870707424 327888344 18672882 950097612 851401914 358127053 735198444 544673125 123662216 287867367 559433178 145160866 872397577 488757684 838557466 203252302 895458433 969985410 762968603 955090816 342252993 121288042 44484940 20529042 486192669 772198988 520777510 695680298 123307892 165211342 632846128 811863346 61633326 883309157 940809457 685369824 39462710 751661638 475824893 479827374 469210374 484349553 603228650 859766884 676855449 595740334 971901793 814913549 51001718 775033744 521146631 738328571 891016110 473787247 173810062 729518539 479935186 153881958 226792373 427263587 306070278 378394724 440476987 629006061 340099564 156197399 479089128 923069918 376873908 489185781 590132373 886470644 940438037 298106431 396594709 192006962 951962955 461902590 128963663 217158117 829307679 268688644 889051947 544215456 424593883 984031974 671966618 70146111 661322587 236697097 747063962 131146470 183813113 884381070 164397101 170652421 797485978 732857706 286354521 959721291 269949619 145506646 857255476 209533624 829285685 53230033 302017750 448053646 43759516 482801442 412536932 142252635 537114613 621404765 265368838 453287666 36951754 739374164 103729647 931547505 427800112 873306285 30757465 258013496 372445899 461040332 769055366 840241656 373117627 170427620 161110723 67112612 650605745 419079919 806170716 88226935 833609955 491511208 751291571 190494710 445427728 707526556 468159523 174991853 622515836 419315224 318081307 241883248 281052408 540608055 334331148 467831261 49431000 636771287 625596273 522735574 344931836 617760929 607294154 123901001 662376907 796324613 594420130 339670632 783032880 202390331 305453966 466547635 834065826 642548805 934489636 529394923 728855331 859238632 865247754 873615130 860266805 333517497 240300520 121680029 630234343 832264461 339756914 991058438 517812945 146536453 595524193 123397441 206462481 22421895 892480884 845423223 451204939 869556806 986297725 135130906 421069742 405298363 878890568 422375147 731591669 338020389 348232112 662516970 590676310 60121483 994624666 910573159 254794396 797509823 122160111 991727603 86320918 811886934 826361761 611699820 29231002 461576118 244322728 39003638 140020100 325492739 489976075 388105471 42732989 143061295 904282830 412429112 387692463 585229297 275031819 667842207 336108628 470768584 122794452 334201974 772669738 942298625 9462866 633635919 425574198 107630761 47862700 360867065 20938246 760115607 52329495 14123921 880888499 386176365 13072329 15297147 962519256 645132434 829456390 989778020 826160541 73216571 7260696 359153474 217768624 639739739 162744405 638753104 723412295 682915763 112107282 986613264 418450207 845228235 650510260 245823315 139238272 558762743 917691813 117394985 642918968 496763978 933556052 324237806 464428701 755515816 915446592 925730122 352223373 564245944 923566314 703433511 371065198 781083115 905131996 285344697 389858609 447869817 900837033 692455805 213363017 271237215 259141606 101125174 622965173 891355754 747728701 207732210 997451258 906635304 574297170 652440582 732053544 294812146 900373468 745157130 95001047 368771304 492413074 86007526 350659362 594494963 472160824 584689094 454547889 135386302 495712408 326263580 340758451 652200651 512895108 89693606 268510426 435971665 237566676 75068779 330918248 227810655 398345583 216509616 435435812 902430912 465925690 129186062 813033051 905329935 760299053 496262243 582666979 895646637 747971132 534604752 173943577 563218879 731213934 930813635 977798885 111771960 268493516 135233516 402952884 459874768 537360488 613705806 400868476 188319753 966878299 915946536 695234239 850774566 815293128 648230923 781637505 955158330 512384476 525790662 541512525 99681313 484231365 238872953 709527612 360248948 866744000 146353796 924691694 397132707 75328524 926456985 784135049 693794775 805461240 511980201 762805942 376451852 253650644 927768049 980161712 255466498 411950331 677986548 714272823 66211138 245824973 657728129 277338506 678308892 586277301 317689001 677983616 186740647 951707687 294589896 724927080 846660035 556769434 685777286 40593700 189560857 48639381 525951439 693057563 935700248 635627423 221116370 96402489 763795196 460823115 657698065 170726388 571989186 410586929 605586508 3371597 906294069 10987766 209664658 465047496 857741281 201223750 236091958 522039666 344214561 254731983 280077271 91940325 902359572 917722191 199072597 856580669 594270629 727252868 608522463 48041760 372007297 212191037 829589481 888715197 166874656 212288839 308317228 42255561 342773447 903340417 830190256 438972293 818207864 283532491 189526722 607015605 992312585 203090960 611634930 929662886 654377487 695204160 166623265 759292723 135342570 444167258 935778416 526729908 922832069 417324124 737960525 573738260 948622732 650465362 699897707 228227008 40359162 67806798 976829381 213239214 754341519 937920104 23213219 531261532 861542804 567577542 44833679 136003793 821571607 557628819 486591834 422664346 438406130 205352444 705814824 490869966 786248645 463515967 554864471 164315916 978642937 950332060 909891734 442282106 786137020 94016353 173450969 686793925 523761672 106595292 937895515 683311397 99258525 261761130 804595872 909516117 197025539 856459373 963294070 412448927 572928904 370426701 563521009 430142158 340316746 278885247 476160362 628156221 217025572 579470717 462488714 281347527 492938688 241338567 521444924 358564817 167291025 150090984 423968946 254972746 331950539 388434547 807129196 207330219 895400814 217979394 854883626 632366318 143208772 912325434 848766202 555170460 953642464 335898561 738707761 307543237 690538391 960269898 792019819 426656507 820821384 479995280 219044492 273294175 449335966 632465239 678330815 499126679 501229192 890879334 114172282 679263695 7524544 707342994 617577082 645356992 552095109 892610997 481673921 804808616 975851228 684307119 616018588 629690188 805040539 198318445 782337439 594071802 191835222 124459743 899083175 641478282 892361841 780549118 409612761 385292888 822341392 991998162 964438943 356069453 323016743 54846814 475476911 571282132 251515754 883973818 712079620 220131814 238102366 884037631 144774117 899632131 775499336 438369614 657209049 416561450 115595579 649147601 62970297 117342193 911978252 757859258 820923040 381385833 916894557 322576198 356520691 637066034 78751638 337149876 487707227 356261493 296169449 257991504 756464590 502754524 306544715 558455149 980307082 444936863 388975998 462276451 891868435 791409276 164489739 393630612 117331507 242963131 575731007 237299310 233739776 667765286 658130999 636953440 958513365 415983896 470692558 55015908 753572441 561944686 296101554 184448638 12469874 535657100 201007694 967992760 562012252 683536483 326687199 710857509 70807438 240366695 723901536 294103645 221438671 339131798 147618463 924512772 89560362 568147066 340497961 338768579 208999154 151403038 981571668 289585741 804227270 539253529 942039365 114646108 647080586 8269449 556497632 202626483 453668969 977394453 589498330 573875995 42327510 238603243 851007654 507373670 956767374 173728191 614124168 673759600 101453209 951121874 505355400 826160924 313700412 725541098 442789492 386584145 391365395 119749719 102849510 744115459 461789940 316039914 888225087 318616877 648868360 840137220 993650852 191219662 776880824 617782414 572651272 809390580 72409786 396436467 244841253 758408625 990166539 75367209 709036663 269160732 701507565 746439598 338039878 955898717 796659692 281012877 397236391 487612310 576950495 186808655 24073582 231260672 449767392 877629194 77993278 250818772 210762068 708675936 266275965 44993363 827277798 833254262 754646621 802473673 728521614 854618363 530053078 665343364 137926276 598642978 44284582 83244515 630546510 262273965 327427673 280500036 674818232 720745950 105714493 65586966 614446297 22278534 193746794 639794632 873831430 245233148 860587456 627887063 534207212 722665246 755754730 532472000 216716914 285518416 262477910 141902355 121736396 237578627 708828477 226910 613948026 174904877 279764380 657561150 518374204 351478857 70891328 95529815 994169123 342198625 627284663 217591119 467362172 978625409 862188634 262690520 517684203 497354814 845446984 664855215 285839696 310189498 830427244 777995927 22808793 221963675 257076082 863492695 151033080 894229516 204955095 559966403 85135981 653919943 734538710 594314420 905688375 341855239 23279997 443516945 90319270 31470994 455488918 694849726 314188623 431956922 724393662 821664176 455514636 814875218 301379669 420070880 246779649 328562616 431345024 854357333 327431068 736013270 224162357 206102547 248240272 974886166 724208165 66733871 785803482 399554928 987585493 361938370 464614079 55429476 800993677 193477107 910363337 83735798 848986202 41065446 272872141 701668021 665318681 810165969 514711784 294705844 548821863 642330092 260524159 905780119 837005997 313058682 793167676 959963521 447095579 61235655 31714836 858000161 758010025 233179173 232289860 79946924 721680921 795162603 627528275 604984546 844557809 889352060 132562183 581703176 548152707 765131078 898106489 729965294 252998118 373318328 516532483 776729577 176129274 224247119 479088200 271158742 30961770 303618443 154507833 807705884 805431973 247563764 338721799 768812716 652923361 222645280 376530733 502863096 454928672 161798570 639774835 854417155 900441386 799406385 619884257 194075981 314825614 194154848 636447439 100928746 393452968 896166890 690612951 609251437 803625876 300673162 331985630 918250229 394250047 209270785 113972497 232955691 568346962 59059483 892050658 244364855 785585740 753545127 803042833 325418196 193610604 932164992 536177054 825404481 626391991 882158477 596036313 516625218 330103552 419876530 875262035 251843876 845781726 25210596 733641963 62861507 808488882 620725790 423794882 12477812 734351782 514099553 591066694 564921382 404077479 30036920 112474924 963033154 440283247 819899188 579108210 540859075 732562301 824785907 915354713 367756577 342614042 940331281 771167085 208408167 394552919 623248316 615989123 181614113 864131595 208451110 364577720 518001510 990268887 718510219 450687600 994241494 436778019 16622122 810325593 985566357 312274463 855960655 671776612 49871696 544580804 116286797 45593551 356988225 361363409 468249466 645989149 876732450 445184209 344536639 109070621 174062908 714985489 225708286 603541728 710294622 204195242 764237363 283904965 816450268 85779583 983537232 869923437 349305495 334358835 649608923 860916166 715535090 383047995 384782686 848713223 64928733 308899790 197687914 304383400 892943566 342457067 75117212 219911790 850687938 409401435 755185043 540699241 559321154 94388911 728380667 560263400 300209243 265625662 203169159 938847116 322360739 132119081 749216749 905869620 10946105 760301400 423419893 192623379 852391360 732332413 899615078 921486742 689415274 148930060 354551059 569007998 639756780 397419849 664478677 641251023 301993093 292693307 798855569 872072146 603690489 78793394 841373743 54120990 903293592 58481734 405395616 812235664 31498810 764301146 998399458 438528843 588606265 4400915 644726262 836801720 914157439 547479904 381201639 691529363 785437049 866940414 622891970 415855056 584036122 515580781 226379177 236013240 423133927 426429423 760966838 448699353 16793824 169177755 783021850 454263041 434524054 95245893 654195718 806895696 782023457 597590158 808596146 790525738 260561949 258532064 769468768 581786941 579023534 882807658 667073631 299862907 378636679 893877799 148992763 679543073 389239515 939847634 51941011 743074481 865962344 221326585 69340038 352700667 519515001 675762406 180225089 87535632 197145047 566377654 972057651 25921103 974748376 854744648 36431064 517106008 493982558 572416324 103947445 173646622 769732559 237886491 527239761 746097361 780303125 801177347 240439100 416697322 52052394 465844479 560028438 624205108 400885389 197912276 307444349 856347065 600277568 299929623 65192477 734886346 915906517 893681180 124133288 426420232 753796064 729038599 286518489 669465685 967723395 838277306 936177776 133978843 552070495 520906732 813066041 878634257 11092645 331979027 229488390 813373619 270442506 287919982 108849584 773347524 604055248 411103239 770262556 401033877 948623801 871912109 198784819 808968370 874855444 826292983 985330918 450047998 295705786 680118089 772772657 237062298 939560198 707444166 814864660 737379060 199050207 48195429 161176986 663268031 551349429 63568088 374363865 675504121 691210364 627009955 769281767 19447779 127581365 672588556 534776037 979406859 28611682 469308199 156748802 567008582 118392084 441504199 563970668 706877616 941885922 596952462 308372577 551649455 451630187 84488422 84798752 98598890 230107089 975774464 623816182 459937881 923607493 989362386 744598322 136250937 488926590 478116892 815898930 362403085 14931641 604506727 248151894 954667169 713351356 294588421 350561033 263423494 508608343 313050890 997088445 934657697 886624221 807142491 837459690 888368910 507521582 414728860 734676759 235604028 845297074 250676033 121462984 985817697 266054742 118088065 818942103 319408630 532141968 797981017 424981784 67953346 573129565 190553751 486551025 524037841 349807942 396483014 885591240 548581749 158665558 22305091 895553106 414211148 329741094 825906219 284397389 139145275 137009364 276897127 210895730 361590378 184412677 841543334 624851092 419111252 82853607 109993826 853074819 855725488 402516274 710826970 522270998 132586884 68094754 841710618 103123760 766139676 721175681 295316718 313473472 292695055 598586777 354916590 598805426 547865653 374595138 566344574 406043142 24800947 192318171 111721411 475368633 88747255 850671944 720072110 46889432 313940405 257796600 274041593 327770230 953358823 701733605 698160162 690972589 29856724 815873161 46767474 428037020 594976263 322563306 323569657 86229104 756509781 68816539 662260880 970091868 116071641 510348717 689524951 81199512 609669880 23880897 594671670 61565288 722398815 309652475 693596381 813657879 562547713 697060364 63415492 954744306 908171034 750056744 263667885 390412635 804384815 728234512 467289886 816540079 896800780 344456454 204785003 881735001 250391751 765578972 98132134 842235853 834744506 111071209 683966644 81545858 330830730 647503111 114146108 991622654 701876003 504245919 102106799 958172875 290870969 928895903 154052933 16366200 42517448 393686140 563207165 432001698 507528984 613010487 498652065 718211563 556403632 216875859 500809150 107822842 751234534 335395041 231475633 620951943 199691865 256654708 766495127 382177607 4126441 408958510 943258968 359055614 8249797 393409970 994624422 79473017 361591390 588489011 798561016 710156422 244781175 553571168 448757905 851976195 823194893 971863934 924811637 425095375 572890990 863087184 511273847 16864724 277121075 860118308 772711983 761630472 899350579 842940113 110583292 903299170 985064851 659747510 320012041 701121766 961928897 135969209 155831363 747921311 658685296 867907399 566984802 90482845 520071071 71045719 710320873 844742651 920480908 620314214 910496545 520887002 963342794 434791548 921793813 838970983 474993195 501195304 194269346 862282963 425117896 971479166 17453158 748460631 632218122 4714783 348835021 228706359 821425306 369044782 690384642 973772221 630523502 21162075 679635457 802036027 577071043 218362842 38530438 503951626 483530266 132680558 413733150 489251470 172052291 84354651 903518999 507598643 826607183 164126828 578649995 691984741 363233436 352234236 224870231 128245156 618753743 206766055 497734949 937477488 712619474 763644051 991420006 701964884 124306395 982860527 787022418 419540194 971685221 694073457 955015912 229172149 850724404 3840281 69579248 703855213 192329815 550254185 90944511 154612916 104535840 163816563 969602407 110863680 440514604 880122058 817922891 877790923 416922207 292893072 263615122 790456594 54569188 733356651 894599406 541012453 249737779 713599877 383134681 244493331 801453826 43182745 9110414 685111414 435286877 626867169 693030424 444624114 347531145 401751846 439216201 82042225 10165022 849868473 430183095 261574372 20208633 818680425 209091779 521183816 988640061 479978651 458541972 688468381 260703828 567828272 326040348 758238957 423455223 660726427 665826066 794621259 980865821 742907087 935395832 947966929 157050383 470740043 851216405 10405025 460175702 160935702 365859449 79395813 78037704 799492542 851308540 256965328 280282752 328410201 966801472 937835166 711056356 541143941 343256234 101053327 194759329 70928745 485602159 208738796 22708646 229371056 340848258 836839179 735704629 421873047 709706408 177210435 209861327 308378327 78871654 842790390 594698305 217779895 186856204 315852947 514807966 523255301 842885559 931361670 130504774 588064537 356185664 56860237 55085275 812893902 865238103 938388842 731267145 677388177 277556836 19964262 998636995 517706825 100522150 990297556 575861960 667476334 838341146 118665806 114294811 217494016 345977739 779485047 7534278 646675591 476519559 515987961 202113826 609783821 341405796 982599556 259065801 795433769 239941447 55263700 582387868 558451963 771130133 332832172 711045581 79801897 771385984 959989206 431418061 726494177 338279935 559273511 944564568 703347927 264324307 197521523 325390962 756174924 898432517 250433438 656662379 445077767 985051491 864009877 86301906 51576914 189539463 987531083 149076871 705612553 324746193 289426869 115310508 635368070 686021480 497903832 172963759 624551856 551998526 544212418 592774467 761783799 8163084 995511425 45344869 517287504 585202512 342870319 204916825 394003000 663315027 288052462 555730091 763114168 858599460 698006764 843537454 386696540 935649438 786305369 897120769 412751675 66011745 795791980 260536454 300819442 154455505 273609070 168727660 907798187 593605667 342131108 111259045 228371216 308351055 179456354 75177068 831303257 100010513 768297731 120508491 7324740 957887221 52970983 40462598 863834136 355856715 332844922 206264246 216498597 153062699 929027118 858847160 522561596 173736307 721905791 950813103 249232833 390101711 83950059 14845063 3581845 418018988 393806334 825652852 200318376 41990212 143804239 891779571 74664306 747783063 877762160 796985032 811700467 887946349 18106632 342708478 230187946 729468758 227743426 649402861 828805036 259785387 149528655 266566957 977128078 754367371 456202345 159635874 585404013 88692449 410832080 506313854 48653038 426792536 187911507 938200111 645561922 278746990 776851136 23467380 296700958 682077792 546627062 54514259 706544320 405401912 781841107 320253717 716307950 521405124 608215874 857515855 772874231 835648927 210930742 177346268 510951600 539142950 139499691 601756388 233908859 654924933 122477215 300254416 140961594 3168682 416847903 290122071 893935965 326659660 473740862 329542003 741842137 502948079 406593045 359996777 316027439 735866840 461204933 727481287 463455585 224445464 220566906 799983197 314754305 204916360 390577767 267457352 257617188 736744136 894198725 477992435 950499433 146178112 148287956 219088896 714490100 71403808 846339301 853502060 184409974 705228128 58847299 698607215 417740324 418387906 116454219 577282188 335843260 157836492 107037793 925871509 763866756 899013073 487416298 399124887 171034444 211695590 844117857 322205427 732503656 489707245 398157367 154647883 983686840 529540751 606303477 434103436 717029536 218915131 888552992 326486508 453686035 704187688 789847886 399196902 434087553 128616795 758847515 428174909 844358122 759892118 136337186 46207743 784779225 352292973 991948052 584288127 113941335 3503161 282357664 162047064 170093309 536931351 119914626 510307699 534479335 997317106 618768509 207931638 106754748 379123320 133044310 577855579 470358701 598845476 208690661 428628314 789773420 26688566 58556675 950076666 346877754 557642674 657927822 147418759 180993502 587246702 40487286 202216595 665926563 135402495 885225899 437928442 527769440 491459270 75446566 884617956 909370999 492527850 368174316 767467453 386725834 807756125 60582917 589024820 575310537 59111126 723551875 313746506 210370155 780277462 731059843 969042755 498988586 194576038 882834723 188639401 231978259 320380500 40070032 898180947 734889134 964590522 215736830 321182299 74410519 363167096 434291875 104506404 318729959 621262838 454560452 920706399 745625158 440329316 151981483 159825403 845998053 12007357 614684074 457652280 966303990 508186042 310969115 337504153 610865978 346436589 932320609 249543144 23277561 450961054 859175397 926932031 48440573 194727403 897732377 319067125 759951261 884746929 633033592 633919921 349474233 204408214 460149894 174030429 118928564 806960145 742627274 981285935 866973315 334236503 393090008 223095201 141493909 626353508 378835789 807113338 228135660 972847111 698375620 952519367 751435023 80114636 765991151 686143449 588169992 839369486 927860604 210810701 677447283 45559531 113092135 518704648 835762537 956790348 37290670 721725239 691506069 548629219 23744226 210632525 43025697 772817956 894974353 729318151 370182596 855657555 639987094 825387624 819063742 331821942 869013203 29806526 318479060 897815136 938889010 875939999 326408023 778349478 373518761 557637856 112949016 858695853 44342572 507104684 319619707 317300887 734300608 574428270 48284002 264829273 543211379 762216408 281099839 897089702 584065361 172559083 444225282 11570439 53689976 489895397 934189616 391057082 151510795 39130453 726337997 163706585 894321457 181196048 26255461 427748405 134948380 865997618 773470225 881891952 914051851 84133151 942715757 541118709 660405821 426016386 555990690 396477937 578613754 37395026 152807004 621330783 464072090 974834120 693194963 497341436 590526066 494642540 213203139 692700244 336869608 781094407 79265397 313124276 738749285 981834671 833742003 819932982 322603865 478417598 172499417 347341498 597296707 64513757 125137088 107719144 793953438 983011314 745252819 896709936 239158525 950886710 615506938 684319947 340954859 314434596 529293746 386226616 479047174 224076672 385796598 24075969 31649520 721356374 750184268 658632052 344366674 646148859 144132290 612177709 500728286 517698057 223731952 901643785 829296465 933450598 349598962 244249582 506644843 953209665 971626355 571169683 665769207 71955209 726477211 524783978 936339909 895658109 447518754 133704376 957125043 158628001 27257416 484300418 965562784 250125504 601258197 735721115 202126457 861161331 3052306 735548567 283755052 364688270 167427033 465368794 434611896 280788797 588932231 73216394 712967455 723663593 307174403 650274715 836528233 972226119 92860347 168009153 497477799 217208657 512446629 809448317 856369655 450194254 478867004 142068760 410884985 875381193 223425423 333959588 88870999 263708567 298507810 834678774 508468419 656707539 706759955 413196721 197492986 553975008 641066493 995155258 91929147 456877423 32792068 219886534 454347218 995082609 156454106 933470795 844380690 731792163 536143284 711014022 443857234 67359238 306132562 875086338 188437240 360627181 74742262 393462034 447914605 911505894 835411058 587040202 934071843 983467344 120073500 53543693 213707411 259009233 655045585 27350400 18344256 273482577 928686582 771598487 852712887 334121736 912131452 481112969 216889477 878295151 406167510 214985299 147253832 769780044 926612230 316179139 551289507 229647277 238436496 15838053 657272124 277869797 881312389 352714387 471588043 882479756 90831478 658958188 270369797 385567628 786585223 216631002 643862703 176364817 446127704 535765132 664324241 722097035 495129628 787450875 461629056 896704953 343933835 249955686 486034263 374260640 738534621 712038615 459215604 181770122 735094749 499592476 970049861 666781453 570539222 840464590 642567995 870617093 527296416 754714449 167644110 866502038 505942682 326665673 548970756 861550381 881323435 950449701 585245924 700407162 938634047 273190945 651891845 872338816 639768908 357669949 955386620 949059455 179777618 642148543 640140399 848796677 807385686 442339511 813687557 972274917 78138857 982565120 252933107 325928507 533188380 920250681 127811696 793854827 821433490 961548491 513370818 524841509 202495086 843823075 176100147 877772118 569147745 679917181 982019347 101534787 726267297 878569815 559416250 820527978 715782632 415012091 756140944 470587291 723653251 916908217 749662975 662346983 497347643 588822951 748017522 958503850 879674729 168140710 456511085 19950988 567100137 514303072 317725290 901660793 766373154 165208132 93524983 99418529 25284869 896099724 757299878 354913922 739503876 778839350 374475795 256162274 808155168 378251277 776430300 520321740 963223774 560618908 360543150 355463574 429624399 88852289 77442620 234910424 101671172 684042009 64510527 668999291 467447841 48221965 884937849 853766313 575538758 615820749 312594869 344779479 184947881 974486480 369690564 332562110 22655992 79084634 822046851 211806566 823013240 353997939 541373648 230343197 588845547 54774759 443785113 909910897 275197602 849220686 960668366 938547778 913479280 736587791 357018731 31645366 864417464 607234380 830612848 89408822 453186653 460267256 278713066 737898872 882509517 909022667 18354923 998707575 949312766 10991426 82326922 215662200 249985137 509689005 174636012 588319753 181598760 141635603 816559419 175383802 682393526 756055378 431293352 752865386 463868463 157900041 384555888 687595711 582938417 606727073 436517842 908827809 313404384 666766920 448832027 235136006 224967152 890238457 212054681 255935788 225252498 183907952 355060650 743702423 760300937 43854651 599883952 894101776 335077399 544101028 207939350 925330606 895422987 468924619 132732237 220619724 720700092 941944968 563558348 406195985 926374409 592254088 138665499 986786150 152166231 859354685 174873025 485826816 740278420 434994394 203138896 79796830 852457273 54813795 147484516 185021760 414627137 345236636 562181534 392245172 389341748 224930844 647633835 236752654 898198048 486699318 482576439 481085676 448498843 386395916 977880066 801750066 203426243 702660230 922004685 226520075 799980349 479191892 473017440 268703976 903510843 108286705 288091025 623286669 300110193 680937369 532145462 126872566 612704283 929860949 783715637 302198902 145020675 253088503 765229428 32684701 399367796 499963159 448865003 75319881 470447177 39564053 598953616 563710622 644011740 929234456 488815206 290102025 763139604 313765906 669130360 74160188 415957601 75995834 562092504 672028982 650604471 533512851 413757345 59692091 40859284 90674656 964103667 979272659 147147522 125339063 909563131 894035414 296709516 245991660 183524840 685497442 247054409 534975266 464662006 201489113 793613782 335699391 940834664 87514340 324056669 970624757 746823304 639197053 249806470 855930554 550069417 497471965 817855118 128655315 200097570 683227273 121199407 113903811 458888794 65679437 309771440 662718683 58099894 759961407 171645922 344417590 468141997 670815158 228529433 135147955 64305847 466565983 81472305 679228410 52207189 313037340 196620435 205619323 433069330 620066602 487951407 868451183 349345922 743223809 185601142 289459669 587382847 659763556 999175786 487611511 39375593 861498469 289284242 910016741 386422060 830085969 773837304 218487413 188620986 983684809 933006136 758089544 573827404 623970481 365562733 951896904 427953064 14776115 461724988 177604903 516139668 737355716 148741076 522263895 33507301 478319649 564507630 61298973 611105139 230899022 12978375 79779200 898962976 644423830 729092386 643268176 197807834 474868368 648253520 812347687 51203472 229293592 38593832 849799266 100959804 775862095 958167817 638948396 267436005 733033637 525124821 594688884 712185742 879781323 64954364 479733492 13199183 192010941 99828087 929621546 460646206 162692803 701300419 206159455 364778113 461955943 423835874 280398754 822332993 899826556 95221608 792474063 316562607 528457763 432363883 312235907 503473158 435509179 252196485 921595684 124817800 597394673 774565854 271431144 262461057 348690876 80337701 415727303 949472065 688251479 890743696 276982138 31444514 770379333 442326750 598362001 833481354 600893267 242598485 967488857 696192478 251725974 629679043 934458091 495620759 331036522 262348925 575890725 820218150 916260466 237274208 136244402 20213527 877289629 834114264 423947522 898431980 839227930 796913102 762634060 666238524 571005293 636816058 800909201 460324513 353147986 471774108 852533145 973418683 589519068 554336246 150768629 811572790 576263258 193393114 465141498 772107205 755128428 906076382 424088525 562702368 489433078 345094943 965243732 750916875 127280163 173085762 565760319 731573328 437798758 741389433 577661702 432744641 537634943 305528181 890482923 494781751 360449900 621295480 34690804 390179220 286266496 600317002 710196211 5968839 944456012 610314292 199005822 462154428 361321391 651666193 681721336 774345074 411420359 737440573 626749834 603653097 408898054 40687261 935456545 558016556 404055071 4016547 771111541 746134349 294475788 440974400 65290760 469390949 985558549 357608694 533444133 407519129 134077122 529684428 262980054 980015374 767052267 171471695 130703864 894235644 735023019 208097173 754239019 532048796 341902180 397679419 546957268 954127408 174721222 214764137 789666087 846874112 755282626 384795596 139720217 403925600 820985497 252629917 860599661 668178603 822395081 790260887 22054313 454521155 647080992 862275841 479151647 9806993 744063671 588995499 99006439 18504199 445717732 826496232 398610654 846673185 640312910 232891288 18154675 949151839 810787043 855988773 483919312 65088590 879677908 960917879 77301873 306775678 43071647 170187272 476306837 187439242 249980936 390182613 922177027 216532758 104259355 374443108 852392778 644155081 98721837 721717701 252804297 128837464 213206490 28550541 103534232 443004539 35336196 23773400 112315558 749467894 122653402 577182288 334471582 926966675 971880912 72419618 527636988 870494757 491356322 644890117 374676224 978420866 597857364 608475189 778113969 611022224 708287027 70464633 635668956 934539835 404381905 979311136 874723103 118463091 205513997 458436608 616376792 82345518 601685769 705396601 96907310 517384822 233650480 345704814 986596627 389416017 744780602 673249615 24726846 378694611 110071076 134636049 875062321 311238931 979767343 44194100 155608883 179876151 759788519 730603454 272519251 213707623 392463136 547446588 783860586 126687701 773974778 402124486 37722907 629920445 6597079 599759864 471998923 842484063 23627363 186126331 219171499 69297928 305239186 193407099 187415220 66077193 867119776 433754799 574790053 847687866 641956882 664234069 830204681 513597570 652261558 49450677 525496621 277421257 836592030 402067353 572479531 612528638 523069479 378984540 907236066 859832993 70517491 463337690 843449850 768421424 688553713 329650808 103861990 489948727 937312853 721303337 217022686 509359945 45341595 498442845 94509023 75028988 134619783 430266902 886109618 675504121 929728803 956799962 512455403 151006948 810659527 822869431 996694494 998430066 375123215 510461251 876091311 860234335 961145563 133599899 49508673 308122474 586319196 578136934 507208776 588910687 915598596 85819861 182860349 381839376 978216080 377639322 794659677 487255895 41025540 787099384 201915314 175809559 891796909 735790001 947696142 190651449 265678108 802578452 96560391 779158702 278278194 432254457 823849982 149817460 764397072 632911293 457005082 772196237 596264995 533088070 519172942 523374591 70309152 238740227 130886991 583994081 633699843 788950762 865502881 901390664 418324238 823193466 321392006 263267165 367772370 150972089 960107287 451046725 142883102 574605619 703363620 301087282 393821714 942278401 762326611 754260323 289467153 766849726 495001352 231678230 137939911 710163093 68813944 79381913 680185641 187065138 528003735 257483321 389982835 266785483 732049447 917147220 17192999 456525340 438762929 861861963 236480277 629717358 819690627 218728072 695405390 805066129 299388343 44046977 183210801 43623128 822570797 618306474 47736415 548680227 252595853 609335435 749664969 77928404 101550663 655011241 197240735 4542689 672322707 836184219 8302172 929310650 823515250 802961142 813019082 795175774 848271021 702785890 977096435 618355286 339612370 564725894 229583913 960766897 588472380 790475284 73517579 452695553 95469323 376696778 593531 735295589 172242723 480172133 44024740 50626439 961630521 302929587 579862783 185212048 365532610 370839682 779599940 59514938 847470594 556750771 324075133 3502018 291316990 728434978 748774638 184809456 281266825 581430205 595344433 720258064 813153334 963620722 878316833 611167481 381619308 524890690 37897697 254703113 86859599 22916905 110462686 251098663 442861009 950687541 567442381 533191361 233676457 268558966 946566314 448275147 902196054 471372550 744687288 324078023 776927525 715790346 105397636 64086713 496892450 316069034 929637348 3170609 936247334 81113882 998839027 865391683 840898002 638339986 151816980 668775309 3525518 122139990 269815028 559906360 560943244 712630703 924872840 528271857 300101059 989254384 281451018 236628461 518510321 704863605 712639746 231302123 585105310 212223130 860071226 120207666 792902689 593607634 84438982 848572817 457551498 82008968 568234499 877252188 163564478 24690746 540489364 904122738 391873125 437231978 925248103 618818618 993180653 864935587 363463598 4823201 36874641 703801458 76952808 639665695 501878606 447882105 710815705 755836080 39095535 106423124 692308619 992793564 964048130 535023536 663650387 156872114 515856866 758379328 851022031 343538630 38722222 863491260 589941472 951953463 25026126 377991656 809085364 370451628 889976434 522397327 419677122 446859603 866321043 560209279 344091587 338686944 645515505 831712663 626381242 806031511 101683090 293956278 964322807 829244215 788414795 966240456 908478477 948110869 255534254 393895616 436442070 447735040 354659619 117829015 86203512 900557405 961592780 419751246 872021344 633171982 975892123 224488435 723730243 756436100 711993672 873588370 173999385 354837940 661984343 416281164 172627243 503532061 572587531 780888385 564432384 730367426 957032311 777622425 903040883 802256694 497393520 747079304 752384410 318184589 498606491 3650889 29409246 895488099 983450462 680949277 389243369 48676066 911915752 785990479 198905518 491475126 512260149 611354160 214190444 199906329 796883968 888164893 487317159 526675395 217455319 757282676 565460263 42365438 602454534 645331618 504048900 257316249 887123622 455784731 913178780 832704232 187060376 401843797 935401872 229286602 718444421 590194388 322975693 626767270 624591325 187676964 540295 622112362 930057172 802227925 332851005 281765772 519088753 870069123 344533679 170710026 55633016 909931470 139554794 413487210 248568699 326670436 602764612 842572732 946091217 253661427 185320795 152064661 505220763 237176632 338297358 705703441 310493888 19396084 595532687 704098522 638160883 29817329 993736013 167425565 606152873 152220419 32731913 725559952 95271461 67179267 852442562 16022384 698267502 28548819 923127496 175505799 976425044 804442460 966080177 884639775 567468655 764500629 97359444 228131345 476105761 510441589 3486681 906279096 568166289 123785212 132175786 879701246 346454446 963705401 174715263 604092497 710120755 604263225 656283984 667329444 471175580 166128410 326489186 97694841 495373880 426956031 703603268 140048341 985956112 962233873 818162121 989040962 949540867 6133376 943899658 957405151 803512747 219128968 201240944 746485570 198842484 794731885 906983077 11117204 102785422 442524279 366676893 892096903 342457840 633617913 360246421 665481034 244153178 934035020 367101713 561682338 74893143 449858261 46455005 471479250 432194098 905630971 831273740 259341736 670604811 938630450 145886975 676225660 216964027 156359669 857336148 720331306 775296492 19172551 981806332 872416794 420425234 215252268 81344553 212998714 604965218 537259967 240329046 495745536 174423004 114457876 192042059 776243562 270726984 532166353 746970386 111441409 135845946 981289631 129535231 767565773 121832710 145057071 513250734 387501675 526204111 22592315 138194949 828291572 958697594 402955910 93873455 719177233 336996795 176056540 406741408 956476144 765757448 478890766 214535189 542446150 270312866 187783671 733422739 336692820 719035025 427375478 151775075 621613278 49496484 17699707 986285084 572369459 755128182 59985650 326790811 114321960 97812839 458651864 280936962 202739997 458277532 210582832 265366463 795870457 681226505 828960260 685856900 848460326 676443747 370381415 178857294 561555615 57271084 527504240 761837157 957798110 908899244 269012293 558147153 860421868 859729653 290914831 959507687 491069784 601229789 352889599 911470147 377970233 777147908 130323279 978450378 331465257 652347602 286567237 520916779 282555215 887454330 465961254 596341076 86533213 18477811 84603465 82519431 744126854 222917373 500141572 72867396 439369096 577663774 413936317 716647514 685094573 901673640 689114331 850404316 576973248 391037622 103316435 126241577 438831383 96485156 626700062 229643233 617712531 57447327 397674815 245898738 591382423 664651408 413553343 968989328 659981842 271109686 307633969 250604347 748710270 557329294 811670063 760957617 496277716 211715938 437509725 381064705 675686557 570977090 556590689 757480321 160763878 273787013 486780400 538438090 707241801 517535562 643306695 625986243 103256543 859870589 73830818 824359063 293086286 449953741 881232720 686329530 303201739 14975151 831152035 359879914 853388039 327845734 928015987 255291432 505013056 291195644 57351843 747780549 369827646 309769534 307540767 884485712 278743118 535222214 168081366 713529513 272718664 557357812 158845127 678106866 914851210 566808816 167617262 639697304 622597624 835433130 205006682 562596944 757624323 644863196 435657245 502878486 651315870 617368324 599223630 633716527 825107789 931481706 185748501 589624357 17763086 928259360 152561557 575188684 404455799 659558142 17323525 649835074 335898522 232720036 921703327 745606381 520885015 415247481 878949794 258228086 588416787 885176239 957109596 401102290 893826362 868237630 682422560 243289150 438978761 481906405 392659269 781251648 225118585 526803501 943784748 683188129 163901072 929344359 760643140 422927732 316234206 915986603 96181501 277388059 407267002 95634134 783708111 393780021 437265667 53235350 182907457 552491184 945531931 690359640 241963993 675023810 362434548 80241749 176652075 299210469 84689411 598640523 366920400 940232671 72385092 864170181 56654959 143638200 763717187 81494163 315276715 942634187 379594760 399549771 490523453 932699567 78634799 836498447 987450840 979646027 122211793 71410633 524797255 66808265 504862103 465521188 283126605 595051166 649957549 684476062 228653758 878715270 45942476 251398005 611952246 299973257 719846450 524735664 275735640 950559214 975297189 414635808 957414474 112425292 753432179 818603871 556999493 569300095 583731056 272317642 760362555 103294634 754440191 980743823 585746741 156543290 358347264 65358487 560468537 78500583 667313127 552355997 657842778 373379238 876049321 519562018 496941236 899736769 657523649 78180977 352666986 54694848 15919160 430285204 940993700 374351739 43317660 598070120 127453588 31545868 695321605 637421452 552950647 901343449 175271948 866693480 810837130 134626186 875967453 549192493 426360093 777794842 622778402 629200081 954357886 134924480 405411090 44514071 9474060 4151042 57229679 754326660 923943461 72497839 43087229 657241197 87059764 385986004 897557510 963372006 84236972 433866453 31505255 482193618 580421641 408795475 550215290 115664598 435018186 533442872 542742953 689966182 812584570 61628859 176350685 131490744 302097837 336566873 784748431 498715598 669568250 118884818 544112574 17454447 473832201 601978680 852332785 335047209 518061694 152837340 671654450 793289049 244932879 404445018 709698076 234038043 242912373 402377881 359273418 389738843 367079792 308598465 284478437 486255812 729031377 339923272 899619737 193013716 281183331 580953580 277397404 269922762 654936067 225357232 633798958 249082796 479285909 30847457 387346708 68214091 431662336 518730512 551923359 267953214 68450104 628384797 522149536 636953323 346538296 152264491 96803962 22633331 219466752 881774246 744954640 143712457 617783967 107367491 298461141 322441127 949120288 211627005 312815032 11608458 961161634 126026520 800410687 439780287 950745416 277490978 877972074 737752656 966701371 867954416 941554635 618035995 427043243 867218333 71407479 420952764 623040725 696568203 684829963 504799646 931040762 545448297 42826159 976050416 932266084 538620713 685986576 907878316 826797671 600387850 619299943 569423761 146138205 290122383 566020462 303094820 349868964 653341571 960471918 876111291 85459372 64870141 715010103 904412266 66259687 583414358 496604955 1961237 653474251 392106038 612203514 70414942 356703706 562992007 516118076 743214524 572670116 938907773 364018124 47123046 395741366 658829202 716802084 717514328 305238189 417080464 948607808 228576606 261114922 711420800 325003428 641973257 340204761 978315702 81316452 318118063 774974824 270536398 16865299 803547249 403804310 698373038 686566861 478954549 210734117 386609024 712332602 289033646 84276698 742373051 696108682 791002708 97049742 976843800 198499186 97032295 720234262 294325150 190538289 935665646 846066008 659478936 737356941 731789245 255901500 60237724 772183763 486684262 723596724 715885954 87855320 202966353 460131261 398695026 973445887 706737055 174929751 935175641 521922858 124647237 192299147 883110502 858749897 892293111 806671982 192565533 6347987 742457403 605511192 570699323 97178307 912982610 835586479 68720718 434258338 793878868 245611865 129531183 731454977 837359124 87581259 34187508 67820017 95139893 497123260 755104005 370467344 306381085 314386928 763977997 816460936 966742783 362066741 329225217 584780295 481096655 215170262 631320346 340871872 340683344 300494388 301823202 44659575 67078412 37485999 905230880 636513899 753041233 794021294 921432301 605723247 532540470 393436583 756387744 261431255 979403679 169452307 939486178 305092995 916355889 813854324 380829085 804508121 941930333 501687892 737399301 63449030 423896666 554282569 176011415 86455233 86951212 233120231 634920471 219965128 539889816 284374997 242599824 794569570 563306544 323752123 559821656 754355871 142760268 102187085 944680970 965761809 331567116 21305922 946210701 457692631 613525591 152152928 635726347 249441689 43639519 192621167 128546038 65537925 526492698 793803075 455953423 792546386 162081612 861867442 186358359 957418813 65802618 224864420 119505179 670502156 332476534 666324224 288611569 206529292 42158550 377493691 2023089 875110425 11236351 568855499 975075973 471328651 582368018 652635445 379869395 43470923 620029959 703875073 677055828 623504836 263956369 90634308 987505155 27536627 600458545 10128918 252256292 538579793 381167152 559744156 863360322 834863076 343348896 130313470 394165813 614900798 811220566 845974385 167983637 808175984 5662196 478240810 124905286 373217567 556122597 935116913 862230137 137140842 796511571 732060557 910107551 393714439 456009530 954654159 170984180 270472229 148088155 828444053 259215868 679362436 201422138 341776958 609245830 276226670 541008687 683102006 984001444 12573359 302638410 847692527 975433906 220449178 465274481 259948516 594498647 415294739 465808201 224974741 768509819 263978620 684369730 573484431 347171415 280229319 474210200 847511138 614181219 455965799 818158665 588025000 414233698 690907226 549269786 25982470 372273510 352401192 892702881 966584359 331324354 873446622 193791283 235641270 278206734 172746004 836507121 15642997 627512883 816250345 834056642 987073827 560469594 857946880 815336024 107335818 747522040 65513609 398811434 678990974 628831180 33727032 899729530 534535127 74978262 194771536 522691662 914036345 135364197 585871506 724501369 430715980 564240140 351549777 373181583 235480134 97649063 363006048 499317493 821008222 171680604 881379359 650426832 965506456 42444694 319822962 191432465 715607806 291474184 82425803 854158449 656209058 21432498 354693149 285220464 319751581 19763413 913786342 542670679 999696914 675465215 106415918 222764084 599616559 698753027 422732930 122013664 917181726 380921597 405475322 280838140 226432035 886067792 123669557 957157874 985336184 781128110 24143190 854222318 836017514 635976198 198635533 67906029 758888783 781637780 811900047 886153387 226245245 786811872 609643420 781669554 710565206 838109876 457711994 339648341 152666182 998364453 60735222 511793062 153297088 356145548 652509286 559313802 466891325 899708818 764478125 45945000 252660030 163490594 694036011 988881267 455912016 656541550 605220815 974888476 320081156 64105460 974440978 802747818 509552373 666718072 931878898 801217252 142488770 93387526 636800503 204197721 22789913 387898612 800992040 984807521 770027947 210249178 813293091 841017884 292248625 336496032 576221699 260951156 929168751 983495794 290674542 412995096 49027631 454640581 153910674 16014720 138692163 985344336 758463785 640246767 721383299 311071773 804689770 140055658 513885909 822553462 585254691 758489283 548081954 132788207 647343005 550768782 885431389 857192549 154696624 303493682 888814205 187406589 490619578 216671189 718757510 913985569 257329570 188337764 182987653 487721863 673239510 255075994 122579848 625766185 583105101 265434104 243713709 12356686 628743299 962001861 678547474 93032067 765239169 250062863 517637860 61867673 333340368 780371635 662477142 842997676 662614924 250728525 389955488 482566180 342854994 161639240 993744134 611027115 488387913 224148181 407859923 976393525 275663642 172853737 842160471 336011774 509586947 955141701 769886957 785016972 365494715 324407666 540797174 965227691 680805260 735513538 505173215 506981229 310297415 750651211 336602905 425509934 640838202 368959213 425870366 944442776 569309260 285783889 121157488 984840848 921980639 563195880 298708123 524963150 137120736 447051755 980698671 161119312 18098889 883406678 211381447 974968150 649505685 805820919 787326468 495598702 575692234 74251865 783188370 827387630 258994042 496809175 937758245 186854511 81500216 689553041 835154034 531699161 880307748 822925935 558829635 907019860 391509732 88724512 267946843 19137623 461245606 887109409 927964813 245379230 836245279 788497836 396171446 90266412 902888079 982665677 263190970 917826129 533394107 212175954 28375934 168261019 288607729 918407127 426413816 746546924 148231177 226527161 475781920 858290532 831324510 790174496 22015997 518847091 298729435 781278718 587691922 926875851 628943851 782092811 763220215 655404904 915110279 881301447 5620546 711343761 707944744 130093433 553902233 531408589 25217752 214595634 126444322 244530679 495733543 362860236 409580053 772851749 970847270 549565159 102720681 911161023 793089144 769850343 448707359 670041967 721344578 832700417 148775874 54496043 773630514 156082475 236964327 496664366 901866620 860035622 756097765 430131198 642328035 958098299 819691294 494741097 680737449 981945463 612952321 69255805 174478237 100476983 15606779 334029466 892282134 418523799 874286983 397925988 141964788 328307522 298804777 257203655 179833498 453726374 577727084 168990201 919640569 36498687 752681953 66163314 720838276 651704649 902942752 722017277 709807423 259028559 218819534 955069343 814764712 970284961 513396628 588609454 637577172 237565077 617114407 492717259 823084886 239845197 946222654 793293526 523515982 426955184 275410332 351021052 324705122 230231155 232893964 963239346 499340737 839382023 512509280 469420466 657132063 335547824 52067698 264023300 546329529 176396921 283575078 608359665 628956504 398417453 232388451 310837262 832653900 571410535 699768348 414929211 365721960 491068294 177236303 99824788 510191627 962821557 926500856 255430798 510514972 818120160 112316198 878398168 70311432 917003972 665912554 691810158 110656967 762751454 735337824 137261465 742331861 343797879 939543463 842191072 419097914 717105823 921298155 519125530 46732677 533509679 862720861 54815332 752984521 833452998 538071350 781650977 715149735 860775887 816335294 835784700 375555652 241445749 109283898 458974698 451631953 443591094 854256382 715981352 736995328 782396495 680440420 883900474 645649939 380901577 55448014 623462893 934603980 418176372 430696616 930686037 911475197 356084842 418912610 684890317 489922299 581680776 841148537 305313272 650010533 729809530 746301803 678311110 916316511 396267951 489942468 306882408 923430426 554995548 533326360 365129311 402379595 881371525 448642819 251356520 865825519 932955121 560949281 543645334 7918223 592338224 186594080 322702136 635250230 353079195 494043314 99311857 451031932 162392144 792908178 385903773 509956226 138139709 596712832 694905709 345572072 327682314 981033033 235562453 300791522 480565814 915912380 597271184 644250661 177111550 992984502 289310115 636822253 27845740 454752538 454315354 483748096 548142158 52503248 257690954 942092976 467499070 407840202 174235472 4558800 495283613 592672516 284771468 780199614 290578835 237002878 875540080 366911844 617076236 294811717 571723693 503320621 864811716 282280808 540437311 135716113 300644925 316236038 131286378 462039179 134915772 865167677 952598717 116936357 970897746 236691513 430164232 282686443 213758680 153855274 142508141 959942259 652602606 765067598 187330635 160901855 940887293 549518052 154262097 344365392 836013363 298130491 611963761 462120055 510297992 216218782 47269099 397393035 538187969 708516716 293516606 875928648 432534880 277249798 268877627 343802870 340674746 773417433 335638260 881774693 982775782 7917394 13317830 439945702 858530500 549777649 761976404 545429852 740417787 156832052 38974861 394937642 55232253 627734694 415027619 46079043 46997249 654296795 948356113 121160982 34766345 906584428 348064671 237865641 675882715 153167611 149360470 107713405 541336841 920701491 222292363 780438177 884900328 661128900 305154269 618993834 760587676 501645420 576169770 523158205 521369614 647380460 686545063 380490104 356657644 887695373 707657921 980013071 28009388 940805792 499267380 202579251 684525204 401981317 278928138 146965032 664591273 958386582 765765005 573181872 298743993 271548356 642487118 752726813 897116511 166080510 238274863 976129345 536583164 282692161 113620303 387852668 882541750 681828749 475342362 67440821 934459006 826289898 425569098 391014490 185836558 178631278 922211543 683813217 475055845 187245620 996383749 933452105 302447179 854339931 806996065 838734612 640043087 180956431 264604863 128902233 232641226 321132416 855755324 2336805 818331743 311306989 364215100 412401180 686833011 590495381 760660588 641415522 56291126 83317696 939872192 696465831 130087589 552663239 872381811 885467679 628990331 196612093 602710283 914698889 163562817 643271369 998964305 252110379 131800136 487275667 753292892 152262357 29858986 366232012 196641929 244391386 308085063 524140786 750823289 15978269 714159811 168183173 144758299 265849856 374347923 816210192 899660450 711086194 693243886 841225764 471909260 71115244 945315538 731649375 826968220 284609640 411373324 29752413 587015645 895053680 949426470 551127245 302906021 380267794 144036222 626629985 897595537 60384481 629946162 875552465 324222592 138192126 137868073 660579550 82536870 395683087 796224788 127659353 566888050 102903617 128807532 100463372 275764130 189265227 474550129 332226777 651699003 432921962 275316778 66856091 944353670 794848104 52933483 724589632 266465306 44379023 141767622 229786300 243414229 896781241 180396706 60338951 846559447 716898368 691383074 101708064 213958543 57562380 416033082 771293464 578502574 212865679 965661343 915448316 712761908 475514552 667251669 2081515 804944229 711962636 400984862 308333057 195174348 181038734 840268179 489534317 239871293 849197773 575058437 318819937 832829397 570616031 36063766 890551828 152319736 802024802 981589808 748670669 488243792 571476604 756163973 80636625 34289878 619265756 107688198 372889975 824281028 907080888 190786171 829388308 109434268 66598095 766107241 643762449 854101806 837670758 831662111 919899346 610409613 491085133 157765302 157504717 735707667 918338775 406232080 671426683 861774692 114725605 547028949 979795039 364621939 934627293 216922226 994471682 625657453 508124333 238901794 783797750 247001807 484379081 706933735 880939736 763724897 762713651 429604485 791152711 837412908 338923630 840598927 817899760 310464647 811016075 756142684 116535427 119683084 288005663 280288527 505897147 274646689 19613512 509040010 228045914 588840559 728956845 449957508 93366314 992839404 796536442 569352818 986690048 906435030 742793832 939055255 186354100 200867378 552871607 229426679 611798567 833112904 371223591 961549413 376371268 337673646 240894987 635811703 997556737 548951618 626542392 619024785 981173587 960038183 534030605 463025879 150307135 295387337 577322094 546688572 868169934 418626266 713935563 654225017 887375379 772477277 779071771 189375754 919691561 860950927 449979611 680462140 951457073 744200961 589825808 959084830 883827029 187178627 455966539 55178886 408406471 838086965 45124769 383795734 965550274 773614458 311443632 398956089 392086923 29258750 320382622 152299544 555582312 321137335 415959579 537756339 686846124 145886684 590137436 506454469 532517813 318245625 589562654 1988311 718983136 705032660 20492714 575299133 40000666 111458180 442079181 799840779 158559830 183016293 972719323 807387939 720112524 564136987 579299508 529366572 394048961 31063697 562265280 793982105 214730874 678190332 133673708 353301921 847075408 898331610 958780078 904219970 939420122 444496623 94696965 856799559 183998138 637290052 65819252 591084606 879048859 394685744 117082636 796203650 973022764 464065361 543720037 982986546 729920559 83079559 912425371 144472887 488104542 510076670 219241298 684282430 447022214 112133680 519850942 326549954 39625597 711551956 974464144 424886276 117488665 196529649 368548361 417821963 446277180 776712914 476644847 581008806 423744467 820782091 76430 326200942 379182029 526677369 961484225 193170631 643647272 780652607 943700448 667353556 884163556 286067147 804181207 60506502 408567307 482034896 706929425 945318297 893299376 508440139 18432131 72326795 492789998 878073985 836676527 898133154 975664358 226056186 79093402 765482227 721383619 577759377 881896400 712328272 869040567 445294173 864881003 542294623 484701434 813948100 323350535 248740999 335960275 55440242 723947465 557800693 210345865 589460828 213101410 863354277 41277036 219759551 374006023 723472725 671515868 309081884 643613558 535349391 718709049 474908737 845401333 916265635 86675434 266619205 582079571 50880166 567921767 604004991 602336231 44124284 182925348 385584022 12641933 115665868 467341737 30940790 995890348 347599625 224092541 191007319 510639413 970715237 549080371 568051374 70984859 450664165 224471653 466603589 562986973 724517712 198389685 231048740 52111233 237876534 636318156 555299491 932661911 234747889 25803360 879087196 439600050 762812319 673013545 679546677 351629813 181311016 328752360 118303065 205703170 701739070 718682730 753168443 232709385 995956825 119603585 941919642 507996606 575528376 337772036 213915256 793514341 861797735 273949401 40565794 319886527 224894768 184200934 687128879 623746842 962041519 795643427 860360311 240844625 91566660 787186821 451119646 142856893 446995481 753648400 326996628 760513095 760889627 828255953 315123085 30019933 768433154 796462550 920503042 515928821 388458578 950155324 681958968 930616460 635247441 827541797 770641087 940411178 249907980 175769529 735871335 397298271 304520547 895101997 414553421 978930492 215087856 974558905 242011350 90890596 711444509 313884835 226161327 669879805 67656218 858102062 844701900 679106736 338117088 304593077 688605543 120098490 564355886 161432461 847840263 581304788 480415118 544267544 866918519 979469129 442792784 90934980 983400395 512769762 488145035 245049089 336925536 967275003 375299614 53105222 580419547 642887788 942647476 98245658 574386214 469274019 116865983 601359878 628730998 608482183 650091122 442063517 540967240 642846608 922159313 109479030 47935585 996257215 780746914 722337078 107419597 521616278 350075510 689975943 734552284 560070953 21314727 220777243 211993905 196274697 106602579 427698604 746929579 482358870 256488035 364444668 86293881 418054072 696748167 67019222 51114766 816774746 704418873 856964620 27147558 17366007 228677558 330482553 673881544 775083721 453958921 828048893 801787709 941965973 82686208 387208578 5449499 767303086 643238967 110710527 186896701 389204456 430189578 915267946 603677384 675243937 618214309 621041862 673342248 544686783 419021044 286250782 114846994 948762032 587361714 634154373 794446209 209983085 30421600 794715411 637480634 67248498 800506180 258637802 832638795 375032005 434473840 46772280 437769988 21946101 736598973 579013418 264162308 266337303 418024392 309634560 920056241 226054347 164857083 557842168 880796597 166185783 352645510 388983390 704587010 534084614 725879139 342395268 275406552 932000628 727683921 527104452 275798459 298423868 982388182 147650433 705949812 573436068 580730949 234557221 367010074 398514554 581429175 291231264 721358859 570717462 919852040 347376113 572781286 904261718 110670055 737947412 895322525 980646815 901599932 260490777 283402078 213022174 915832775 973925006 918826412 535309708 402471171 562550800 676251462 161417127 498941754 467330880 22675771 595783860 858058751 734704842 347776478 311412162 180857508 559780959 526493132 805610342 885818191 344965559 261460712 710061248 764036580 28598680 234129760 717466230 459722009 620094155 124330153 424436663 796407135 149487392 27891837 670892853 817268220 227849332 703446494 381688370 217304565 633038760 277853726 708787061 511093531 2492840 261213134 140229195 903963910 289278564 925478858 574824841 463493656 672341974 798151224 149990028 421746808 862074628 463354755 791459390 976946968 265558260 235193182 344112654 340831404 627636667 481706440 6692078 240845497 854761841 860863493 319300190 758717058 326349624 114074015 91977063 433207837 10447934 680625003 404572563 659208542 928428723 579137671 544334328 806632 670222033 263120723 622237241 524835106 687622105 936293505 581290361 676526907 822181655 63490049 518473575 328674862 940922076 372467731 865911097 255990712 603669380 919680055 592842923 857710948 370607731 928664634 451503881 952400770 610852621 848124722 658723354 812675626 280672201 531494012 462024506 592296507 964002593 973829306 455153735 225019486 141976212 901648603 684688034 610105861 998355891 947879697 456121406 995349605 345383688 587178454 804178067 457899390 847033138 911234292 182715289 129237788 531163603 668895346 325947610 933862863 181787796 10130344 866537060 426891754 903530025 794230833 707123661 922377874 461525323 302041841 640250163 947591857 582631354 911262483 715395133 943785457 622978884 5068556 171174681 438128590 905078973 534313880 456955773 960295049 331696889 924555455 886343591 56068649 643985884 298456777 537085789 913554300 360541013 217155402 275900141 158868766 397368400 217343008 722141232 902859889 126133708 682860144 140066688 480627350 135731656 889200548 279986376 814811523 101971536 561092725 874224243 672701164 163180665 668293593 898558582 262525782 182408534 708962327 487739733 869514505 684371727 461884347 557195022 931409681 968047052 494500504 532420665 22579273 489306304 182046927 71779555 75131472 865983783 889215423 462390190 946701968 10308928 579535637 35139779 7504185 5574487 367817673 15227596 539634753 225265341 803070738 459436546 799098986 435024077 792168312 335350050 193925181 225170923 542209993 631093362 317228297 643767423 234990611 326701250 615724519 447622651 721831094 144232550 116013238 184471515 283147096 169081406 441985311 857709726 405435875 841311407 79304594 665570002 473524616 516197544 593111625 71910923 846599115 543459486 94213699 9903069 241660776 472449426 766854215 757668076 784540530 140429319 700735462 219360231 570624059 85913869 658926201 247004285 185239645 281512762 422824478 602238564 581701055 78503340 38084290 535062630 895860875 744691467 416644370 50901833 930816055 401905794 833546628 921270495 416921214 97513162 351346527 694341892 614987366 802799393 395981733 675589272 554666811 69512269 48757287 844078217 181400462 171843480 265908863 464433861 447301182 68559327 179043598 706501961 3654512 804474493 391009786 33551638 496447888 316773464 561949749 735798582 406879824 693034207 719840887 290385343 904473007 605639945 559582271 556160709 589467886 710673489 709405398 911726 371376541 957410752 765660237 328312547 420823182 192523492 932808315 663470937 764231903 884793556 645914112 131981063 899846897 629972268 833398598 391626542 104661875 717650711 727778172 736229662 280371798 408667196 220799388 600005412 419558876 912348118 890392933 426580381 301457796 649518498 399111773 475437034 375946014 632255718 230082263 87883638 53311931 828490611 446490347 739369138 50254521 975081114 392911224 332716570 999320765 425138239 363419431 386167601 961134769 447776194 946078568 166492028 922067659 268410648 765894518 763459477 3512196 665094580 57027405 34524174 338811047 510695315 103822009 744867984 214709819 696921149 514545733 60681922 188672917 557498303 54966350 503427415 915183184 417378225 116017653 209284361 114967893 791228977 356168220 213374363 384885707 947854051 700706939 37389525 813721128 484001783 428351109 604693899 605409066 895347490 629950075 537696409 768606932 678557860 433430119 854421982 947856755 490510914 124033305 666021700 901132443 239412301 244931879 40157635 722209316 496192662 308381684 625430095 945578808 607719809 874035879 139879148 55412035 592846064 36635441 430451620 225843445 211030869 896110918 454055306 596614991 575548064 484834158 508028347 210066064 554962262 489985002 959577684 962125641 295641466 805091792 735106947 743465804 519462299 113139701 929772150 912922295 810935247 441343992 102447724 120138986 588446389 467594564 315303334 956130198 929999472 623621642 948424812 776753071 573759923 574464574 817613845 265130605 896787121 739835557 772518900 21058137 551968296 562516421 253729394 568951866 809410146 732750060 710857207 514886698 605057066 933943094 814459381 78033027 696695254 101513346 853446116 877248744 227610694 643859065 670404680 608265030 795483105 255282056 578842030 704189650 344028049 296693739 113651109 198470920 556406736 873086624 148283337 222162092 313849757 557638769 357471930 90119883 789982075 511542508 935099173 26460598 818779256 269459309 582594744 158877708 944502063 663199248 862804786 420956082 753937594 320372414 892665172 294463189 239991232 540972587 353621993 549118692 945869168 576446154 560129215 540902304 6438017 30871521 14033845 514467853 574228528 135455859 165801899 531224948 617936707 351263827 750751115 489054831 883794697 867612439 826562374 230705618 233263702 377285922 167474394 561012682 139058318 93397146 953536841 339109565 155748496 896267891 472960922 430358114 436028880 638064993 462836704 125924532 231721282 142994661 416029753 389530874 394035301 289907785 70471106 130730684 194139196 79155613 48449448 967215314 208374360 14543543 443056670 734308950 676184529 801418296 657147228 227487660 681652802 748353165 892997286 676616066 324743379 835939551 226141509 998630348 607998256 202546219 251713421 292428999 166162578 131540014 636545493 500887026 440759480 624493685 904829314 713743649 249802468 414189898 449186303 728840035 421700840 87978187 232496572 477456404 966155290 38619093 95235380 481925084 975781975 60704016 717697003 470388134 451898628 851730927 264280425 279147941 301255698 712800168 790971967 337755221 542269172 269373501 943095050 674591096 408404396 151651699 155014509 357675297 273597375 420334557 319128335 257976992 365816634 133807570 211004068 828246416 421727156 119273077 658718951 131373785 252783436 977669802 445837208 318362533 764962726 407974436 620553349 287902823 158500082 121734235 282867835 23199711 278167272 103591823 744709208 526878221 491669442 290083783 377238526 499870014 203428682 690458580 134248791 515006731 103873484 348928078 327310165 994938696 470264607 278908057 449642736 409932578 532485538 355848664 44481071 345304065 949151547 978147324 934740761 152649878 641431636 548668097 419039935 798114276 315087083 928503972 241743934 947145258 808917880 113364974 508393401 850300920 843176452 469985201 815720790 39818529 352272159 534305472 366793292 110853567 236539610 310053057 485081043 862140215 653566424 565045531 153857068 797320505 324036668 688550395 571981733 390546100 338755768 355739485 324331916 234886886 296954239 586450431 953946429 805990487 68278607 146310762 552697115 72294862 533383793 120082416 31284624 660334946 315955121 852312486 306521613 604581742 184665446 59052398 279162383 284842904 694128239 256019697 387421204 302865357 551003441 29502111 408015531 966756668 224210586 576248493 607829344 342530918 234918178 62527006 186494421 937751311 166583238 506019773 502435495 941374784 129581324 971068692 64223361 898186835 404082181 877527424 821276438 281871068 436443459 181076768 1740320 341224136 595003367 533159901 803988578 159966781 909555349 736126052 267622566 745050803 902193278 218246960 457311422 422894562 779890775 44044674 861448325 597259475 346873694 156508258 175238362 748474064 521457243 387588511 452492971 375626350 883328665 604468943 728085480 518979721 153861871 704101974 730805901 371892035 457699007 162423388 255997340 544777995 291320554 857158097 39478301 64927125 416558306 544026987 369713701 194105051 994641309 715323564 22954445 693663268 49511063 549309149 993228854 520269053 411111639 670219787 588337807 899740214 913248236 117568018 378654467 93278446 587195116 522710419 401163219 788988810 547642742 704847088 505801789 68166324 811993774 20811104 356840844 931887203 466117703 76349400 156088852 334354129 587171184 259913241 457814573 747626370 508100078 779577770 482536764 378091588 964781316 611167966 387546793 402945067 571359872 620878282 190378726 277187731 188142522 956044624 27603055 507338782 622253199 284295194 312726724 157220282 272647780 550896532 898299250 665976222 243565354 124078843 120411402 788224067 174214743 389926474 830674982 394510188 838594024 795537230 801163369 351208745 278670179 794775701 858942845 665337036 337739990 976380534 473828370 427420656 816708569 529044500 443583204 548553086 646749832 640517207 435768759 591637663 229055116 362674925 182052946 499109317 150533649 219565905 26261898 520468401 322694351 712692160 85562937 370811490 167914241 994775620 907995198 5095466 720024688 454828465 864017289 154883736 628703596 762931862 25250055 209700238 764850630 21806684 742547890 723462186 290042338 46638632 65325969 52164061 37796259 758403051 495758507 687904601 888689527 826276698 236467730 689783195 124757845 229963002 21267170 688619751 222611387 274910481 771868988 505998793 805154992 275507887 245340492 158601237 482353858 997451949 805196354 789987302 633746951 238771371 158200665 104553125 978303261 262802959 924427986 627742201 742699562 624795916 669720828 537025241 701460956 953918875 257671459 834628738 646286444 1929338 901982375 541601655 257414807 848031795 979889637 417029250 990626977 596385299 248433481 86151098 803940184 242073911 58584647 125475197 677131543 368731003 766146137 457117546 505336502 544040586 158732798 887607667 141150371 388242131 197772228 384595654 15903685 816982159 439780157 366687973 265710741 819383487 602423297 808183443 202814992 852062247 847079090 792851160 309036736 44669020 536586750 938780174 519600048 654055605 54816660 328774351 179893111 186058065 42701104 175094013 824940339 692439576 509172114 924145863 521675146 370159551 810393478 204315041 387954090 258832054 942649566 86300484 691364940 745103943 418539380 609847483 444757165 416484721 373269547 927572300 350347664 591342089 956519916 652968844 800628807 635550630 178598570 486464093 267827623 398663338 238698593 940286938 548571407 666999613 292326415 736524408 948396387 916054606 335270593 681251814 99994131 81525397 654566536 816626211 577813526 636276627 934230913 563917423 362088169 201399950 354877643 189111898 201051026 581424539 601402259 299123386 99729822 562945166 418776073 555972263 630025256 569938443 686127209 679297159 149898442 213686902 363075058 474507526 121246380 697538307 249327603 474419736 57015164 70114471 658489531 368308730 787226735 979340067 400909991 89682992 125563717 65239042 860316949 755039878 721976643 460498832 915162482 745798674 4382777 774391787 548645425 223290926 437076859 566130157 731743688 491213695 423302374 427086403 73883073 851327217 367848423 271651931 182557598 410064054 115710052 961486188 111367158 263129936 992769496 769132409 53445986 792852607 505542723 172667464 251393927 578612304 747775780 415994988 928465929 400123414 141426320 141252666 617801118 547684210 512690205 577699029 166341891 303820098 926426084 940265252 38268404 606530742 924959121 105372374 817743427 848791619 490118478 908857702 648001211 120789155 20430036 312723219 31459384 391738843 641755744 162741221 970257055 855250484 897426873 843393707 181029849 827721033 84653355 255703550 437958358 781127411 843956367 789977410 916118677 605466709 509202498 133599130 578832661 119809243 370541099 292831480 32425054 235582778 689967289 820629780 373956999 970367088 723543518 420984433 392768423 71584961 160761374 636750165 959695075 917161142 941537147 556357839 567736160 896287783 974083205 340827064 77813336 614999855 870457682 351188402 672900350 636984624 837744769 959759397 93600667 4625370 13659191 729564479 672090738 86094878 426759458 634737400 838272730 288529724 283682170 643575828 637555246 560493493 764607485 56126744 340744909 839633493 361563887 665126230 641773346 426527027 556111649 40201702 190084768 405689512 117163750 543547560 725326530 864122970 731454753 908518210 100898312 830495799 789958194 671835689 841887488 10004337 182100237 198348689 784123193 359193986 595547687 387326076 680874061 813365045 300085882 621041074 831751905 297382800 839745683 614575812 430623133 862397161 224898938 15571208 452147250 853326814 231367627 642827938 517661279 333381713 178319007 922113910 86285536 677454961 537967262 778332217 797303940 804876718 483800313 752210781 713589022 264417222 357866082 541969961 265000069 979372992 924390426 846847905 607972253 269376231 189225191 22564245 247796556 753339853 349068311 767446943 726141324 658542929 586343039 727598112 143214163 39894932 411694974 921639231 131343520 187949828 685469692 690577898 426913157 279438681 734524260 918802654 498502413 752657033 777967280 669944729 344128341 493842394 408467803 925049698 108723072 44919515 928333421 790294603 350927032 977073245 53658995 654893098 59415342 377172862 818724228 790071715 923352350 723455138 65424959 381981979 614764488 782653558 716839625 446415811 463629947 819890927 776216785 897470612 624641923 217610308 772021133 661366094 475634494 117139968 830232762 886665593 57540364 530467819 297190819 228093797 201848410 927471898 318753808 2677547 403556761 601558250 921794395 985536938 778292035 469605374 939972960 717507981 613067994 880179013 119734150 817288254 99121128 569905904 951959999 433267454 651947778 260961662 132134778 203109831 756431551 5464754 667036348 726085732 801136835 653727383 299296521 818089315 505514678 380634243 219699308 972201247 175529804 213265427 652085377 662752951 527712577 844313641 68047713 146212113 14768725 544046065 670435508 33255905 311667281 128608225 248283819 392027292 259533835 917369012 434014971 975520644 90713688 1909873 31501278 553277091 745650464 871423840 706079006 568058567 559568971 621272345 866952458 809354374 887215816 824710519 454847351 881852230 1225623 773462940 782351042 589133355 687883958 971755256 161510101 800590630 920764464 921604668 924982296 357415919 606486811 108758119 694583944 929574152 779512458 164633018 462378657 705587382 699502246 832838855 502525542 863596559 74230166 379307354 35277928 906478052 975023756 370527639 337953471 286843355 950012101 809193183 598319109 189830488 444358272 333674716 178556516 926491280 158119947 76708484 302472841 388887415 534771890 899434262 540851368 804160207 398576086 498109715 69117827 764383520 278631381 517564233 888720221 944594875 981016346 636572107 203010823 628104630 920836379 210543861 389429462 243574005 896081740 398368365 244481449 765455133 99117108 180773404 115300322 146531487 461044315 626263355 508216950 196618674 302708053 399606082 376124376 415295322 565669561 835016951 385987847 793385052 306592556 389557095 507327623 976442442 461739352 21673700 534079847 233101436 181036785 631656462 640195135 501351187 834802092 820193479 873039914 329240050 432366158 741775161 952467412 129314769 971144612 302414555 233066087 229078307 945767295 931006315 560042648 290010410 248720309 582549481 215035816 675877103 43821869 675599266 433080414 625033281 999474895 429914412 794640391 720612023 336693391 49336676 662047094 140759220 653004389 544172652 736782 606962271 970246994 574025907 552164021 563357352 880261734 530324969 310750935 491235400 569858481 300429839 213812072 976651454 955234121 306942565 997840364 824599381 215945300 917367418 411426151 969186331 676917245 84291361 604457831 114063590 735150709 821043575 391236352 264518747 801386485 86385632 262053842 870968033 368364992 419568904 586493190 363588004 68094240 543133412 923456582 877387682 65839723 466685359 780179146 40630937 669539318 938942702 762136658 826245137 101452071 851877487 100186656 405265497 635289445 627860291 656039430 775300491 996940067 956321990 733363547 307168391 365818077 389421472 55732217 528938484 318974484 724344507 630977353 856759621 607803988 653568586 169261366 472625585 288323119 930737868 19696956 953499959 680339003 968465924 483294038 914241438 223127583 311242751 904164618 160697211 444113283 675253775 406209129 897699618 199103259 320080851 310754053 56423351 805133727 647641645 660722429 944976926 595856594 405661771 686121979 478467595 655811713 211013791 629575721 546122995 220303737 814851046 900311871 348134680 340211352 952567334 488320892 411403395 133227968 395691948 417760423 556203522 332048602 603433481 112357643 403325999 753004762 764806938 996825215 60498539 84815544 957361156 673596258 759901660 743358585 22822965 677890972 587659891 164736037 492294238 736510875 29457896 606331599 283743100 923241810 117803710 222774158 965283798 17412418 183400763 986534027 592360437 713058673 161706606 443958764 183661486 75675244 212764464 525277923 192250654 770140746 569014050 35734186 1406379 940727722 801824174 449996679 832030972 410423984 193781504 634258369 448746506 848911885 462588693 233745067 251940369 802567671 342629547 991526303 149018002 272117032 161865287 794605310 996510045 978264557 738874686 211567925 701864835 867546894 914204327 437239221 204159073 321080551 3583072 406491127 710459293 229801041 905998357 986210942 577961761 857403828 824624180 333543382 756674084 692028928 791862004 964745104 415956000 1106858 67194201 626652997 683787739 453226929 485433384 958782872 843398238 468027544 932734194 383342903 72087553 792705394 233341201 76352973 278440798 38449875 517890722 841333018 107283546 279483352 377056657 650270687 619199778 272667432 457440907 283538148 644869929 181378549 954125322 241799676 589854765 80392430 607827276 435459844 556755758 668239190 386491743 784765661 997970812 631508980 959918604 272520817 5056940 905631252 871167726 454426543 835102361 971100302 124493928 544404118 587242086 541460670 556687520 244305959 938843520 323679631 21919367 68089195 674824603 653306982 207429842 125743218 169472693 847569474 650786055 268014941 165715473 192530081 900179049 645599048 416203064 351028866 297267978 936734051 502462213 682813818 685552323 308425691 544080526 296906909 359454261 46778091 603742269 380741000 187342788 730208214 351281339 420289890 129451687 126890985 369065979 299874269 533148624 752979315 479145017 52174889 888268546 667400910 924701949 974550537 790295494 796975454 535376400 533538497 698802796 179891340 147263114 761640479 637483786 279898316 823219651 836047226 388049539 329864857 287403617 787564209 10041215 947908465 952101200 919621417 104552298 185776353 669905605 557311185 737721218 583575416 901175611 605336351 326588869 755744727 178126966 557463056 100410875 418480541 995741831 766245167 137382579 516669553 664245946 608757891 283299398 347457289 543231667 507040680 537739222 14558236 742525777 786813115 286856779 918452080 723768771 605458270 587598163 530351310 248091261 212178374 194309225 427311881 566352953 288602532 422633931 654717177 306833663 434594107 988508544 629851265 429698839 168407117 71189599 827594124 872569369 92029736 520859382 82406669 77331423 562516902 835029678 812480507 456261007 830236197 649119404 633692250 877083283 60065926 613561056 737009718 23930784 939566396 573639429 523957920 504507829 457635388 923846548 221819570 483450641 890617861 257892573 303263889 305201220 219914908 392300013 53283424 86652194 878650510 812414876 14059865 635295177 613214199 577603469 935937715 385086870 157656943 10655010 858921134 846720063 976646940 315051155 474125209 712166064 199259570 48177107 138166979 590213674 155967845 951342500 439869831 518124337 87648494 162592911 727653446 113838223 679363739 526236128 888693102 758069848 525622583 139890358 634081391 93175533 483808534 993814252 610654401 233198573 605287193 136700975 133445865 21663559 859886501 541894888 886265200 305707564 564828075 500199255 798533610 377907743 746393500 211682424 143013360 140542941 765718650 68165395 672286246 774048885 323143882 340486331 396907315 17147452 898958237 198512836 91417291 169466319 770494342 452065106 192267945 448603407 311611813 493881420 21561741 231268395 607768223 833538661 562314307 49887382 777685408 677766160 853324957 865596942 814729061 271021200 758147701 429578132 49586471 136241900 780831919 789077113 276591020 1810679 415060017 891853133 173778501 30632519 19780337 500964077 402465222 800616252 512131816 804011902 402185105 72181761 295122713 326836589 395001478 419453317 632252556 624582252 618800665 782733948 320560470 9404539 233244988 353801837 70097296 245052123 788237682 466811034 614734942 851143448 800391100 957063448 746897639 434187784 634341804 660430783 8409438 51254472 999424601 537799468 23048704 851199419 546659677 373854667 823538188 475758987 731180000 640767176 433667281 172693551 490313104 504983839 773355675 499326436 171994535 140562061 661426630 115646508 312603615 290475167 546843063 28638933 532239742 999606687 239088087 816448753 601840214 389090730 800456342 738231774 366789051 241316766 945003635 69856320 125063561 915707430 24816363 113993989 305045290 329722544 688984458 77342815 288482442 842756212 809175269 612427977 182445345 393671538 209422739 760160267 335759084 424042357 296184632 161188908 432028017 289296650 353722750 246737030 536926910 187258506 766757655 378292914 252101228 999664406 799874235 976036246 81302678 727489432 818825777 150718044 284891876 304498621 183143743 882785147 725868420 714764030 555237561 197708202 170531882 646684572 196155768 397534452 117693208 449845665 210574179 855814562 446504979 730434009 873723996 686168904 407703913 181246175 511274334 307831746 597099246 999325205 928065373 779600439 913468676 344698015 545643614 780099089 271284623 984889454 427097706 862496771 432351998 682885438 278472852 190646538 519450951 920455562 483859447 367526253 8781543 841722784 660684469 371627956 593394151 191820429 127659255 315153847 550002899 503760168 25176558 375634833 596628419 627467541 874363609 372901 514403667 276839864 819401204 545241758 686067626 769635140 370750863 47655031 689505657 312105393 680932602 449211237 690925299 520058302 635127182 350355439 543141591 686955508 514571695 937455331 162650986 762079140 513153991 331059281 525891453 194069478 423063366 483035289 570771302 549656218 131755434 797747038 482582529 809204582 228486516 511824525 678654390 931385022 63446317 686772055 280330099 93278424 968902247 855328060 641460142 103727286 620847292 486934783 71595876 988218654 270537939 726023085 975310623 332462498 741906769 881793432 825172969 445861785 76846568 340087135 394660954 561266980 229920854 667293924 505297809 704334890 596442459 551077972 511136818 203136863 184910274 424805157 604451182 165821238 578576732 912892689 70780923 579193075 358544901 288754461 166564117 559363484 331586207 851006612 972835203 411981059 863545875 54502412 584074901 555613375 783124051 883089505 957532959 985771826 887879003 159346102 845511297 778741891 284154411 843034235 476625823 804867488 800367569 91515486 266647019 417332039 795944027 129411937 738673751 561600754 527883751 468902084 893162597 744344558 767381395 841659928 96022297 458039369 950835852 301446189 735090689 224672219 593677573 428775969 904075317 786475845 942813495 734386775 386388816 788144367 720108645 290285437 255121533 719322633 359678423 809163140 692488550 116792205 572838880 942741166 605856581 488878392 933038814 70980219 815194069 844810901 231979566 789607609 553777758 524633586 913538878 697168504 857335469 76474218 585718400 367224090 216110107 524611037 362012781 185160002 20510336 314833392 262388356 830200794 279308618 747886359 80665174 585933593 558085733 485741191 664458352 643571065 46265667 363191361 47950705 861709501 706438631 758579729 72589557 663806196 621571029 520684672 103168170 582518642 554458906 775744494 182903619 31621586 959968592 440947065 552522104 88019706 971915410 889133061 99833614 579324949 703223945 756244807 678888911 447733656 803743073 141333173 756952200 462720574 580873936 693354127 214779416 247189002 656059671 266522334 927615074 27069775 913220602 897399924 695695695 613600665 966350793 488474086 572755918 702712519 8878166 42983576 752135902 757734911 335056389 299768238 393322625 286300332 336010936 452744989 763026622 915013509 845560030 894695577 745643688 941965697 391588977 846420131 943012189 996886246 450282474 162443650 617270521 441409602 825636177 780963916 239066026 416958315 517955382 271368661 970440356 619268729 212453294 318228412 130829086 498768592 709267798 624947053 377001818 275308064 31815767 211055383 773755814 564829020 208259932 956876975 141017936 143074750 830900385 832199929 257660342 822134734 287935708 749076093 10095928 194835541 232719960 844907145 665002561 207370600 309234661 519774775 544778304 970485605 388442583 761581415 690343605 607397358 5305099 411061184 367899679 408471792 622303719 570126773 556875527 164763040 665375068 297901435 708806402 768239995 478397921 343314452 124896683 95336770 450453103 647384649 353764255 354757124 380225425 685930921 294788492 841051668 465080405 308039565 131253543 927541775 130356047 225861652 514475556 497348056 299734429 186136360 262159179 211293086 727783911 275885942 764708705 928589011 755471197 489965437 754232892 716800819 319919280 868438133 664684981 432360899 259661602 844218731 992740527 207349199 848131451 965636142 682366994 856449516 572591876 818123351 60384725 117475573 751010455 722007622 852430829 67681040 114801553 496940067 449135454 63126183 889795801 331967199 230040370 946665841 798815709 977001265 482812798 599790438 954698640 574458521 34684507 971553232 67470198 429314656 626786535 178398263 516916370 244615321 250107986 77329264 445840501 880029462 668886730 353133209 409843760 898702972 245595276 830552082 789566308 872548661 209099483 172870284 140874554 71532139 133423871 795314683 136091485 929037083 15238984 943833241 283108611 960564995 520249879 662673899 852681707 65063341 860801225 925867451 49338716 887072614 802296008 600232224 720153893 479982667 858683019 906087798 926567576 51684664 521399430 249856867 39056794 232356569 30488641 140345809 148300682 638267546 191224640 374266611 473790044 662390712 906961949 795182406 195289477 226676273 702758764 959873680 461078785 274283466 852302545 728047837 697043030 891903256 480584184 451786111 716296598 308658802 417034641 239600147 346898517 845615353 411494489 917194623 738481839 538106770 383299085 22364911 122515534 576724464 871128189 886940885 982220127 302110090 492687992 227003376 487849366 870289570 888261848 839495747 412230966 985304382 541580674 186258969 111952897 981082672 496515168 853674760 595449926 203085839 167612512 688590573 358195678 671079484 634220674 670592232 571876132 43119072 439489219 351487594 143752705 933376744 139992369 878850084 123268833 351910163 639168221 238997783 341610939 775622873 152293600 781375360 118492428 924293255 149436766 505433586 712685277 186724652 108063360 269812798 224630713 483990944 279463290 923239552 415887803 465871748 834244996 271798815 343869818 25660995 953938659 625095363 168095013 260038151 60181981 155500899 317256546 880270540 685656521 87830329 711641708 988207957 633842175 628747981 284756226 249828898 556191968 314309864 337162601 380549261 202412760 213048224 911329900 874931622 926675802 410813778 745145444 175659859 814772703 315014558 49562162 564845880 306313448 62937718 172998712 951142346 736603907 684344587 99423079 686332220 849010623 166551768 42109488 174934162 356876471 838021797 414887834 173299860 530953356 966217083 837098020 154402000 310775787 750604209 785675999 672711329 300873348 557805023 651077218 333026340 344630290 2714095 857566153 875101508 162991960 955500550 926241724 498444465 704821024 239067041 47992169 285925091 134911292 672788597 676513671 299225367 714461063 299521930 532053841 554314330 148899553 140234794 442284433 534728826 273398836 152000749 760131986 35637521 977419126 220845226 830164015 216519803 633610910 785015177 288336064 344165092 685861552 272696821 579789873 388996924 634953398 73468323 901493741 351962682 398288066 81113229 13619435 189537633 252006639 558024187 705356456 542186484 502914653 472478071 334878767 755528713 683760182 663856597 609159943 493474675 778165424 210709040 208012365 841887447 929562114 225880304 668767640 776286361 797116784 271669950 940076055 490631148 911711812 876402064 774264176 766747081 451595985 988090274 296741088 286838764 609652079 391252601 570092067 269875171 219402624 965337055 992602747 293403131 492085362 127684840 617381308 805435979 671241395 482654453 153147192 391373748 239877824 953134757 128531154 68358882 306715675 306441957 869059564 546780481 999648844 623398892 276781175 871331338 150229481 407790133 440951270 301709630 26229640 562220931 764894778 935661734 517609167 100242914 663611128 89737937 230511972 725456042 620964912 941691926 390668286 799206260 343116665 533677976 963850070 102552356 25432811 926453311 667696429 852694761 387573810 154021819 421207372 123665715 359375228 391294849 110934665 5812418 280631420 61239765 22212027 368491416 490271605 997532349 120438468 986585092 339678249 204926220 277954961 45735832 487081191 869946712 964358419 351650352 119877511 2995968 680438340 418503921 252397157 769132336 443171111 351795015 935680362 208696791 880612292 21452263 2298114 674055340 270553392 221842892 758544676 777151535 232402564 161307452 18048590 275056811 121855458 154790083 172939398 11311403 83146101 491485235 33547869 576110733 739545198 914223016 864494055 171149422 741457419 921326730 51805633 234875959 491908745 302740098 933396497 780786712 276295732 510869129 540915080 474826250 840656993 248492500 281840219 982186703 999391335 196463852 638883145 644214506 152886953 973711516 335485591 738956208 500027283 84988665 238036756 734272566 975284884 342088287 783677205 673942110 191014184 493353584 394781562 737708499 995137493 905225500 455014568 862145278 660869918 110070677 574806415 384961054 988919963 801028439 170561186 109767219 876633058 687021864 141584100 477923326 257174425 285815315 347501270 196142872 922186345 555967084 367714699 484237525 290002434 207895248 503516566 525022036 775673376 508005667 562319894 219883139 552636807 605958033 427078576 261461770 44444415 875629455 612646806 955673448 372525146 66087126 727100540 837434586 491263350 848224369 860040095 370104425 782477105 623612326 518993865 805660644 306713716 365539083 29669442 901429480 156351801 270516606 65127399 542167502 206795120 436909857 595987472 61222085 248703523 117411939 614240170 741470907 57238106 583771892 891815966 729253988 668907046 713651924 621444197 678561094 829030818 492831045 813889531 519858855 414118385 704138197 165226984 876076695 918773821 684992857 211059642 307124462 482554551 508733673 572609673 619930190 638892953 387726061 249954286 451861790 529210921 735183889 266464531 312818319 768846765 528662087 942824870 880422295 941338232 211529677 691266783 586111479 734362342 847962662 793725561 982202170 461491288 956922657 419351482 797691820 86101563 441722833 86406770 915209066 373607677 362791312 484281336 577149779 183255835 442791685 370278443 758972938 707766292 498341658 83798125 544227078 583176567 162791940 300472497 558193020 518247893 822265410 476917865 182490477 276635588 386657684 464376724 312563360 249117930 536101387 878992316 334012329 623886579 73830646 650692333 785688282 231141516 696667637 591136954 888751448 14517364 963740137 227764040 501490700 249822826 314859521 285690424 332705955 217379898 462336689 406922168 558241431 147925686 435250868 263764354 844785190 100501178 837523472 957818835 180270428 791244836 381967631 946436719 488093447 37611747 629401415 515486631 298487232 110587364 769381525 499113294 134358247 726384167 103101979 737577927 516764578 102867881 492868420 135570162 405635557 327428727 520230601 891704643 104073574 770273701 431971747 554799278 315439270 821393992 505924118 937291697 429139948 305532039 339763376 237225043 902465099 969912971 140278087 612573985 417608344 215150468 458471921 619598385 179317879 356864689 429497879 70505509 674079053 899194446 196590948 998116638 793615691 994757293 892208845 666714063 438938729 259319576 581381006 732157545 14678889 756681966 272468522 829234607 633723088 439306386 842178927 20642278 215993842 731255403 881005936 269366746 886535143 583477230 500665482 358236132 432282765 534002323 676348513 23197922 233223050 914300639 647091936 825559355 67091284 374698329 917861182 696729561 227060257 154917269 602647285 234138420 893433585 761368878 635800266 958818382 728741514 37547716 390007754 265557931 365279873 640113924 2929222 412974167 670133288 810811806 445108449 305505512 728875942 301921359 617464695 212449922 495633119 181057495 847573562 4954055 42408581 91860223 987107997 381847013 566776591 597179803 643550296 341476242 845178300 228603271 638783094 732791822 946160024 3378593 51764289 23677982 690234481 29992151 182112842 716144403 382375904 287434008 533057906 379098047 997211204 465742946 939274202 820248450 985219015 929589175 824177135 873721155 278763351 457409564 550604646 810368624 389646766 216960936 338534970 127179263 348858957 913330806 222827441 261281647 892964475 276045732 605688660 924614085 725995591 480261728 804209659 209273487 177473930 350969565 54266561 941307106 521498342 328140110 523464713 320745571 678278338 868372223 952375937 777804337 652589646 407068466 429632028 820660221 946034309 800927808 280194326 914075389 680664354 447422591 64584951 493324527 150471600 850190675 489481093 999327001 877351552 947585573 34498009 968967498 516251562 623356774 334240589 381596889 268913166 543735188 717225604 177105315 974326869 756670512 987781744 855681806 396240877 595767491 953030462 421859592 902601231 820178911 269243248 921264907 286704315 170240033 720279752 189718287 801336252 133770535 22759760 693715103 702062496 720484511 428764769 818655177 677337279 894683962 789900180 905266718 142039611 226556339 840949198 745333188 546073848 314733001 261757498 297482332 251149996 637254475 596702543 739129367 318410444 737703687 271381959 342614184 605804441 894160346 31249318 246222928 896306459 416557989 505651003 284117719 495793187 152745554 424571415 47276164 705533769 69404375 319103000 966276919 206323691 843598888 625404003 172080454 280126259 364187723 331397219 30467738 106721042 528359754 703569099 53538725 181723969 825323575 369908888 575343193 80320572 535071277 316477458 165968179 206288977 931588429 122447296 869815356 382627466 432094144 245598072 80654852 243583429 39897786 234562393 863993500 92258719 342482807 228917444 558795944 249593728 612597303 426423143 546107979 364371869 287507267 932039731 744303667 76343270 561529841 822000233 407860375 401049379 747116438 463585928 956638775 354354136 329685147 478614371 887949140 332042071 697441636 698421000 298717378 965918902 293148006 494589910 666532565 133348312 905196060 797178739 50562667 199538277 210830857 69926855 104970219 384506058 311815092 443273736 692307011 310467394 860615345 383111604 945851367 376450255 637893786 426878861 448000984 390057525 932826131 715331744 998454429 860443910 31728579 338066243 487832386 44664988 943085405 726504465 419415133 387464983 755177629 186960621 117741326 463226973 267372100 853991426 206180858 442615581 202388254 932672714 122035281 510730709 946855162 530189052 562117832 208569278 105489334 749488031 782035100 601757671 408739379 297784316 5145748 735719964 317962585 506146474 748406273 913001464 469819163 266342535 107188150 754612184 581448565 118869426 887053587 648539111 717227880 399082653 241543933 165976852 893348353 907519737 121703136 149963288 424857420 567037633 282707896 922069619 759770986 612187962 50149121 189466477 952854394 517792756 864167358 700750102 230823591 895316927 45752705 958348614 909873440 884906424 2784606 180277407 537614630 290043974 102651126 720263049 584951797 842235410 723643756 757338928 336421083 125524755 319146099 194568338 755728936 400077696 456582458 438310764 657437239 573687012 831512964 798768968 743864427 681894665 404120728 806168181 435602476 608500481 548841539 109760779 864779761 894639144 488439257 530947563 542480430 275621159 676231994 520459196 215416427 876898020 890874318 264688112 839961134 174962584 20231043 851315648 145431563 920336830 472245196 547886379 442344092 42445594 773919915 191548406 437214596 206034872 502333859 265542326 576793709 590788845 382125762 947202498 224895496 416518229 734661027 297905722 600513808 943933651 719524961 898071302 654328649 888292756 555602592 604866007 174768249 781550860 164034197 220744227 621158262 220284920 996255214 962727980 382165274 834085468 777520367 353003002 498921798 73006726 757674332 297617503 807533541 931801606 822697861 811711984 184021481 918084284 62881598 124171279 362782283 456504266 433055974 129873380 540351758 544030878 500089957 119882593 509959229 870068717 942732326 770695739 360768235 647101103 248778275 636330738 386976817 424174893 828742357 160245715 556582961 804512751 737346633 609706987 121093397 636237516 331401990 844149264 974383633 939489249 833535784 856871912 168132189 132472976 389917005 242887895 86718525 651075207 772997528 843668237 563085819 551547576 17103033 415732868 767037671 167477346 955550949 971625470 739518558 296529929 494674652 547447807 898888386 212066934 656617699 593648090 477165182 665023936 471592394 612991654 432908545 890959939 258826724 454123076 933737417 220520355 403444243 90657372 500910420 245911498 995816635 498578272 122928687 412073459 503066826 859005317 379229677 32795538 12409017 96015308 788066343 704593776 223404930 669207808 413551999 928863897 946188720 745928878 803742367 598301534 370511948 967187504 594612538 680317536 919017456 638497702 313770250 701804417 311430586 87853305 927994067 389133549 270397009 219524823 229741404 622607382 931115743 65783226 927144059 243347135 963921439 90335969 431434246 280947685 961919819 722794326 125101282 47089366 95839532 474666729 14951417 553944107 917335825 721191216 888863036 498390715 508918734 553508492 113607334 722346668 214705346 718588712 659417914 728944746 943644372 503166962 530225667 498035112 981570931 193132450 991402769 250899559 611566483 796587451 370767999 58125287 675476146 261258113 265362287 62867379 707181017 540823303 71059723 153042083 493910165 297821731 743930758 928903120 120971770 565933432 426524956 836160419 609034667 927239020 637044493 564216005 226725579 620505907 335145634 474432808 142399750 213191104 18335790 708226316 872305049 353293014 113066511 177539571 823908411 856006654 191188899 594023851 358387767 83328904 228628566 716820296 483445081 673619851 942032027 131901477 672048888 413703911 968339176 827501286 96144117 158562374 392586949 277207162 588864689 826397462 635653048 209849618 96785436 213746323 489748055 887250221 203874990 875814072 423932728 581572236 132284517 560546642 193738240 433487680 480093892 380871918 807947354 782892185 271500767 753233895 373624053 914479157 999754566 687655770 4105870 93813494 964848413 760570931 419086567 988684812 356347142 563039265 242241993 241886187 650304305 401450137 708847110 979344203 826115413 340284382 821613690 41300533 688161198 943960057 976895750 757572848 115571717 188559802 284405653 101220118 203909797 942988217 53797145 295030912 134345062 829674323 131990157 208545365 600462503 741115317 132324849 518200829 416965196 887629005 857426256 648285743 448107718 801298516 549668798 935590374 125172746 695078600 589559893 879599974 501357209 731503223 86611252 518029630 739388018 607275112 366576779 821644609 299440170 844956029 326686598 31356299 508621268 294758224 981895523 693072764 59018769 481405258 843398755 880429257 198961412 508032926 388538064 153741918 59992926 151393346 101412351 934899581 955278162 722770936 259302215 208866471 769914786 670264135 67862284 952825512 56746642 612256126 657323447 529008537 435788528 792251319 859889338 538627535 268124949 117123537 748048787 940490994 833403869 855345015 717120190 26411760 774376365 438514965 257514187 630821628 752699252 420426983 419991368 894658192 552435115 703261676 513670098 161825906 502250317 540663018 616479499 537117616 561822434 11943799 479709596 219803802 682303864 352069349 750347064 124031952 802493348 545597783 586017689 797393207 140140166 341068983 116380034 268479222 439977157 415344560 314792381 477020292 690696076 944690881 581196314 669487521 815108498 587272484 170999414 252773195 890682393 70311396 474900402 773318866 698967522 75091154 841492154 820550859 617648193 51123592 839337343 617304078 974315014 367477345 428831736 125798597 775013523 118301577 701252910 581305686 909208782 76183024 981278758 26193786 679240229 735564876 623277813 652268844 861186444 785115168 307383730 186266033 14922885 745442483 863280003 112831634 768733205 23192597 469253520 50853542 451637704 218223647 925923340 63635211 30423735 112767856 81500978 469634592 927411839 493204082 640806467 158497429 933173830 630875733 938073225 263376478 607410621 153120783 228320343 771058103 306544150 33788257 918533127 188237859 47786258 787147735 446659836 175492975 750426102 492787131 761730207 593203374 102431377 431314219 785471331 374406464 31711800 901698820 247132099 881774536 499357900 246131695 955340096 881465647 462457776 283085149 160870244 178973613 657583316 557399685 856745155 702021051 270347696 594573158 696112116 306097440 503426110 19159500 274672796 292256231 776976392 911283270 186696294 166029668 158703898 397442346 149891586 751625524 623718666 816782747 813366828 201542716 668563449 702767233 886975141 528327590 348561803 691087752 49875768 942733801 411590638 790983214 877913270 554811325 836499674 199696560 857417210 717866283 376767117 156511513 249155815 464313980 808638154 919211061 732961127 904386374 977035236 431697056 567374954 137702245 828307886 729241528 686578415 413559805 306878086 103853734 349460210 880915579 116750935 308953947 23129220 467049361 148799880 158995855 572960946 267500092 918237717 630753216 412233369 754767554 893072507 154802233 264812120 985345454 358254782 333856264 946276383 170905300 633807726 177508360 343469851 848993362 180019361 862985177 449211529 964411786 793740532 157808865 882670762 484448810 364988048 688564048 317695432 831325989 752202274 822185248 669442871 810473398 279388641 105559827 501105743 78696037 62579337 564245420 415614324 99915260 562974304 404580928 221665553 718337166 742423097 534816230 269151380 415442554 401141860 770781310 352759677 801808229 303847365 218537902 320560201 134481719 138767037 988606954 272337284 476156197 386431039 609105768 870837445 740142767 737617084 655620395 684171678 623466647 773854008 242571766 36937912 268107750 770584117 232950110 731764408 70238455 846278340 179412152 163883350 627203169 369359225 47089705 116697671 499331595 871888757 928426387 905327697 616374815 709986138 818329002 746993723 476171282 604807768 406186215 370989018 276312995 847029545 491891846 308671238 65745362 277899527 189672852 79783074 342445038 202398906 690289631 196380570 182181515 745464207 692065536 472019937 131144323 689156190 625693527 701538666 357972989 101445762 725765386 505252673 903919972 470300391 306341132 298773096 175293548 526916852 290487831 275159288 333122834 62259111 616345511 357587719 934116507 849470070 695556359 224323512 60592275 988824687 928191045 291427383 254482379 508027164 629523259 5937843 628104034 329852306 120745096 566921064 519718332 596376949 199421078 40399257 384191878 20644324 573466260 999446160 830489778 874236563 701626236 554661022 556361600 649140405 963561740 317601822 939308401 684256264 851402956 823861877 556138578 240186836 223766799 388357384 210529079 528195049 819680234 803647564 70493052 780029849 666129985 833642685 798836680 860747973 234396344 279222234 161614597 555990226 881999555 521061166 64141671 40146863 953581462 908100942 16647019 570396371 363342644 896064720 795824851 728905785 753873769 748131162 900391343 374867819 133429439 584044181 503484240 729558645 496731023 491098929 27366740 444208367 346891005 843359211 577320608 981502710 498167789 814154885 371416670 703586353 539709459 795543239 230288647 453398221 745269989 662673797 884878161 605421185 894963877 942291866 839606595 795467147 885387094 929235176 209116969 110569393 105825232 811117401 181535382 729976642 823524009 879470045 535228265 724970007 94944573 241052528 393927878 678135944 224383670 178789398 729844247 817336959 97299721 566727127 955601939 979506283 883237353 209389511 85362099 804813375 955579350 161523453 681844028 95823996 901447965 612002718 339216188 949456680 724217033 164318165 775050633 904939217 37876148 348561104 450162746 362394508 174731648 393136591 330140342 904911354 779654036 862628624 662609067 316484159 462405667 403669727 997920522 594870024 734103327 763661966 822411025 673423503 916971852 417044854 704009029 454667662 367650612 699857916 624563310 301975120 83196453 653221000 102394023 76130208 955613494 303378062 620102215 726179796 57845834 80948615 269593333 690538956 279429896 80578549 772873882 120693231 559573984 641660000 414549103 834593574 883989770 987317857 392249837 202771438 224971145 404983179 723718104 721301826 250534433 648448645 569668927 661345193 609838180 279079415 817543794 580815918 103948204 826886547 487356944 442512749 7213080 248467222 494917119 489108608 511519120 623781182 18789480 958608398 331554498 272901850 280976065 831129926 493324332 424711097 601159365 382819039 572949256 405657015 750086521 506272279 352087650 919083444 289045545 696366000 588380683 816786588 955585387 220729598 38624665 277300832 488951320 39015639 622994795 135107839 745321559 621752469 84660653 613156722 243857554 320570143 849396554 180985036 641025663 629548006 755310848 729729308 625585689 256362976 903597133 577546362 697793191 931821706 659897976 732541965 839006641 318343402 842449812 381352187 768652814 95238799 944601462 602187641 141523163 90136207 935361729 754967998 654656633 638741640 929924572 767214353 222800279 660491681 646716406 720031415 194562601 776059783 331186187 413444870 101558378 852035955 72051159 670365785 513336289 817748766 674089701 63357452 447037012 770880980 671930242 849773970 43350751 966320480 393389003 523564375 438647002 831968024 73026717 939244502 618852073 657481949 871402145 116430485 461283322 437179923 675799878 380319514 47574081 314487465 18685896 903302649 834169400 355303957 887720996 989422029 259999654 512315987 77161506 912146486 94876311 658531566 891027540 378425569 427214429 881733104 624044306 282269310 800166036 439308018 584089468 494904264 543739941 206091282 226134651 33950850 954349624 5562613 764499388 64931958 139552068 753842634 525063866 357048436 806538243 252350022 337224630 216253787 302235256 338431144 358284471 611428105 146791666 937172152 308647053 154540392 555099398 483639491 361998801 74344302 535792782 517847198 133808096 116321298 623003310 932296872 593836520 804125529 103634133 379611337 901061591 426655050 954411442 326003050 250037091 545060088 901341256 203710600 245389581 643236737 221923542 44615839 126414110 127192322 542796781 810987955 76218024 994052520 253011804 577551957 277796992 434428582 884819266 853671064 607298123 255624500 144125701 537390878 819575146 158792598 956390989 520696330 421664276 506489878 456466449 231689743 936175677 582935559 897726348 525922140 109210793 397376193 143461187 641051319 952734171 224901286 166602242 803300446 995115817 551347746 640397279 923323174 66246566 152734889 952160564 364604772 957047095 594143153 609240487 592694260 392742273 22669759 734618400 464147775 86136055 937997148 703707352 28923953 779685325 323305499 153678410 165460800 259295495 501955478 66999354 520047469 663567724 561062512 829726644 684564794 337816205 288893269 518978319 4161467 26899392 176962545 44538592 657793920 574973737 192039940 699861269 605179821 587477676 360287310 250942417 526270179 552929021 796690840 351735951 808476245 85584531 810023353 1836294 448861877 833639082 830968454 767515712 262849860 484432466 409038565 839517061 743268041 313211223 887058877 907084139 626589327 680683857 712155395 960238797 974137198 999237279 689509040 275988942 505211076 463625581 132262342 670063327 718339449 157477545 64705361 937429936 644700920 964521738 837796702 503273536 580316731 176178709 301548046 775226833 858637501 681527053 121521792 90826737 51689349 328842245 210734049 508941170 659332642 343473362 999985244 672094579 435217835 657198106 786021428 43481175 809806781 266593344 230835366 494373064 776760702 555876985 739624191 943574206 417271965 410068409 588371854 34347636 569536080 44665281 886525616 304786287 334473300 536193051 264284102 748514681 108586994 66351383 584469051 66121127 704694518 30154443 139324544 748911447 745489593 423371289 214339344 592323371 200758036 459321259 517484910 313351183 957004658 2798829 159329060 881567802 334320066 854830875 519777477 756944935 997819766 328016947 680329961 228784537 100831374 386190847 320898354 874831005 775346321 252308748 415304014 60927625 637374349 118573495 66487277 599147254 151772438 990598428 967589830 702134474 248588623 511118374 617758881 382129458 822406107 196126854 131916869 667591841 14490854 687934896 221542277 148090325 769950764 842887657 217058106 442000590 652962791 270549303 95848264 63714782 78334943 234994793 26831259 696055447 691932258 974319641 263097120 469333203 3845956 328585125 731546325 442815414 950620904 668422712 399080635 289547440 657273649 754942403 828507869 462182517 887452300 320619004 614587981 808842239 637130995 941679459 890087461 128362898 586810592 281491011 227330182 499333052 353271390 415690151 106055071 936627280 267955704 534218349 710452892 271663467 624454085 394610227 764901562 30825585 766472802 867154015 744492094 396011788 368392697 743586084 174372207 160878134 679993139 364181627 315928478 184934695 577973835 399489315 718488617 555467363 450118653 377988002 833496943 57683638 239499919 643463501 414824410 331072054 23549134 892837686 835392736 400421696 721042708 492647235 831105530 56360822 342018109 509499163 572192680 992957638 606448817 899245867 62312566 230779490 813517659 436139438 269716470 216891336 85218483 822051238 566567362 348450750 788472759 116739031 123788415 557053772 265437935 538007509 376510672 493353163 539795303 873044212 572226159 597847250 593527220 944909656 956008722 931689800 608148216 139156202 879529853 558713435 106834904 936985686 721815161 820370301 390587779 616572441 731115993 555973225 584999082 382052719 631879543 738875942 104863379 359045985 194918452 298927105 249016319 454160322 698836734 833468554 767070783 633597480 301685701 243891873 27510820 559426292 302460547 438906471 294737172 556769871 799927352 491059276 463386609 617665319 535304690 539725315 22684202 735762997 877148098 359248775 591891637 78221051 191442883 213406748 718945039 869236414 851313431 100296526 946391616 603784082 989793508 361140727 738596310 800401742 123741539 799970091 481851110 731852946 727882442 816402770 306914064 115236295 438655068 959938843 586681210 401544219 454609765 97000564 377444307 570218631 460951094 153602974 389392717 210430154 862568233 747630109 313521066 692814963 533653919 720979388 242391089 312860105 469959941 592286095 404842159 914432235 262970826 580196595 541686904 473743542 826685034 299708554 313105262 735722451 360910954 191675717 318992117 486075314 957923152 989150548 685848826 930240909 503079344 669083957 965933303 19613536 139076133 502045355 534367977 623218424 67010640 488877509 626268244 630522597 559180762 977903573 949063496 72468347 583618938 543711863 896009562 783721949 729200613 44045455 936650411 823031540 175419105 631447370 83620063 752082543 777803829 29964575 378950692 594738630 455244980 397400775 134661683 542810427 741619002 335171654 248397126 821326548 660801450 585699817 675608871 766373730 29077994 997325636 772336160 132773249 734646512 675167798 640946700 96981642 654469047 27917792 697557832 210207146 753151550 977104303 257600954 508980944 615890577 20582999 95505358 291230135 170014656 671416532 689377660 121411290 502472936 723708269 473091396 723295876 996464684 532404394 800559401 422006727 148649908 616345701 675649979 109680505 464720562 370887858 117515537 714584379 738409057 174849276 381864390 614744181 251117828 592928494 962629637 881145687 412636900 855417722 689601145 149175769 117890901 252884960 93161816 959730365 607406000 829425313 332168034 906217097 196402774 417681544 246252252 106578574 978375093 964378542 969348758 777288679 557266235 244481132 962734820 273160816 137374820 466969190 53918886 904654803 771278259 171663755 47016001 384426112 911394226 434027788 106622117 8705200 55397362 235974248 105865284 220173156 919774222 814326368 287514145 210194787 693509803 209551876 199785152 266488381 84657774 568416678 822155056 574416713 466032396 386472931 111297032 357090987 66322497 867566237 447717477 772825159 884777163 478773765 556921580 882248400 327936377 558819211 591835854 176448702 750754329 382831852 803238593 842131280 253403270 785796908 535041025 652206480 418260902 544545178 411819863 475307853 453105248 912699080 921380876 997415968 219130023 269334933 264545532 564164713 180764788 61998624 325100421 493599823 849777354 674935001 988563083 261545667 524678327 603786612 527192442 593559166 783631430 536589805 491857231 649200385 376109975 191332742 164317057 647598482 150607818 690723278 342725402 740316227 685341195 310803866 843040680 825700074 44321929 405130754 169657410 880653354 686352769 23522161 171360900 166872170 405940789 671317643 608818583 408174298 999887852 73562954 867095847 741286516 890883837 567065065 371524714 995118327 372074945 725411821 276911395 114977256 704942999 607106334 283733137 902426012 370550253 7937175 350198407 5962795 164607285 682587055 944015448 555937906 631339494 462513930 651083239 84804381 132968325 929308571 138584725 614371225 212534684 832856972 158084692 267266846 205609148 413750627 88334488 513370032 675490176 670883038 115013475 387055892 891243404 245345805 584420407 184964573 551651464 671311937 834495778 514956894 802563366 44052759 670714814 345913279 764877346 462828404 512859686 766809825 923618622 98440837 412033028 123016568 481123907 994227900 663954307 13726460 523317765 853771992 385022553 383186351 933375322 849252573 578678980 565942677 882916394 338903316 274309260 239886719 330051676 190825236 533158912 85818376 25906403 613462202 922117876 722366606 619486392 371212585 289149897 235894842 14410208 984822732 329327203 657720575 620081763 519311704 465003313 23710353 971256149 361996490 168648743 17658737 289622477 540844136 186630599 242955241 107415537 196129467 88505365 750783239 688544745 403533207 933137311 911177125 301716713 21355803 538242684 311313763 980374569 901854378 555948875 281712041 557169131 338810353 928957490 572083880 195314812 93658080 452375519 36591190 972078381 389358523 858450566 828407158 946200920 124435967 111135976 806594705 531858782 519568765 760571725 586660083 356387247 770811462 435565181 196524470 353162677 884781752 839668437 123465917 518676719 497353336 175266606 269597101 139362271 304917360 568528882 723572470 872272652 851473623 678590989 267114195 737200142 464328230 732809718 898631747 229056123 828715042 911624877 379618316 54087927 946866651 557649076 675194306 284509739 123918240 30147868 916663484 891469771 410714643 15172221 516223259 667827598 394992402 96528882 502150853 737358906 326979277 154989090 413669993 513613463 888595129 381126717 699948676 328999033 620979855 878203638 993927251 118301111 880508245 446937487 47447775 390271798 532311638 773399756 296331257 628084193 11542568 460066813 648361784 655526312 17549736 42948084 499456764 928075910 114238201 835278356 588971888 754396030 651402886 19905347 567264129 583618969 264743431 953895660 377327080 500969195 309428082 165270537 214246438 584362891 586736145 569777683 515956612 435839647 626392431 643067415 156497938 883085135 655362653 907529117 604312487 361110990 386863610 661265855 169944803 625365591 823737005 646364187 537991216 806021162 49448732 216857045 66913981 617648788 372778817 349879452 175964547 164849125 203835730 260138409 408754752 677982328 502845147 290245816 259425409 850585520 557410211 746929935 251046544 958348023 687458495 547649661 238603403 651894973 405482890 199311960 936701775 991678849 722135724 553413759 984499589 207286975 761559310 425951318 930998429 227653126 965943014 92658639 373983184 158473704 124900529 957215834 405677854 476496124 665391665 698362877 10510414 90876649 163347826 195606585 309369330 103022422 185436107 702192927 970028643 419570933 579995862 725592131 695092414 926930049 770841464 731130308 953757166 197498301 710160095 663406409 27035555 859950195 367446394 460012286 926500690 991299957 245877770 502057630 166833985 383831963 540553874 609084002 803644786 116500170 420142432 712049172 517524154 606841581 29900804 318139904 977702832 631338229 983959134 60766717 833127347 869313499 487033233 215077482 778484204 219186082 892329737 645221675 501115469 710360662 629377402 533724848 224474251 145841416 275389411 705122544 636654887 167168721 23507075 122958952 698216043 950428629 464960490 367619870 112205158 749551167 919380458 15988643 41864432 885015356 44198051 725983241 273909933 503857679 646295414 313215729 872633855 890682610 315090449 587139199 360439578 193662002 441565542 524778339 778229236 339938596 523628724 243550677 738824531 466039585 750573694 693261455 663186358 715278985 954222993 224778202 953625206 709399495 200241662 581258885 873072294 163335246 551278116 35277540 853720617 336299416 774017961 166831063 89961636 254969385 316662903 776534467 512888973 388054664 691869121 92519318 457783828 730551882 916463364 754720200 665491520 430089991 169126662 66589014 136351193 57510754 278800082 231939782 560565355 834028041 527899836 613890344 162116945 958791336 91204962 281902352 283123370 601708284 21873830 490796446 724981857 225582536 880808630 564297590 550521123 164191702 341548804 989538251 26634602 634299129 939010385 517964109 271035509 576755975 505064090 517811006 491981646 328490214 508958258 877326435 532626885 48518018 18197161 487052301 237942129 988768970 138123484 474002701 246652080 186048697 304618739 385785030 122821552 532961873 269621588 96392220 827414878 429574813 559539638 821915262 540862067 741524399 791331864 448710883 433582190 440185246 477761469 752391879 348798617 780617620 621605421 823502641 34510083 44940469 970990144 487947697 627037571 741620020 865957141 951210843 412118717 855378764 848730888 238199758 941386517 38688832 207090382 155106353 803862975 159055194 645139030 133403698 843752369 218549485 933107679 349934855 87793322 159555408 904795368 921418863 538058806 50890216 64411461 669679534 120485 54041119 907048454 36057748 612831755 190556262 30224518 675879545 739407690 129210683 459990892 201887030 919108878 205492762 532090788 141895734 15763139 336730771 492778336 614905190 773870498 499626804 826253086 507394621 698198957 176196762 957741221 512762038 21664426 363054694 253300731 878825052 783779115 799807042 74383991 205659963 447396742 898645219 392476086 884053735 14328542 797145342 521350813 658762113 678845978 699811933 223167062 805930156 955405548 998497474 46518617 519152797 491863241 690802435 242482780 459602692 400441331 312429051 166686571 737890848 890375283 23220620 806960330 409187770 847584023 984603038 606892052 751265822 515838584 804118822 957061922 365540645 42931190 324927772 659416347 628220202 245230780 941365638 288633190 399893525 974586552 844334187 652117693 691554899 376108453 239239388 234886681 272489435 242285564 909763062 295202237 281441579 381334542 112531418 962992185 739048522 82120934 923163827 336191839 61292487 970117981 706195891 39729997 452644277 446568212 788059668 274123619 572437172 177295731 275448857 144180051 908086509 84055723 227514378 43333645 444032776 620652722 870662972 995377359 380788035 59754061 106920200 107746844 657907799 554819070 851997648 244462274 511181962 21381915 527286785 193401559 376307373 854276790 98592521 884333232 714200853 218073780 160363106 834319864 640974494 328069823 363723410 772336795 799073716 624308035 50426914 153146314 464122177 142023798 476829860 616270594 603263419 185442145 736674740 490784520 462538785 16178883 444023792 264142571 937547514 465087539 99492356 340666104 507716435 477936388 795162533 498218962 701179332 154074970 917980810 46463837 128392043 145021214 966648182 217569729 588536556 767670012 733586741 291093107 150441334 353137520 322333591 57073971 132953026 193872313 127530615 52370690 397530380 418743517 629161144 362708780 200616987 724618929 858562370 501516872 188563515 161584840 306028043 981500208 71870532 801922438 113693963 432855051 210258838 450742546 383359298 209148736 998973204 620245596 509470655 753533065 443114031 895028252 354189457 557492190 650924508 262121941 937298901 563844231 142096793 506335947 857246889 560950797 102086763 404120848 533130298 334646084 513820643 819183230 50141882 263029068 607735062 893239733 596195939 728405127 996725666 363454234 493535353 745737118 852163759 260597216 771467331 460137101 206552041 558724350 295048213 44407176 910350980 363519542 865283656 487110680 889917509 516762894 983974976 510394377 501594732 485878231 525355880 871833198 928436429 24027307 23991857 557084835 136747705 441484393 902415636 848731471 801230863 397376950 107786644 485936472 531369016 622658568 209819453 36594939 71041313 66067604 246241950 712702126 897583166 198006106 267713623 428384823 288849811 245416996 81058819 14357920 286006942 32740739 198116689 213180995 688714612 91797450 311524080 321743799 202444714 651840032 594282908 246877410 334778204 183164777 141187866 924936432 801493043 426849108 129560368 79316567 846537818 722228574 811123890 333712849 395136392 466284484 856990331 165917537 856633342 27538577 853516908 666150230 138634114 712803472 345081456 445635397 760871519 935537760 644393337 824021254 505787501 661164381 314083455 553568194 363619850 939179183 311355273 994167525 181791005 229918279 685872284 29031199 112081940 566540255 454980302 46047086 26158308 812231157 509039419 860604440 923615244 369776848 820737022 435166632 178018709 522032517 480026953 746161650 560812552 659074793 403292232 899058453 501907328 530109085 742172218 920993392 413015705 120506889 853712223 978515893 266475384 87587164 813045760 604194771 701896910 645961360 410224500 34050057 165103825 564350567 873955089 626332893 377179709 857136485 492402488 452167958 937146712 118800605 816392792 141483212 444749556 782898150 585254368 705409629 545495396 818261602 829184844 734478186 574659463 500369399 548291358 136177120 287568837 574266646 198628319 795443956 222500616 25204728 177014048 648236064 472721356 177743262 160488577 641174572 721964810 561255119 441102493 13241888 442426189 276265242 595762211 871580245 387487134 285921241 227099331 582757730 56393880 509100332 4148281 927026993 811535702 600995066 414799174 484203496 535813760 756348407 293724340 449634049 21172036 439252630 817421910 363926580 896218713 577545243 906360839 595102857 748976891 737354637 295376553 939953481 683417585 937619130 659476773 719162120 423950987 161861440 831002989 889429156 652935580 966850426 838733181 329131075 265789574 3099538 871085655 80595023 902436910 509283960 326307587 363709050 271909376 514367719 255983508 192480965 935776500 32049754 526529576 574001776 242981514 303933982 704758237 689985804 680649158 68257857 595122655 973376360 587796534 882229403 260385374 8965284 671248114 926829005 344855449 814606115 73065366 847285822 416158415 728506257 978597195 963318561 331722057 948305376 341911485 30743917 64386397 467865171 272925218 682041057 840367969 324501606 800473658 279398148 934804666 277986284 736314189 30717482 978533074 927987189 899457315 572769899 343224859 157511135 286543128 685509797 207774990 860395087 238335241 593641344 150516015 108594223 472395352 722041455 564896777 771738549 452407547 993774246 202208810 159353693 587829344 946611243 641019955 499851497 250520205 420531904 856241086 646529640 181511939 526333178 550400637 336490286 440671697 952793902 198212382 908906198 370183310 1377409 703757917 492335686 342671193 663843284 899353592 513351339 553581014 963444447 183158720 4573812 650136119 586052372 250838659 19074658 918304302 953077945 381359900 895516281 879782911 270151633 883778412 805997315 127388521 991265069 9050464 579791764 367519423 915659624 670246890 525730317 255133140 512175584 423693826 874201996 979769611 828966847 739808682 838748032 710753862 422250741 628321521 831945376 869877 207627065 594403555 63417829 345433103 710479626 345332894 682998675 164010257 866994357 857691203 856965174 182251776 928021316 686608893 101121958 337774189 258109333 253436671 882409468 641227628 178381637 211846272 574046364 278954141 352034236 826805959 920550709 149410340 940202799 145579544 320242872 61338292 371651470 794395085 229173858 364633726 302384544 722891576 246533819 425101379 688815597 826866883 350003338 771558471 920657345 911510227 115447268 272655707 27541559 819168474 15294762 500441044 738731311 707475542 482853371 105478801 198966353 61008329 983344196 185739764 256471564 209898426 287697725 649749234 50149018 459062204 37824094 669804542 526803708 350182765 516327534 199846932 817532922 874031464 166471288 567593406 166369057 594287201 340857553 823346186 143781325 637637632 425707538 961954700 755678236 405331463 262876196 383460707 896708601 732667188 528507699 246656054 621209103 203690067 320812719 150780211 811909340 560795959 580404823 434900751 153151901 787496889 706722094 977446153 220086618 918999737 378761347 267723753 102602215 380969765 420542185 305699066 955460312 256547567 43096379 367168788 648802958 6243855 212950941 712273815 875850037 279064456 633494140 523028838 403076023 1984103 117391244 145394675 659659984 132566201 461082315 367439919 148195328 646376605 217393532 949961628 312485520 301654322 253723434 233186113 156791440 498310565 905461933 104378026 533062103 501551653 465704733 226185454 300080901 816265454 327855839 452372907 811117188 691254084 407765154 778682888 4405634 892349553 500841559 335006643 575015162 255694019 682601021 941876705 465707691 918850712 452857814 888767059 722148381 546919251 109895918 229064266 352381342 656786523 332536988 527112603 964092747 177208869 782135356 242694553 560621569 90349865 737609839 763803168 508738665 30144746 305008164 974390426 98717170 208268019 373341582 741030642 67324377 999422423 610946859 381693090 961768473 284341806 933663421 174287270 591627387 428332445 470673489 972697988 420429201 437557194 979247931 210962509 446055859 355748715 405852439 88462226 502223360 420331323 150671052 297909108 462072163 171004152 165993347 78995868 884530056 878153839 940138419 861367861 67196395 865181299 789380116 281750260 103078602 979745756 384370351 53272605 550944814 500697743 983915469 374104430 137153257 344322162 193108229 425802558 141431696 767377531 944060464 158856541 645714821 997262245 296247924 956558891 727805936 73395182 823364414 330657166 853797571 51814754 333100866 466803191 298491315 766209302 641889147 132111704 355588929 375699491 857680430 960225330 460620727 65128616 624202727 422149771 312018468 419237586 24522875 888527089 941039969 790795220 702594052 810741112 721990927 200350438 208716778 56296128 358068882 302396493 363528662 157311730 26407457 988122193 667200191 589672633 509607341 244635203 631898591 449876556 667757565 25291649 49599929 800549481 405985170 62676587 761301788 267076951 256952261 185432427 687041052 709809123 211452327 302655989 235109654 72811621 561704218 119618945 7695789 846204856 211241929 120794771 890228682 80304710 577910307 388898228 329312422 939433724 132908637 19058808 870206908 434670161 33909627 163240569 204536784 684168000 717716548 566932055 314220016 187130450 224546889 755218108 528864877 126964375 974445793 638846302 509325284 846100129 774960685 695613940 632579130 61038479 961952276 229338434 729192860 844850186 743520585 390252562 677973372 571645759 321967170 591496759 446651288 566895077 665070655 802806664 700710646 211685175 577176651 869572330 867871454 649108479 486523442 119405383 95087080 858650504 564924305 481334928 333582574 675801772 39913154 418921153 274923028 750621383 240609781 889055963 309198793 671347391 895961620 816016360 71858622 264376322 847211995 216191997 128423410 45075848 42844872 353349424 634675622 822039247 947458084 242322598 268210794 196309212 563713536 335967112 598756112 131192124 393394227 353033227 184436405 478448907 956301151 182437989 680938941 322609121 176983529 161065948 907569362 977901797 581134085 636384182 838898669 603272137 411569065 265200202 150001479 175002047 490925461 641037297 588724837 593284232 439041619 992377866 749175058 528396651 232220722 661461508 501633124 592201267 320350027 792968270 253277624 226021433 920078973 232174434 573603760 190782808 356856435 828825285 511035192 611440379 643275416 463594494 855529608 333864716 240599083 927839138 803012120 545863428 666502438 163653706 812260271 219341025 118213975 604303257 867354967 829538344 755527497 768933686 227503719 873497318 831827798 349812184 714114168 751799478 758809761 905933369 606577776 958514611 695214094 930512919 411487612 907995521 632417107 450763070 384140815 623497811 865442272 466933891 393981158 440481242 485486076 91993277 991322629 37962843 135616430 56665550 778679737 989863831 829166533 637092258 790249364 130813405 391815384 649488685 970263925 916841732 866615880 886610279 465740412 308421482 754763073 816845392 138256413 388112632 950632367 545316854 15076611 51769368 42568524 497037675 307525680 820411074 741331606 65513415 579704297 831517044 35106267 62462253 552140471 390982197 551618084 430448073 409517679 552489362 777474125 257922249 740141356 832816037 597326327 449467756 932449366 474153735 879442057 686473203 180392343 413093854 366172720 740653222 321202149 745929439 18202858 391307482 901727352 64899131 391239031 411876328 737185240 602778798 619414106 124543539 519664848 738463364 952890600 638887973 168032628 518351499 734047799 427182895 297925155 570210580 282822696 796775627 55604349 980305665 750048867 894193534 91901553 960858807 241943384 308485584 170806577 120037669 606856511 450383700 60955706 360025282 503702810 434893732 782388308 636035211 919467953 840193378 747734151 287547141 543302289 365753658 16241961 693202241 246819604 809379548 915183317 940973012 903697244 214707203 585807727 784591837 340895059 433894259 884415780 935387647 839644579 518694898 804284779 229394285 6523080 717205847 822768634 444571867 46042626 501514104 810440668 142098822 192605273 234062138 615328858 166143031 419945886 179979657 571219977 370707001 848333161 504416339 233208258 65129060 258229272 917460883 855741871 697183256 933700055 539340366 28760118 989896248 277999506 505024397 614345489 401243701 677139461 978073441 370927160 848536323 382723758 161948644 15048947 31088675 101005014 119987259 338885323 170272919 48679055 280655247 261132949 749765616 579700143 600929296 366879084 337190727 893365463 54413309 515054009 784093237 384895086 565132947 430645285 456339938 5601703 102422815 313071267 988107773 485394295 26691058 290507120 531433405 390725536 336074601 898220562 887056094 237456811 119376612 879853654 415795881 769491430 122866125 232595789 727628523 497891434 295457942 582508117 879183096 833504795 463862717 791560208 714210992 828867994 328060606 102623087 558453116 821520478 332799786 304186530 959325511 63782301 465159054 651292199 758944135 408865620 642669191 128933824 498519098 255591249 199885749 517856127 205266154 898182177 150215364 386683570 975310755 266143258 693704294 505369848 918355963 421100642 650943319 625032500 985830927 795524061 938969428 898419349 402743175 797377594 893793836 26974092 393176719 594436343 867715251 974562520 573399265 253752399 726518204 45432956 185914040 176616013 963161391 778446020 190026716 91021758 40725748 795769669 922627740 673298753 679307263 556188120 769542349 435310126 921307977 298417062 441504972 694497714 482764498 854389784 51712129 225650108 454382761 460210660 509500504 958186502 441907678 955511303 837359692 138095886 267962762 194211010 841611478 499345180 716213713 37279397 685409280 578984259 391159005 479214978 991502934 852425304 204732894 838090612 163781105 235095038 38468114 832830947 704567147 381942685 692386232 295641721 572090092 255198563 771862815 879161387 712589604 470190409 753032082 979916851 316010056 786963472 560405105 230319895 176027412 144184384 176137756 988719522 972645845 519471402 319643902 720789997 843100497 199058407 250427016 874707535 11642338 524158036 567471671 16795244 645784169 744159771 205808777 165439540 349416265 767267244 759388171 42840795 500291950 418856769 644739665 705853914 31388501 666740184 526767856 818216950 958596596 455593531 893424270 597696574 387772377 311885305 281662934 943780100 289671181 573868648 846345336 495000805 558893352 515131822 322247728 112768452 346549832 353877934 81235392 262993870 277864981 31213341 702366193 524991608 801253307 157314159 172582548 30482303 803047409 841062117 811619208 410332643 533243892 816459657 877115306 59717877 458734221 200636968 145123304 99822919 912586504 108201057 480335410 574375350 632192061 116631180 790624900 736636519 559510408 157548759 6782432 13058498 814504401 662734894 894843214 273134467 282033799 987009870 906335460 904079775 521830045 759585204 94105785 679724892 601090452 459527339 416130031 132666953 937050227 707323454 612228530 421383993 193217732 445018699 918709303 95477572 994823074 735578479 680204722 133092567 669633704 567568402 60933992 581089940 455671039 746017638 627828902 286347384 132692563 98548324 242593210 644518586 794197979 32578251 721810689 987997410 673547605 221589536 245265885 895856313 195240454 66804921 116805558 113092948 110769089 898155179 746292993 362636817 169387990 484456663 253001782 435066258 893624872 340604389 625752282 576566980 734876188 854340421 44715125 154114523 258187167 932519982 806508441 251742037 283172392 122050212 293046499 856230645 225924534 334717037 397537779 633484486 905664462 158938137 926489203 903261726 215029886 800824830 747694868 392276121 687749470 313247043 782713493 840574746 773690506 510149321 485982386 515838158 208661930 262600260 219978556 206548523 649992940 643996973 306121984 41928171 271321094 316413379 860446941 155389458 692255030 21668364 939025582 512348399 371671620 863313115 737550437 604440595 562857853 265972936 724865776 414789468 831493813 477891891 439243595 330419183 485408333 466692418 762463607 94287670 713942570 725671147 752502652 322599398 898076858 869527521 92881521 992979708 833881079 579504292 45067630 486875838 615892569 957506945 21283479 836201909 673744363 81364867 890672659 487192502 360664891 45154692 19072789 908226780 31618140 521601831 84622041 506385553 1879023 57204690 571930017 762774650 982959128 163371957 147666357 87189391 814688649 145204423 515528299 458253580 542450804 855746506 186638105 1147765 725677468 682129224 927724069 892174231 611671363 702132879 543664119 897888645 971428408 156330679 889155074 558438299 399885010 782482337 768551360 518936447 841787377 575819508 768502194 766590234 461316600 76961570 989437542 565395876 864106969 122001506 681573227 490962584 87342085 409690039 640544349 800247482 688516990 903988199 123015132 36422421 289994955 414377600 336463508 542991873 117872889 865375453 694847543 741988885 807935132 456181535 314331262 182922553 332082900 456265005 555286063 724022166 984428617 485391287 581009425 483687079 988275240 791922484 611113461 760636961 268708134 493037799 247767993 675079947 292231811 283523031 842083901 990666417 201776900 890485717 815136875 750126503 467365367 942971512 912285748 788801227 978450484 243334688 964148118 89043519 368091417 728962296 25794450 723438705 252653962 140842476 37328178 316528916 545142006 177554873 197491335 324093476 682160215 281032157 680070572 229543143 639214887 664579997 988883396 615417577 322639981 629600015 878737400 348321531 77343673 196888582 518286972 42954300 585355295 921693480 465443208 647256851 125424957 564602073 574588511 323081767 910894139 906057801 347845196 469746030 284039880 296121970 632245667 504507687 849713689 379813140 691786936 495176913 511272426 699948472 814887669 670806076 344276870 33070764 559140798 540103292 540020409 768041483 736494986 965658348 904787670 92986547 105179345 988243507 329574851 742405965 768311573 139556664 11679452 708669256 917386721 142070324 585637400 317229024 35271109 290594210 723410154 835107602 264052063 237287750 390326097 240675495 627713102 605759789 909197009 175282991 189507134 323471528 724284792 692008194 981469666 287318872 83119330 996408131 696793075 678091807 508667174 883053782 809670194 982305320 24238577 658207086 318256749 683233257 785893227 949031043 328998768 167477277 657482573 498882132 526982173 891059402 475566038 923325163 480776785 859677243 625202379 89990422 846353399 582137859 136427131 456297329 284257282 678470657 850304701 175025494 944960877 128357207 892154348 15473653 544035384 998891891 769140210 473758008 672325745 374173961 906526525 496562907 830278949 385090837 462748096 546626394 404345202 753198552 212747260 648784131 501091194 124936676 648709623 492053731 915143014 187814665 77243965 531740112 266606186 503826791 767699686 688169841 153266110 571955804 113687187 282212135 814969766 285818778 817227111 776943398 82559085 533847060 879555086 946295653 992007011 647456518 726461123 533356711 933756897 561319668 351393858 959525742 448142413 654594218 787829459 402424594 434716944 812055612 734289728 10210982 57942938 541414407 740453346 369903629 655242603 91510191 461745051 84995821 602496255 952471841 274514634 190852537 975941856 379883919 326854755 44667557 127560870 863451767 458766039 374304437 333467113 896473245 364754217 447887536 104062281 435401996 139915742 79879207 530328432 485924379 180200963 834408049 837547029 978870373 46293550 610257839 156277997 326770124 349299072 179078601 367462077 196228737 938878111 183791471 233395790 635844084 454197941 473018650 172627828 524551139 982283900 868224522 643130376 749592912 717887793 793797959 189232365 387052429 961436058 837034656 728835338 253054247 981692678 566353841 132353622 769826047 537269325 952349396 93242057 764167993 406548680 770601529 928597863 842746943 156366691 138090187 543867188 992974279 382471049 297023298 185471050 937962442 308317745 169489698 727327425 64728979 625383128 313759152 105281977 925060775 625207944 601180927 265205341 811544543 441903818 758768355 89768161 472309334 287709881 176117248 434657150 310797423 790916592 530486973 528483702 681394393 280389528 113398346 505005076 595717508 70951772 710471073 273562538 361234097 715789943 690451071 869021329 267218913 50084512 996448366 940183086 548986593 401665828 161450945 302192104 111905989 547156433 180949643 284063284 815124712 527494134 284416943 794179979 675234291 747090299 301934038 211051886 888045775 653671870 235179631 605460331 293476782 218260146 174049971 302957585 685507857 627003853 512042145 383214586 66355899 481898250 224657410 909636810 66666164 777073651 938760551 309143085 864277076 888726676 91618086 480599248 393775416 540406917 795864675 716152688 353706050 510851554 641869827 934867409 128191648 849295444 899086265 995951546 846838983 445958152 400486648 361522689 563213678 539407027 330441223 668672381 442713760 546654868 269161195 92808208 299925668 693058931 221815411 164183976 373478162 101009818 965240633 2029364 420612548 585358053 932776603 382031790 59114464 846255021 821905861 723447066 760701649 664704986 17860773 382960514 689707338 348356574 763577077 931715065 369720394 549414315 574214448 603433879 429727251 423939007 178475942 175324287 481770291 323979808 289876835 249490653 485532029 402464608 213217084 710666209 367417614 415686547 592551128 746196165 806621002 220592470 399028125 108152268 739976156 178979538 476994998 897439555 275343290 38865589 142621475 964833401 619353632 262195504 680590497 3588297 204683666 193854728 368243894 113593495 830429916 967883905 687045303 94319176 196421653 705053287 291030967 668148053 897546130 151290643 984837531 879625012 533701887 960744803 504876550 616270952 20666948 709449658 242701167 871902588 997279896 26844939 70245382 958281218 989423989 309473225 86074069 182705045 946505631 309969652 226568348 728060629 336412709 794636561 873470702 132514927 423879511 553200943 310981924 534782995 418131925 257086435 735472990 229222780 745542019 619178573 787336583 516409196 360412810 128403730 504259656 425596590 35807329 775117666 188744737 235912981 64969924 606998514 99567692 998419065 998158008 943067646 503328213 46951869 108479878 886622801 132984973 292202956 319671750 484519990 737145865 728771736 710619218 674572932 792124075 598746140 814515537 751245976 190337178 345737048 902304042 739252060 84488905 303082840 931198359 127590970 546762733 262406191 342584977 722605611 673952137 731548148 376742748 72379051 439170274 519590349 448135047 25152194 503597580 875039459 149841378 768699391 428373726 869853542 186493327 940995956 918088185 249347988 66658540 986833094 105437635 924740268 920378536 144003861 972844909 80356347 837246651 265672210 887816175 961884112 466566491 223178484 138502922 923570315 711734798 322513785 911689798 962126215 746369699 121025252 801732596 466476595 867314732 617598727 653826091 4806399 463585797 592047926 618136012 901592677 930519252 852848979 379696511 435236843 679596932 577698495 671739061 742217494 184870473 156090733 73501861 77476989 902243232 124046030 512203599 815549623 587258189 544322788 663838845 698549608 468661594 3950903 417156798 633019449 842401569 775281616 106733163 860060637 804686905 898430536 372877988 192725775 533112201 312178881 460345937 534544783 322931258 898512089 774826784 388835115 417131717 427748036 623307407 684876977 571026403 496270905 36092121 505300733 40130454 229715315 522409480 877322225 543126064 771772472 994316013 586344312 934957890 117086939 709046816 231117956 134042281 129623852 253070080 621449744 279922056 905860492 860927670 555240988 761466190 721231332 10826546 91516087 913161900 248918687 601222703 323828460 83545761 382462389 363057192 135917531 983479150 182898593 347156840 422245285 263286691 47190124 358043392 255357040 614750480 389405349 494420424 283366775 2635223 352826462 796367200 324880875 599713623 304974909 355056433 86634004 599764287 55421536 49879400 472738874 909962880 465310073 248941569 422192049 796816474 468217278 324280763 935445970 102801235 578469359 665372957 68918526 614736433 210382417 386815352 832819618 404521229 769586607 544528358 219899183 179554879 683786851 389307463 602096415 615801200 637829963 844821567 795470834 807821450 789951692 61987395 629087800 829485763 5707733 208110728 816412031 86539154 496601818 277815315 120989537 949080002 818547934 223882150 175790211 692527707 925088868 174681302 210159499 449580979 926290554 90191608 414507568 683555940 195084727 225406000 583524907 569396822 86153018 313191011 769413690 445474739 943959977 399856195 21935916 879857135 840516656 601873479 957434581 553122503 39008648 374582703 812739849 567258943 542668015 472984452 491255982 775661731 640591656 566756759 129093805 759916422 567344006 930065280 118665466 454879942 749984476 877284255 41041806 332098697 980840075 141642266 805051755 715184440 437927284 266674663 960187804 380332681 18279692 305320375 367910451 624482935 179886149 236563727 756087625 968410697 275802783 139539254 473303043 742353287 276579101 162372156 789395336 603814662 922207571 109648379 334201869 518482407 889628240 133021457 368896459 758711433 168303034 253598695 201494530 724718490 194899634 92558765 742246914 467077393 603130600 90297692 560677400 653613348 127039890 303250101 264004771 36608860 75503727 989306685 68659455 386766726 147243203 238655815 800446618 4267187 448613471 420424426 882145767 105083458 825670295 40726792 756558686 219048148 906148682 513400905 50508933 551984985 393929697 480729115 597912801 603126275 72288837 652724150 406471945 218883919 158458864 70529822 63559571 373773054 943705310 29129752 499743268 504668450 376783000 632827702 127656038 6064909 54710061 160211663 392004875 443493465 827913773 263410180 944587468 682277869 168035772 207505852 529668975 586488052 798482814 521577386 918952121 655953378 602087843 949318981 570043777 123082101 279931359 175929548 774006429 114387887 410599024 742605896 474965491 69457628 769275168 898103944 875305835 32384146 637880889 260514856 392585718 962116783 578808724 863232133 110929042 47770194 771675534 713705670 840554305 784305386 82181132 382118113 743616009 788259119 827333504 264082569 479852544 23325719 73342428 239484991 44987455 280716777 617713059 210041420 448122088 7169331 748721878 565929920 212767271 950924228 473820678 247832948 63276330 913458623 959103818 197220104 287248176 29372547 773179712 523172327 513063035 220426687 605551628 78322235 565095250 16132711 525347422 565225470 342066441 911583669 84042349 535905268 315682043 149178928 982239477 43398821 775357319 622902436 737515583 180142429 606577946 939974946 846619926 401136951 110620457 581654028 920863699 962727954 431120680 497417984 583897939 240176024 244194206 382007790 362718205 684629560 937779987 978097162 447627967 492083243 352505627 852155601 529326092 557045361 331173196 933400836 378642665 618955730 705195598 756649394 314632662 939142111 766857929 275268911 140479973 512220140 453322862 219398677 787740074 458915872 487413496 650438218 795919431 342920288 21253417 82572796 718098524 878211420 113645517 762631836 452235548 201676684 740766901 682113001 946124092 336382513 872358329 821868260 55158268 69491795 906406334 18691806 487418911 91919298 730531247 636240487 484860660 593946648 556203388 556202076 535041877 257408435 207418145 909716706 798466715 162172093 321611676 513908838 572129199 145470498 180319743 680230042 853972989 155556512 859537495 382127999 347823742 906934711 252114620 930337874 734061233 777269928 317330519 905378980 366527896 960165772 16849997 342994762 20039364 71755319 376411859 553323870 309039436 630705995 120739873 800904007 872757454 645996844 335327099 590534572 340209263 698092303 27081256 838749828 610997724 65779690 360387201 654284815 73804880 168357247 935868634 360577485 977394052 69749589 165151382 346060169 878785219 931147706 159845157 511936091 940273623 208372426 727508208 823423391 188515351 382510948 665967736 745791476 470635362 624937008 15160639 432748622 125337889 649418911 941193932 485205212 431868223 683879401 534366645 272707613 205696306 176155148 77812878 790914003 709350650 207873746 24328961 107186186 154691100 653661389 115135154 562097176 370383015 279365202 306130521 464174491 794446897 168572548 699158698 347966835 126550233 717452362 28950380 639682765 528351811 19991380 507627625 832401441 521964705 804080922 775235182 331759654 456075173 886150111 180639324 485884644 929692559 842898854 483044882 719180966 997263399 879388484 711923578 392743171 489364921 686317905 274220936 39498195 841561628 254710569 788426549 818746 286959534 565859832 499865218 742224296 943192663 704815535 741987709 310347984 753800322 483425283 531082036 488217261 76129319 234584948 900228803 268498820 657361349 77871695 527349325 831454176 301440867 597361568 849812475 268752793 404851083 609615425 546903297 613247686 26417751 738244051 949609622 15298768 653462116 241330106 858475777 17802080 742833113 98077741 480754312 441982828 198308709 185690396 79090817 806316080 833847610 972081489 870190658 627530798 84973596 350475084 573369392 410407479 833575500 758714976 750729909 807190107 509044894 387079591 506376515 667176185 840169315 977289983 902583122 548500403 742839675 150215187 733638504 991510644 96426828 860340559 885113359 685758068 919466438 621575404 814923478 163843887 490528607 816047600 821988696 839524711 989738259 486704924 872544315 380995627 979560809 817315844 535682598 883773899 110931313 822077441 64733898 188848871 416595390 510580528 256156135 240015200 747822451 427881852 234832952 322311526 486621491 513132437 691377805 531284586 435052587 451543027 638507699 564491819 560825106 502780885 351353993 388511148 461048619 623767106 743903983 827745336 375468342 57387279 906949841 170220134 275469444 114702801 593877020 338326288 845308909 967355110 33744082 930516571 67891915 966781565 789706224 651845299 624350215 337810817 684692611 260577229 157558031 995223723 162967704 993176484 647660249 448469884 838340688 245905788 148368098 661769533 369168587 375994085 873821746 52798972 184877874 968408750 562481752 78619027 685836216 754222070 898043496 787107490 630194838 757270307 20303362 218224016 121786129 673514716 507877452 608288145 98311793 875880731 549433587 56887705 300481800 252048409 643350831 814235496 662968115 601762651 599845051 838931083 446255697 680344748 476732128 665078094 889770445 939645730 946299756 692301259 181213211 2240538 223483319 629921505 624896948 327085622 31351195 762179898 364648986 420600931 26941058 30740549 228895960 88985815 73480793 143443259 12946047 292156938 264593557 385277978 317196203 883463109 732594997 992241327 982254588 919496209 50887614 3143556 637977888 799011908 858039363 327929590 130459078 671239163 634245717 706353701 170646697 356571158 378404885 659825143 559039370 743286727 120326952 376123423 533290551 269256063 574396348 329072657 195192703 591191544 822434699 707333648 427760701 6375739 428274383 982926375 677573203 563095955 580375884 699714849 754801068 252845714 640954201 368908696 373087546 160416279 68502212 775578351 776630262 396744003 267582447 729882696 119863780 368701831 383023807 529128346 997676815 874022800 592801186 14963357 317200007 634889827 548148368 184854986 239937383 984605246 424591369 806478195 660785618 625211313 271538189 942461601 112453617 304114828 364640047 261904428 699910391 206527214 160497026 117657018 606025246 56307773 458294697 93086384 911194536 297493026 852008903 262291260 881524193 476177811 836275851 611949402 696287768 734970315 793472552 675734474 450232234 501339470 760249187 229003026 110775033 482747114 946497148 430725253 878533231 280277171 80318021 693284663 9247610 810889989 130752786 732641037 239669148 40810883 832324548 690769322 853968723 884957723 773071039 734178692 366026536 824553983 831152368 832050383 520153776 779900591 525193425 642824335 861327748 877211371 886377309 627003273 430885449 759790016 928977693 915262797 706809763 698461063 895361309 511263028 960568648 866904791 54977522 969940321 353600244 789889941 605293246 236380602 569838439 515124718 688207911 112865518 41982827 371074392 46749016 641360248 199522515 193535375 716413705 197889687 871872377 232705938 173852280 893086033 284142657 774237365 85009004 696701306 695691793 263200134 198452276 861401256 622108383 116298468 857937061 387001148 92861605 356759797 496837402 713872734 410985571 602321952 849623166 695069183 813417765 231716894 954214976 839022037 310728444 605431531 622103891 310367843 922318852 597227465 132295476 545992430 364253024 202221125 950992110 393352587 317805110 650273075 782310924 670336014 522523325 866134959 519097253 323210011 839420205 512761886 853471575 271091478 562239174 429176110 240846408 378997043 268858073 882369233 872367145 731718759 867024305 539238722 57666093 25165429 627100586 358942217 186754065 296768738 483276840 155609840 274845472 101017602 870752406 47058699 182443812 810520042 259343716 777241014 816986487 934540671 905658127 827811735 976658933 758214498 502043925 683888025 757521410 703027467 674444034 891722736 748136848 304708012 752570219 44737817 736862743 658479945 748027111 966792920 738805134 660126633 861146394 105867577 131134851 840226653 623950253 275025809 96346111 784019130 290307413 348895099 227551896 88032486 51894471 555914203 727154545 719669956 543881674 688096737 599427628 441186822 232501286 587001338 948179706 441945638 954578095 383218923 819740561 105975138 416838716 856684211 972475436 576966597 492624564 562653598 295287445 635590685 470346237 999588674 33787158 756473088 793096461 828995451 394023821 828478418 619180761 754774892 782548046 261300155 936263529 876915331 823057224 519200936 638711491 954674034 641307365 690067542 874671098 12345657 759153435 212446530 9185835 26967577 244957803 908246452 88247671 756321950 287306454 85671102 933437959 712778912 927044851 551542073 394293516 677660727 429312207 489274563 238742468 732011208 561294093 156759237 47425646 655893507 311520722 829005166 808876374 677972696 653362126 678583481 863526864 790052485 451558711 334293861 677833011 944425868 443301577 208135162 522624480 986908862 996382410 328739271 700611143 724067882 18299917 526973927 271365076 337580081 424147683 993063992 54265351 4208243 441091116 941860452 871486815 790675167 397652047 658527961 603907172 698067113 504973370 743153617 621727916 48899917 950985314 840854092 644503504 227324812 584237000 205830931 431591029 96637049 644154606 794640820 287257921 583230051 173396713 385281416 90725863 127880166 618697799 771553970 470500898 312863466 312010282 240006934 184792757 542358936 114086714 42795881 310442091 309709671 637333669 974880799 82092819 332666896 580666142 440652408 453798024 862046873 800851430 479298945 833466289 319346767 970018245 449840388 351081842 787629511 167252482 790374561 978941888 934022104 383150972 112586929 815744150 573166765 755710347 568215903 883367669 599775919 426502425 515178909 593906665 973694864 702126992 274740766 744249217 477618513 747309548 338059881 728444376 857791283 363642278 779195842 106146324 482752706 573437896 339290682 308014428 939973846 626716639 641642922 172471779 233335942 925927680 244763827 539668450 401902652 338244299 471517115 307077279 364593310 512936038 510060532 897790815 261873575 475768191 363710549 374970486 770326924 412820811 511342750 457242178 252325337 945591176 40370264 145842209 377281619 599698303 73723860 413311359 333858323 27656956 927696682 507389134 961774195 87482710 853221178 929142921 364478489 837475949 871597229 248355375 211429871 617972133 550023921 639843151 921784363 229784299 654316862 81539190 169644359 437018040 190781848 213717570 36044555 604940297 804316100 336374359 909240193 463044453 437797973 790547035 578824701 617617880 961285023 209829120 892272154 926774012 441765062 372344580 712821953 999291631 666728625 655418921 615953177 343223123 232431377 769241654 477879705 384731737 204412252 494451710 752847100 61404086 533849558 926435933 8868168 789056938 995338884 798288692 858629833 791867387 188924983 311753326 820141841 622902006 971827593 175715580 430086142 895004274 571137495 514767323 933133492 984049870 212968522 672007946 121534113 268308977 34896598 242073238 597768821 689545286 885197105 709114254 948771632 391700421 654987224 232336657 973659412 356373740 449688345 877557562 3963055 730615747 847411711 564923963 471431124 619570388 661794660 500885315 12242078 963822650 471547626 756542858 532872822 119780498 406455803 190857557 49478916 492621824 171083969 521264879 217101117 168028981 97887030 780084135 705560670 400138341 330020895 189806299 741976812 353069647 140954113 12094698 728560561 486079291 561565226 265073728 353993922 683284468 170140087 560745039 871860348 446240466 277925508 936006800 420692613 282356916 819934780 521649032 907649732 387973120 588100430 979760574 538807411 576603043 400002034 221686985 799114507 949725716 508306731 3802174 280180049 561679955 652846014 284608193 365288014 120706275 961098557 243718397 330908254 108881619 745285885 132455589 957010967 417406650 75381538 86454641 690412383 347083704 326784916 425962532 105834592 428681329 330888963 670699912 13378197 570715154 422991332 21664626 515456434 263843157 184965499 385212344 713055937 580276086 460942031 508148545 394913034 976257338 110839729 276911858 646426404 538241523 822147000 959969475 577546733 994677875 264353093 261300392 362815876 828303901 369212033 185017768 367380571 604681681 910521944 41244363 547212835 762797827 707630473 452441637 698861783 483205799 430659985 48795598 599817148 280697402 786295221 996220137 317511779 948603589 293609482 264871072 718852506 973322707 342290022 870189865 551142016 736418429 73368941 150127288 379620216 352962144 571114881 834696852 235455793 991291554 777048532 383068679 550062492 568992499 831641443 976319326 568903417 456033926 959205352 470556410 660217542 876567839 50138352 140622395 163249878 720348157 154962633 764426888 330197050 183314162 953587594 77685849 872101455 455652695 277909015 223533603 213605816 347526405 274749205 722916202 112893795 193333604 450679284 345229753 606784386 15822436 966691824 114869154 145507476 112132984 554474247 457100224 407276636 461980834 33002238 321379251 444242151 158253929 336322666 952628520 279236488 986144724 548522915 869697742 535936987 187711360 890025414 20458338 924963012 814049931 986662846 504177318 447881074 482860182 761424699 345494117 323827287 298593748 753843123 263748462 832790063 513386493 147488617 763190428 235258625 49389897 452937315 924771796 703610133 482600322 308186483 701814528 862854144 755050742 853708592 230539535 879451554 760749946 308355834 391555837 170324254 876387696 542571005 348363469 86225373 775971514 61620260 482109065 519505047 388885447 342917930 522929987 233977415 351352974 384030094 579763221 312719151 360465295 282525594 2870560 677337055 985185485 683571806 725211793 186199079 462976728 740120240 857103766 734928425 827547078 138524725 217675120 459180866 843694135 302006862 213688412 25002276 529180749 646672178 965331108 22280386 289564346 94991572 131578270 105256793 173728178 612240891 103282850 838303082 150533109 886910761 20433427 215114181 561434056 233216431 238928472 724480122 878493691 279920294 725137128 389388265 754822883 271741424 401950011 731761589 220931933 496078646 897599443 615080394 154649040 795513060 32209722 190650717 594073388 914332983 609815813 910374377 483927015 359855915 560351434 466486322 781286140 54261641 826861870 120734023 595330805 477423587 598958811 456268153 136869598 539059601 420181890 289549158 592659791 197494451 558152415 106855154 110132580 870462257 126844338 566939723 59030468 262762939 582973129 339643106 242777504 929808075 360530931 856713845 407737258 660453790 881618185 543172614 874835237 659584831 690534643 532091111 392999634 390611836 573311637 12212133 169196547 312639472 688788452 91461920 27973002 658259192 646056667 240655743 619807436 962630337 200434298 910062889 78908074 578619958 848778190 803320277 290472597 456806419 961774312 487283581 421112704 943766999 893320675 228049257 257321709 836780745 333141471 994784035 217380318 713875194 677403655 838467453 4101095 649040450 687229070 105147801 810423833 606353733 265677743 721759701 619034133 695755876 520789675 969514723 977018622 992025302 339632845 40701106 462661256 98985872 411841126 678518659 329250788 179051091 202076626 793448663 882328788 963030694 302666867 889430651 650392221 441387229 29210034 776565635 904297739 522906890 531472385 612706635 726978422 976138259 4312540 151613048 844368829 787608735 592541380 626945016 199150405 798905371 408479301 36029436 935112189 939157443 137244399 211179778 742213978 445707668 816691549 606886096 412630366 730549594 456953137 185582959 390502283 429434786 511701013 435950643 448378864 531345094 779105981 735957691 588516901 481202663 161931747 550671338 43797063 360409579 367782215 976593642 441783292 256097925 791176373 66931765 237823859 353594152 599660799 618412162 415871075 139031067 781666046 278403543 786876678 240314211 399061654 659047038 943613736 304937934 879276976 675319824 730632983 846193144 435803456 631918183 174266018 7513920 625778241 966404262 957116465 2038476 823639729 695634490 585843106 699598992 670139036 355970521 45747048 539791428 436458774 676191356 486159225 708650084 101502265 982644841 720889937 154268990 668262180 616559149 838499320 44357599 111237381 313810330 980316924 9635101 639979020 491224273 17450867 609786525 487305078 960795953 235716602 267434948 755869570 309428839 257429179 719698626 475530365 794499945 471725662 302424469 612389814 313759602 359908640 773896436 421525642 208184585 690440636 980086639 117267290 723241207 831422072 672220242 225642130 172148562 489452066 118792375 527661987 875202165 20115219 285456511 716703748 878812166 905329701 156784463 709254206 873405935 879947715 616990618 407168214 177241447 418802390 251496345 613456225 280928231 850575833 3839048 393270134 998262836 127031750 921762421 83020730 406702430 819069737 59945898 875027158 214102965 766566155 747867460 817735294 240958934 859721219 858347365 330612844 624223657 725114672 158651374 419257696 568815956 305367354 187643797 896179750 896013390 781893965 446702801 619690640 79602263 578549793 612591841 255883898 969474159 729400051 774510284 52254915 783910881 92264584 293873257 959308373 28712261 102625841 384019784 656609061 161849205 692573378 496572367 284792108 940123798 519627676 637787170 472177004 302382869 794937250 193236789 747856114 154105509 530736709 147238333 456777165 693460291 255741050 867559228 531126807 85197362 597810111 865735419 534031091 265365248 172695323 794662155 431492493 121481344 693765147 361559870 53715988 660646352 701123540 995102780 82022596 743673170 120928233 319342186 108660451 853715379 892689277 30662904 591256500 519303401 822070847 255203550 98443151 774663469 885817699 77037023 394780874 151514629 17998506 841476479 585478859 324072765 13287259 23968785 940707066 853989354 647409474 346026923 396572618 100396902 607249847 520853808 866625462 746154586 296509588 313922887 61602879 453871535 975889735 684332897 314636527 928267671 480601014 446237877 988981850 606744211 180461917 836361026 881129241 901290595 462913080 434421461 741575885 137997590 326340044 67253243 649074466 208415743 895896106 347948811 754607307 377773754 990603496 728321320 880844417 98367023 653128227 664181048 121668101 594119557 705538433 878447852 33571618 670712114 72903985 61268927 907507884 243113460 80180457 756072941 634305918 210806220 877988070 783044992 354993014 47502091 522688240 937301834 872616578 946181440 703041876 67988961 876589459 603935306 670220266 893644964 649742754 681068367 456280336 169800894 264394419 284815289 510543018 855357983 436894415 953591355 647824170 958747263 638167816 716095955 636978819 121146973 953993853 583627461 43859765 237900801 863636808 261059997 10600259 416469628 328395162 102227502 666367295 999309993 62416547 567238809 232862527 50445860 358019997 29654589 111915487 563186776 824965321 809936073 216849222 779119988 263412341 933480750 310824996 736895346 343877102 605703853 368240302 513714447 56256147 797505480 39385506 200165590 538434757 591095627 607381831 722953751 207457515 431979338 894939242 665154023 71939709 305645602 25653603 223305771 763774190 4541814 426104591 543558281 186010824 311670580 310807507 775065455 419774097 592300688 63800478 153014043 718011355 441478917 339470314 665097350 508211266 896839513 556157617 971346046 555945575 18991764 314617723 511816851 400888564 78582032 419535188 719080984 735541148 217495910 345769686 474113845 366210587 266616189 988224796 895398346 622765873 423210364 419447503 781700238 616855462 490411228 390589723 418921463 908914001 650318168 814649014 900789059 979382794 100786677 151527137 308286844 171272883 272147965 179004511 161321074 730650167 228972548 542555264 312441793 123282054 833984235 79361051 515485122 709268382 566789329 179342989 331516066 370811009 499626530 322560188 602323283 406285365 700463254 974158871 599171207 839406286 186386985 444416916 58765250 467266666 816813087 910805680 173461583 563491878 538731521 701828724 913769529 229860144 489428644 988751468 636582746 817717178 93852969 23798704 957177429 859978747 962013166 805797852 728099215 939423033 945149860 454060568 224230970 718302906 921469503 285128210 875477837 742317783 551247351 151761664 784721545 959189987 895604307 762666657 542152565 438829380 604544289 278571067 30172771 90095716 13196659 422958490 558791531 609712564 620211364 487431703 300336493 931124657 903877979 796934031 303414545 932281819 773659778 985485158 711555015 526494651 392454736 227538833 916583623 219674084 872112961 222562174 633266194 115258101 296928532 411594547 440177521 592554633 436106205 484867633 815373170 72452686 906166506 510444679 374496879 441647865 457746907 607933901 710582665 248062270 996360082 509959199 319277989 829013218 273727295 623828260 776638583 388664243 907998033 116356879 530773876 609521276 242551943 690831758 982331104 721105439 905242852 341749476 992428737 916199543 901431479 440798934 649194469 406647154 924233105 617524661 113602280 465985029 260940624 597110099 426221352 805103397 533649176 97178640 409498062 15003860 848389204 306062292 309235916 699378978 129010621 975552267 47794137 33950492 932409416 638370220 150314867 502510049 243758142 69103670 671482341 587660684 870744108 753950382 751243837 388856399 668088802 260887459 142942548 856803160 489545601 705529643 619933388 360921570 356424808 619820003 593769998 685573681 14941257 640248309 209098055 269116042 800122901 435149834 960202352 155786822 555553545 832178780 806150218 787252410 471152550 217608617 402489693 49180748 455773374 724033078 625139449 564356453 611084384 155897041 572033590 17223029 86433518 658364883 16980727 123005433 761472519 247449111 224405216 693796211 70868379 436137477 697026661 731690093 900794075 496613001 965748668 6693494 171344195 721613341 563677156 299529006 563828635 229598652 695182251 55857973 62267629 417611758 520813722 83116339 664923020 480026048 815477772 242086107 404600344 410916811 155799077 195003369 147965040 368782120 860407497 364292894 962857671 866996357 775670953 19732807 381218442 132534024 247751228 953856049 652449146 27597676 71135941 30919098 974864027 231962863 410112843 504771778 410256697 990217302 669632927 382879288 646825445 706023152 500044632 185701384 145335166 443748242 427432150 130396720 85859368 633207709 244328516 164196787 756909136 243342324 809941647 221349784 154654120 852834824 238190705 489809907 296681520 27212495 727282539 936269534 536096041 546478531 786106563 94515068 755271710 643582958 485490824 684574967 245013481 20227808 295549078 84332926 291251104 437756333 725988750 700418896 692817836 832641008 316162005 763093422 642916023 710476502 760624283 629584354 102689458 821201929 149370587 66569791 53223393 487583935 479195219 13769498 235451331 447529144 637655693 601774557 757977122 585893177 162679255 585909740 265954841 93360144 971675210 13951423 799194880 939319958 517315784 587546570 253375866 530855078 930764281 955269012 647022201 974017449 881397580 895548071 908790827 433337738 444438008 326536080 966644494 776628673 539628033 82175728 420642024 610060365 666793771 383856743 496282565 539790514 3511305 937605533 219907319 127934211 370447091 32268615 862002716 57347792 741627145 723152413 874261016 624760381 712080178 261384162 657290775 198391531 964497185 629542496 111770767 353829643 320842315 426255468 691448889 185919573 404737779 549350623 375537947 879348483 265488159 292517272 194269569 672498398 298840480 894369924 838411008 502518325 12935952 955008151 879807861 185665243 648967885 710748871 415097345 335599921 289082881 257774872 543114258 301212957 298056347 62783893 80041054 293584141 509580882 768658256 306107871 676554487 900162472 979492196 333717722 508961113 548228838 547388403 706746331 604271672 815352093 872475428 739398327 484398118 599288096 952307246 563902856 650973495 164360854 244981321 772822967 321886728 180125922 831325622 371915499 172348608 79588408 10388675 965664795 376308238 600764046 535926973 789330051 737729579 150546597 192171779 765630628 927513039 356265733 961345013 255086928 17944900 494087932 73172478 975699608 217624921 857678758 671788174 434716891 286380642 952229091 873521957 652726200 625409854 91260507 616336958 430916383 476892244 795443323 922962535 667446339 186190995 941389694 460010291 71202976 982865007 314970212 839839802 551815932 219760871 420977653 281237024 512883812 577004672 289676225 386929038 798681896 894833228 5176097 413731385 969979881 869365471 931285556 265432535 71896199 8342871 276930277 629337900 551405360 406924376 894612449 786321157 736781657 555613463 759950754 949326129 802036924 200097859 74106217 487549835 300190818 383877406 964069434 6202613 851268498 856599660 19486698 476652121 226955492 363575168 364373521 308373931 391022898 752548139 179287307 225230050 562300064 168609998 951880453 478769924 979875741 122622799 225424621 47437083 738763227 241928731 95223162 206076215 544211799 447964199 760651824 758423410 548508498 339216118 514140244 706425072 85913951 9441163 199847929 214622427 421922893 730178933 5360882 187696484 378901304 14218184 238817254 469843657 522715785 545186855 400568121 886207558 484147430 842672563 481280028 92044586 59501641 233691167 392428936 853392837 906784490 34476701 32380221 664658547 453434960 675878639 296885443 890535060 93256775 939059801 248028266 214945175 184182752 5247145 521137739 912464872 813380732 109306166 61202247 203376132 1468093 945657311 266441731 488102255 84687244 748781576 488490480 610778033 356721444 69823394 19833418 704078172 961506813 983708194 262894350 23241997 920704474 193399686 339100679 437959267 163384522 954542934 177747905 258434313 110045730 957912479 222129814 496188851 537261949 188617716 701271977 452982043 460552124 740491384 235335649 977063680 958885904 833843919 219972331 686912304 406246636 784869160 535296064 916195452 895952138 565639993 107111973 295551934 965471344 196834625 262923934 872488153 609345389 254440709 430258301 16982965 477802897 289780435 820336729 692485959 507557560 129744514 43131282 903951497 785552904 60335731 792941905 482375034 663784177 426516102 343409031 801524777 573684769 428230447 113376748 833223589 467809941 871199329 290034432 134737672 332983957 448522395 926434570 996469367 679844011 39770597 61260060 678517786 74629290 951702728 12825612 465840933 206991024 526686051 344288638 736919247 670716963 480810060 988657881 653147484 139765932 50543532 105051208 453043480 40851776 458649652 721508301 989017941 951473436 892878361 851657247 605261674 256951492 14056468 938610122 125211582 438798596 369712242 789240865 300467895 112978416 366809089 496378423 770889161 346831335 492689683 470909936 731421294 340548744 249923718 111717618 686009641 773616069 938173636 228930481 321190018 607068364 35375804 748060257 647240718 930984225 940103392 478359043 198471527 503221120 792819249 390303584 998688557 15799547 114943794 647573000 54779916 165052388 684015863 41504084 215095735 929816793 905944082 131297639 773491685 983083963 131653026 425800739 940957020 151816376 620122190 490010171 156775141 115654983 239690051 576526376 577363536 525017888 460418872 196154155 404080506 175459145 573060972 919970889 738432324 198230799 930828453 877082966 2615450 893302021 617218606 108183528 954643308 79519239 435703010 694166624 519914932 141873723 635483167 207027431 248326777 74514442 407973063 72553578 486487230 225989420 779149899 396470180 804093082 329571740 562423200 340217878 424128039 309598879 925185096 303942920 857766021 241536959 384594756 631488648 217623777 922519505 604171814 97625710 548143467 534421488 57338884 649306974 704865374 949187716 447794811 475554751 553885949 117787192 15157936 264129726 680431760 118399742 828288082 184765270 201379180 157569813 908368026 131534664 106323946 410161664 405683013 902092315 129206127 578836363 514557847 79964191 170774878 199437000 366396257 748979563 933865008 650238232 855182838 815724258 774033503 487872284 152811831 225491242 826903912 747025859 110771339 564471735 368596701 986936638 149834717 177890748 584741192 876996619 79200420 786241341 586593609 784382447 38228707 287269376 324447871 804144882 628574745 339760792 746065558 687075438 960492120 660450138 382861376 900905981 443300153 703773547 802288184 215585921 973749972 425853357 293937215 401969450 347603156 587703253 700311583 304962153 380745574 413867351 295000237 881142013 933579839 988608631 72679103 168909032 570953119 882888508 762080313 899620985 335708490 812867705 92657415 952414017 934006163 117164225 384933401 200591133 185308235 743500662 678573674 426073394 952918995 920867779 357177852 326553836 116911118 302864276 656158940 407412992 998543216 952381095 807350297 297636458 694522347 643658615 387268301 981699950 235936764 690892876 496801051 121148057 531465135 525685818 651746095 762210238 250215308 633374744 222704697 776468729 423232431 165295495 790362997 712565168 594342576 60026348 909578533 946518925 836775610 446506362 139614609 76963719 780301946 649928235 788420621 549074135 329505830 320020153 510236658 252109826 216479357 838962610 809004454 23734745 961265603 767300197 168367505 649581160 672952006 957182950 698803490 810417682 461102562 898620956 690035673 269383289 663033839 379355308 122420786 268991368 437512022 501121540 522167997 285070966 218218244 267234403 624893707 642501310 924550002 460813505 823528114 270802211 717241754 30968810 401796186 198241459 64977415 307411313 337440425 650528704 831205826 43009193 277897044 111729384 320478566 174268342 662726675 676802576 276844558 441465471 378726315 718358883 440030306 249330101 229380834 97823829 488077201 615301070 228395920 26513059 657268815 778304012 652158859 139895633 19324891 791682936 431426996 455561641 999540987 815574497 708006138 361039428 402991359 949635809 784634703 746752507 496863418 830139093 357440167 650998515 957025166 35340775 414538251 7408537 899514462 902052617 178440833 198842270 465920668 913221871 286604830 994333442 518638395 282792220 649803515 23974153 833947579 347497178 784760378 403680061 416336672 510284855 197603589 611232373 911476986 560506123 645098385 825193416 753505376 686316534 877668373 269099939 819490031 469868387 378862035 722803883 35440076 852767872 366345753 705636564 933622441 932991044 917509429 571038305 296325305 440158835 59626371 987669199 585596347 132343441 149757543 884025836 371106550 626418416 906130760 4826832 48670775 991248810 236170395 187000533 378254551 120207775 162108121 279832734 415382191 568419189 995147653 406218521 964371243 614652572 143538214 629240952 580493367 128361550 139550549 554771769 618803526 257994380 499657124 319860000 744615004 237260060 322183868 204742714 181774589 785031825 490401861 32594394 400133940 440757054 157109999 670145437 7491229 659761227 164770679 108652135 2791760 366418075 495588254 40397154 480608505 56319965 95550767 292558087 675274178 450928524 546969339 843273231 405100388 233148906 732216286 989541502 242021918 467081469 844940218 279681187 178700210 90789267 169041017 411756561 661100146 638764104 936534282 426605728 202669618 40976507 357440620 447671674 726858066 536190802 687086240 348434954 58345912 438375619 354917295 640249603 757091280 245778560 518738093 957461859 902001044 91061005 152817328 700664682 71459712 640261808 779061728 711925673 13502360 42607739 476978788 930076659 468755568 196478789 476064110 929823843 424876571 259389105 208033851 950146140 671567669 510550050 247415563 471758222 233416678 558777805 812430375 386833133 20013791 360146856 334987492 757828016 371790420 550425717 957607067 507672674 315035395 624476345 178242990 110530506 488878897 458127302 268220553 413468672 399325103 664296631 856721052 62618974 769268947 178350953 942491491 402535306 549337976 602130820 983107421 129585774 774156294 109967739 228982552 426876225 503565678 437968773 466390566 236490621 679341092 732911262 210151966 208103911 83920165 957019543 162335654 176172426 684548856 18592760 942785895 61494972 70599855 273187100 292054800 942651417 813990106 421734183 205132384 347571589 313511067 123963900 712534552 864868652 783862935 863393871 509201155 721883778 225998334 818541717 489632495 793397061 923502981 437308431 952526267 173261431 504138345 620084167 242130503 586732900 441158514 361142668 668510077 794914466 749158894 131335417 236151631 90787598 10819250 610422889 750019003 955599563 738596127 810422793 876622781 44970565 971076632 918188229 391173733 320627505 814994191 262230360 305379264 119646089 508684532 791493956 420954095 97541778 927414605 331547087 851122190 993459677 95471898 851761926 157866826 451362361 372443631 176412358 795028950 507848899 623578844 423722929 729521131 160488414 500955523 687399977 51033802 957864507 122941195 584079200 219639231 738326474 781644575 667134035 646694685 544215754 429441783 565743804 675416891 577819836 579200080 871019049 741706623 47254384 381254773 900854500 220269392 101884920 715788079 111006474 164256037 361495985 172123607 949445499 448059251 427304767 129948745 882231004 724695487 433761164 755422701 180838562 67754387 74618064 300896430 87365633 616696191 375553415 482764808 991628027 315739168 284893555 585750519 238963030 85792025 921503905 47860735 315854760 218318865 497903718 974301744 555851331 752912828 742403165 249005600 304238155 229439700 10854762 870472684 385416870 455258909 868115644 105190718 950433031 498234462 303247557 446366273 36640994 553697643 158812737 309532843 250055292 53069086 973135159 113558204 543439835 303037274 793622510 329074233 764768719 879540233 206643198 121819504 305832176 420253213 593389380 463019578 101160094 720481423 462147301 510588659 959964165 105895778 145754696 91373441 527746321 815899811 779903524 368801875 348664187 42195294 978279801 430831455 37995971 644997300 470828677 759181090 229754418 429935812 553777624 473093029 928715227 14727609 18043718 941126516 282255760 366454980 214308074 216704167 142315768 729112352 926987304 145533913 232719734 731395345 224579249 917574452 882856766 509129438 911846768 561909605 210469446 687632348 454287787 286395043 574158671 635743589 170414560 574195624 886748384 696769495 297595103 770292416 448722507 708732322 792753336 491361975 177834151 243640887 930855883 698088928 17210324 267673868 14302650 967072032 33977214 683294376 107006068 81829593 359718416 293299604 68898603 282175480 642867142 295203681 794358619 60928758 220827550 361803691 348439497 817776848 516497504 840340242 356346753 403782157 755920287 206626882 294169304 841770425 1901745 965288174 380429416 891404399 912874934 539872977 630445081 5528903 689769112 857837737 795459093 990674157 939900422 649878848 227730897 162380427 33342075 246605423 681663751 34087642 895704370 183541771 585273020 951525142 949852471 147341559 546521664 977614344 76463193 237047837 450395170 997372669 432825392 856413553 579836226 386834634 813319965 236258541 882781125 18559183 119226697 472383376 43890707 938973680 181852067 660758630 295045090 233406367 305850082 879797124 826609454 846990030 663619723 410384130 667192127 730696447 428560353 378113027 843287964 234785590 366276855 738691505 496931611 11769089 913104802 382529594 591090906 429503865 980935304 679954400 930830651 826129462 147960332 788818400 713062636 20464743 882657122 569323910 994108897 226214837 474804608 861851429 23116373 421043028 391509031 340492053 423075788 910705929 7867614 822062264 807808020 940045330 22520313 941410171 64789568 64328262 654982026 781310414 591251373 483969780 443379320 741308972 909171454 136019969 197479270 584452632 321109795 143737037 859405255 131528476 845034571 333330761 705532115 161663434 250975479 793302250 696849544 608071357 868736231 806550448 998823602 209368980 681928745 653362978 138906591 814309886 54708240 652556107 791894119 522187947 75697213 408852421 237870443 465996370 431777168 890858152 425615317 532533947 820049716 487519650 169867600 709660588 531909027 393329375 756441432 854841339 854757269 918692880 433930287 192919167 663674124 61689722 74409947 215636251 205361243 804655840 989094187 356841914 847010575 58261649 764909240 354995534 468811529 632350306 605502437 576587984 581199213 542849715 966713300 784959044 895949221 648330602 804377214 82572725 844795494 410960628 699941780 691488306 2006190 552683848 773956506 876187352 713676993 725100772 878775510 34944457 859226919 788718030 938219610 615746862 95368120 571826839 76164348 52212794 528216723 347957587 476895328 522769447 226123031 251069086 263087084 212970808 544476401 927944352 485276111 527396790 265009430 540678667 856017925 332246773 465022149 913690894 887139144 440961612 48802943 110537326 831754278 196039201 824829713 727524462 680142318 337122523 514540688 677312478 243260343 636240367 53985111 940377360 577907043 653299927 718863628 236643561 704112279 706333202 82744216 556356553 830351302 143505966 997498421 566715041 680966953 970307261 108293721 47231462 776652732 969243990 815843531 935961754 662785100 312241823 496562328 235547455 198066278 613353793 805808659 395107045 463208804 833321709 83766744 419234850 690226024 134561630 412104655 798049301 89349718 29302103 5035038 203422561 251697889 402422177 705861183 148705080 993547136 623804943 829060584 287370321 280412020 40406651 485919781 719399399 802351557 619239367 649786426 922625728 210005573 745175774 73811139 161521196 127522952 168263091 871360151 335509251 663692019 93280318 539275740 439111838 384242603 296656771 801837312 351565291 808505761 340110474 145825205 160168529 401196941 575833960 637693940 780542664 432586993 107740214 98229513 501392595 475710228 514999832 205023354 640761713 690101767 438487092 643524382 536312885 934506399 90517697 212620306 807306804 582259841 495023606 549297081 41308429 596317970 759142679 417555132 754074082 876964485 689908588 930391830 554196584 997739470 642743115 124928767 557135315 906458290 709845261 976237563 768412126 47016118 657370641 136399318 804108755 35691565 175007172 516263848 265163644 466721578 978527384 174519498 33139764 787483284 728000262 25233377 355406808 381140750 571189397 671529945 800900044 402839564 72696009 870740196 491937283 179465924 209222710 263846276 426211308 487749430 826092409 540269432 426595722 408637229 893858354 573598928 187426405 267162423 252083211 705181917 187273863 70956970 954270135 337940285 670525320 996277164 519835121 782816981 760689542 385820193 146087034 191205582 716632616 770560186 260603676 734459809 289622939 211172590 937679019 377549830 796693911 515356930 315197439 856770051 404585049 379506937 730128636 200828901 496464806 954548135 370605963 154675007 876610513 387493793 889727135 291402223 747279530 630799945 380663090 777051412 657176725 277079750 792923976 25956899 214617971 146173706 227365096 864852424 945070517 985004750 216399142 911021316 430498643 804799120 324908316 660005402 418156230 82388120 948249326 380747159 164294683 229715448 516035779 81906508 450086362 899573640 109613009 299870554 941587487 160386792 233355596 350477603 766583171 354123649 312235390 591417938 586481710 427773825 501516973 389281245 985293009 694947555 993680426 437073663 976281500 740371043 68343125 179719231 542930772 432603790 515381896 642030181 224190526 429423794 286883380 788647305 658037028 460539878 810033609 799720965 652078176 897849871 954256064 100613501 52098256 16898257 903188381 630111198 625607386 455900314 416820458 498935390 674199915 615870890 110278201 270313591 651155705 357374202 992317731 713605359 487600261 245053782 274327116 133801678 664881811 51159630 694395487 323373166 515543601 907457337 38726922 900616809 828665333 12686392 803336205 867898018 151010561 528701747 628450341 938517319 336719863 216138970 385895969 756595147 358877702 646352807 711419342 742454250 684061670 464397526 597098250 835791019 538426069 753071477 719661752 450962775 44001174 604416849 211750336 400671875 997907324 34821121 504472597 614126349 722047834 749494759 465375153 292481302 93530257 984001834 922471829 305728781 340844547 488825534 221172430 987419301 527547171 801175894 599450989 734937564 199328483 405859959 372407179 298034164 760161476 326463334 359559245 91633274 471546829 505040948 913280731 724690499 615619977 8993466 858944358 511368299 625059599 28104601 739550764 393341268 226819584 742320439 385079919 141990831 711420289 211313863 765247861 505369964 75390782 142240572 837773715 496867016 697433201 315071580 287563556 549743433 474133717 978315181 130062728 542804154 64549808 509531518 894571053 519565360 889918164 713701355 194582915 819961607 181978517 451997649 722211329 344994273 732857809 845280729 30326063 926836653 22532846 147880819 436896917 734639774 605643994 669963735 690412226 625972019 729454350 53632775 157755476 268273962 216032134 685016776 518909678 223159447 302325191 887784367 911236664 481967817 884339171 911414286 425864421 248602462 210329450 91319565 774864814 44561209 891121794 709926798 271111768 516166536 404060877 752438082 88615083 466202815 700560505 86373285 537485178 225190808 740582205 989039861 944035231 498120730 884377943 341410104 711332092 724497041 477239438 717576000 778819964 119614606 844194096 200752040 619354640 899006962 409095443 659119564 436703156 172014046 68893844 687363286 736882795 893769151 448316827 347031225 471285819 449115722 944105623 24269608 946443323 7151738 570728316 681912487 19288449 262554773 190605512 521892733 960027699 110389030 233730693 666554041 271004792 937022464 766400319 378819893 413254021 557793090 81104649 374815379 414567060 174219855 562713735 394211383 477287909 295518930 448074714 586536530 343896517 87260098 247148469 473444577 934339971 958463067 959385675 540969630 679111805 911924508 794594396 105953812 981357329 169652953 946773549 548818581 131422637 993051552 267912844 205809463 327250883 937148368 632133585 50941914 234260683 585509644 968625880 751841833 952829769 511668037 891020298 736576144 677883332 770321321 244069460 346718541 650091988 962713525 776878122 735315289 146572558 107080752 236231310 307750274 319290905 625521190 101231109 495002454 429246875 894740459 208896412 369318956 373098824 149593626 331570665 124434985 679745755 314221209 34794509 159937328 885697813 861300625 349203627 936370164 897627327 130339449 579675890 226733805 129043374 339119884 338188189 725897560 214753723 455113808 880797155 453160516 577685961 95651219 761585293 18334074 993114817 607021410 327060714 579453593 873951383 816983201 72729043 206785018 115731267 950330222 149242529 252189645 870479816 644367931 381429309 129851131 382160176 444103350 59662866 774097985 182559632 771038947 46397212 498368798 770032894 803427838 580281558 208543451 325966496 815914393 289051718 196768133 36969374 176307847 642686714 630787318 805579308 865843171 103384074 343391699 75723395 852810258 444638485 541417596 98465252 146268609 374507325 44980262 777075613 7193314 883301940 931557323 483090939 26609587 243108143 945688871 463866204 537715128 390698987 807021509 241023266 76748991 104770992 468801010 581043382 629700567 114050124 279317450 345457803 656572515 396221716 423012396 665955612 938744578 476180456 427435968 154251241 879888546 295900206 117949433 37967998 427921273 13822420 814508040 424527726 19819520 744319056 360420341 598818129 693148671 949867425 709280642 301215691 479644031 532565834 53597510 551031428 927533525 901742428 35066259 792755251 306338463 257633646 388915084 652994957 99411135 844902303 147684890 521900119 680559457 693754769 690643180 449770075 672648444 343935351 603633018 987343467 785444426 531177730 386178055 258612575 43248464 35943541 798839958 202770204 11628635 624509845 218361853 427145101 394387711 942753967 556667600 957752226 881542423 281187739 687490673 976126039 149062598 555870388 608242185 881101740 927010429 180189157 85471111 211037103 766778348 584734104 123876515 707404142 233715985 583216070 651516893 283653636 162872369 417644269 612585342 509480342 382208980 25660176 968711832 63999566 291697621 604659393 465056768 914898779 381177931 594559509 338700635 478231547 851146909 413418923 765606410 933905516 237424245 880553896 823918149 124559610 662330568 64698 680728574 322965242 216526549 811351321 631003129 583071173 43752221 940339075 274829501 919361979 418432107 745399357 465792921 609916231 236714711 134058516 49593766 578127836 535181500 791914336 55077062 834266869 588689343 906016515 164248226 431522578 260122569 287620445 697477031 469083329 108527120 837159261 967924751 883299217 38963220 561508221 258013912 767340827 630814868 456724665 381044941 57627652 560603806 785059225 225246589 835403513 77612678 965199143 249571904 875141030 619971818 183851516 504089912 174574024 447752620 194448697 809799244 467475491 869178619 561099137 441453100 171402623 898418246 791646209 832315218 743380397 596927824 595821938 387793661 43351691 135219481 772211984 859621427 690002169 959991533 898099621 555412679 774061539 480269667 70776442 440794192 993997112 258925909 897605226 834199856 854575349 130065638 395586769 487570316 909327899 575163014 950674069 522360921 700055988 110370280 905488677 202652746 445328853 48339209 266647927 168006885 954592915 62084393 348417289 835397996 647364375 640679384 528381665 67834357 131516036 293892075 992157838 548749395 646888722 825727610 626544935 658827563 563468025 186226670 129491529 614652128 98887035 391144177 946665243 113340585 523967970 104294263 402896201 413383033 212651650 662430140 169039885 273723664 947496373 723594567 484770592 853284090 239132891 770227681 669762510 393858438 753366366 389968542 246534627 592941771 945829300 52924126 93127348 851766699 478995031 497178434 165933090 409577674 663872708 84653241 261984656 570017693 326719115 783334770 531023598 155408219 819636283 368319983 164129202 317136387 832338028 204350961 94309339 719816031 705465032 210505095 55653101 273024509 37132018 554563585 830477048 940772407 106621344 309632254 915001234 201540909 323687306 758695778 387585243 722447305 709525623 810475611 3886710 777708470 887303721 149907035 882150546 659171953 747829113 45390365 20439784 822222905 937389886 148976040 845235637 6950678 34682719 759109446 56889532 903901657 549056446 320359054 725614670 872957209 626154836 957923162 199626819 118213174 378929433 71314641 319940853 756249179 728805136 194797146 584509005 896639860 333563715 128081583 655609016 734026556 264536768 543413447 619262000 894785589 751815848 333348075 276247342 75616419 163299612 788803493 800762811 730866072 774703683 875785417 252448356 346002413 984250193 209300083 131982656 444749123 362570624 676104200 764893935 686989057 455347475 698635574 374103445 517235031 181727315 558925551 940798944 222452796 848664723 279326318 533590022 47371379 717959980 874322491 728100041 27848834 731956867 939052318 352426091 312569788 30110464 419833135 35185083 578710838 671213591 22815944 156107024 604905172 22649151 794993039 46231882 543791675 573593340 989422446 291889869 49495004 490426842 62051226 249363078 760141809 931455851 251334035 245546222 618026359 817002825 659373590 557466885 488982328 628350995 947378740 70145867 42440900 747203188 100422722 827105490 33690484 421487650 101369051 104537649 606511466 805895383 125181920 877313669 910370955 380713808 767839618 216153205 824057223 580550237 52045620 306796846 678556888 959578060 263895218 736481638 238490047 349199226 637656319 302596703 424218435 621427275 19438952 509198554 835157810 807065890 86567555 574814763 724575529 470164984 239937321 59278626 867898245 530134726 179913601 865997088 123931246 815537804 26696693 338875663 784075991 200421974 371948090 84179543 745701749 866502711 160858191 729388529 19741131 858184777 680801653 372629338 406198049 804891563 759793976 225463708 765809028 565922184 882783342 582260291 697978575 645933592 839505970 631870563 799950243 351038863 263479018 679677852 308024423 124377907 368286019 144680215 975258186 312819274 616078637 483104894 10555463 787904298 182114022 733368075 829159453 725319212 170451959 806200952 623489363 381146802 153008164 769698831 409566778 28735017 134903431 107677594 577820394 457997054 899463290 263661684 874779718 589409712 390758563 64836218 540437747 127066559 224096237 863991569 558318179 312605364 783716492 782615591 139800525 70521125 885196029 316169012 920513842 160270250 452003589 479278645 398557272 204220900 215135405 742417072 100020180 923390337 487108429 644212404 31331834 649061679 338721407 646583254 486178798 874787241 94409511 367914550 975541909 773440693 972097141 533320058 509008801 682965528 895389400 788426192 95326342 647130281 744179470 35063534 39054733 166258495 570998046 473901331 544826549 565828542 272178514 416373250 95892181 715515921 919549246 220392975 62099073 593793319 147780286 53546763 449446171 901318138 161525496 4980564 683453898 629298323 485178198 837399766 549235841 191952116 113857168 798376955 551410422 168925237 249024927 993809080 39451562 533653870 57364164 717168016 237477093 265856193 673952916 933034119 892712377 542847064 381205724 208309288 533305080 948558694 431450555 46655117 11582539 384581926 803574935 736458325 101997333 283140056 449390870 231849889 379784070 251359689 740340277 139746596 969349530 166244939 985071400 9745685 642310157 59517621 861879417 868497966 187625322 239642987 222289138 262827193 488062721 548845273 721344166 54351747 634618855 192362094 590156276 861826784 339066881 396231080 611206272 663461299 716197108 792074504 412830772 373122141 438475056 720042263 117357637 557709265 447569139 993282407 993589297 892359809 364534069 245612436 768623288 559716718 252797122 427508286 744191213 994558237 253946157 368721939 590848799 339562142 973395912 7226560 153549803 224573573 411447483 470560261 44760887 182836210 258955239 487462049 243697965 740718474 614373888 665054044 433035586 390783613 954148223 729378828 788896053 982170493 982380961 777379467 643862535 672180685 24187248 773821371 489913093 53413426 881457855 861959301 864197827 507359736 21366561 455492315 728605724 593032187 427777784 857806008 469531449 994659216 670718062 852861217 337960066 69263783 736586869 144765723 64137132 910200743 778026430 881485499 421548212 605262474 602529233 210785309 988322526 375905743 435006963 186019935 266812854 151726711 223027762 28600494 889370131 704859158 217886827 654546237 757920525 447959487 518212923 984429125 344663304 46116627 282427147 528855304 698360500 208719669 507501324 948916944 751272451 13872596 391514676 278545394 603910962 555820072 546362951 61434564 893498821 376565742 537888457 231180972 327060358 785379949 317544973 831261457 400339854 651301747 874006571 121939049 215634742 131723861 443906563 472318251 431369509 679706355 132799548 169910489 212609602 328386227 430887496 992755457 691530950 817931649 520675679 789905456 203616555 59254487 51024256 111477511 296567607 317372078 203610741 457790241 131477237 996106898 613426892 552499756 658529208 40069263 956033247 78325981 723345695 600818234 475538895 380926440 978819597 597319604 490816131 130402579 891173805 405327009 886730920 395739689 74668149 549882159 79249852 982589432 400147233 943201045 542675454 289614686 617010101 843190416 767723893 702448703 617183869 628215659 161562351 185672833 414392079 325774829 402678024 487072536 820901187 434444787 584619294 188198142 364395585 47606230 976295004 751741493 876993909 338879871 968956079 697934025 403808657 608332124 937424337 390480841 765215636 14611810 477369409 937953363 307996608 733060114 380699720 49778309 981640354 618449777 559095543 563348621 898236433 865067019 375037220 663593884 248356388 504800249 522971764 669067501 188315202 760817624 80254538 915843262 431102489 460170191 949235928 227034465 421497498 49091723 807557144 289087521 462762242 816787523 534745801 630521948 776546777 155343284 993206129 340085877 699896293 545284392 95054691 208205523 111420223 776910699 664116663 445740776 547267136 458990801 232183372 829070899 253425296 45793851 223109324 576275763 184588825 514954255 85476775 113806451 63752206 263191352 231091988 865308546 779452398 797362227 990709266 510654465 984002685 867408888 257915759 670114442 610243268 86606096 469964980 550046671 9093403 831219336 64330045 123713406 705397786 907836665 584439595 591812947 602585514 514811262 438952037 769110542 872931830 604286142 636398491 243019899 393026672 162255848 444081476 243483245 280371926 777899443 28617379 841032124 156193837 855859036 321973440 198068042 578638782 692525992 234050921 746573828 710053411 628823017 476749880 870769629 915908145 997277939 559651213 342714570 126672912 40751650 173427089 463755730 977829423 487048286 708295984 283950076 582389310 328965400 297824552 754574174 24087611 408425285 261701880 678830609 302569835 191537760 451294183 467506483 126091606 568842098 716844547 203787765 179930838 632580617 254254374 72041090 500459269 447436091 20666357 176287514 309391941 682020006 795055825 66100991 353077573 380800368 359997676 54390649 219388408 130127177 779714370 641641688 467058333 599635303 627278737 847877501 836874418 1144196 313549153 11412676 164501003 961762541 43271936 273245211 530535863 504354155 85745290 664863218 791030035 443706965 676151519 460970693 649384645 789456779 514852516 837309461 384031671 173931635 51611983 581280618 251066401 418794234 485533713 658639196 897728632 365517465 335185134 312188034 569608328 844123976 198423470 14737534 939478618 622848662 996984037 272902907 733169989 627526795 268992227 230482600 383522526 347984575 456901326 125568582 605110801 90036561 89569166 26061201 345012742 675739108 787762386 802480214 746092339 386127533 672997907 778013032 121906772 986198874 815329169 278902689 873448813 50045998 55342931 768724190 741199560 560155888 162972715 426621203 768229372 774476781 427919025 941159208 117220070 867264763 421480003 443120673 673170090 317437559 277906444 51123704 569931955 20499528 195432444 580083387 349257651 362930911 499954123 308017021 55639211 521843756 765542902 961687382 917959131 790869685 461560011 525372523 595939795 866815101 281420118 941360355 598838885 588156943 413659249 942672882 59032492 734742917 738416061 378830035 405484814 422269821 964987039 620657607 756357179 827169306 158606666 689629465 327144480 204208144 758237110 708766233 611546108 833907600 17791650 712909861 137506902 294804829 529100441 510684572 684353528 220001718 632561383 420901611 120385271 820189553 70044326 162494850 273846188 950720225 64286648 993993436 378280896 42976482 289841606 723754876 78897950 532041182 317344061 485727725 969281785 727946946 216422487 223283646 72662732 549151748 675517970 928632460 831737183 547677346 994591545 657386745 154752954 499521826 208539482 769199532 343259191 542198421 948764624 662168156 368577898 562230157 25468602 912308928 28163390 907981610 458345472 274289053 463145950 398701075 939527763 460115387 424705727 711586167 598941739 520597229 137555864 101098504 882209479 90410253 515999091 620380938 995428655 372028668 562473882 649532224 298338101 237452199 542458528 533646840 542162544 774204158 651501925 353174026 285573442 904913149 300523019 65232083 541092304 927722149 526103293 221586232 501278990 655997696 182681585 9338026 10175922 877557282 42880737 526226974 747860286 538616357 731814164 948126995 999935224 333982760 492123159 773469325 561107698 454870361 61278394 822781981 977305346 775037417 927588380 115353303 577969100 488356369 188250786 764051546 897353652 977126677 894424823 956002766 809103855 579819070 460922126 758650590 524593520 962638816 321061671 350547141 516441085 125262932 265635523 807639354 991469334 882603773 616117679 15970187 308599573 615565636 541367551 966018944 713070602 632945051 766284303 178936948 964247260 926617727 857374596 845237827 721668142 729801071 722730573 562389076 970171762 381507063 204828825 159767189 758812642 655895209 721891560 900415099 393831804 948162590 321179901 327044100 991531019 30474234 808337635 781318329 60859931 273098214 64181232 868170407 889543687 429717142 649677759 91433826 754040561 29150405 26105655 173687564 437674941 312913456 940432769 112676170 954653724 418555558 316042001 719578184 185115528 535399673 9376422 107766720 454082115 273109504 657733699 642489836 93238355 156962720 181577269 192361622 267968135 422811075 453340173 151321612 37153656 778076506 117649323 639565859 4849288 925713251 752712242 886901047 845800671 191709658 593191695 97956145 194211946 6002383 981294325 892249727 999984357 625783633 793843937 869134614 787918542 298166906 621779735 339191159 212505710 539988590 341903393 689784743 264633046 828185430 394995158 415251506 737607388 316538982 894947924 898254641 232750629 953906905 401488125 498881857 916882452 501826797 137057147 265482377 387472092 779555055 922049220 462893493 798592117 753898032 220334102 863819518 208934813 4432909 374794228 246185251 373691614 734143717 976876845 290956903 174813066 894954276 369284559 925994905 919947446 482671677 791083067 112676624 730230854 850096038 382424595 468328874 848589279 851037160 810937666 642802128 385948658 577235849 52966659 559096941 934744249 658328091 328264906 959334391 712748336 33032504 927886177 469435245 310146596 90406788 217477586 88900951 991067426 53810090 833076337 616828609 353667461 369816923 953042907 606544448 790626669 341359183 138267124 351624951 880133311 137034 70559977 298554248 729269804 560260891 650201132 912850724 594271793 75694477 939893115 793354366 402223625 353888893 196637659 696068312 438324415 431625933 838236309 422537462 54935073 937017192 729309760 147735081 103550921 162587713 426536378 274297665 580627991 245145423 931501859 571099043 739442994 62705560 161895659 253897264 73722893 157062693 21917890 412924509 355043164 428939527 322478759 237287704 395858084 942645337 175561183 455549924 890370861 736151868 989173748 773668808 63983363 652665566 170181053 944665169 103239679 119233903 669920853 640014483 128497860 170565415 452360223 680719406 57197498 879594829 474667465 803115595 5877264 932884775 665427781 98321556 410100414 343894792 484686032 877922370 336027526 870665036 184859633 647205648 679267310 562036055 845161584 308124744 249688137 285757580 488217958 828735416 221095594 9262948 392954925 489420468 225814009 167931481 907416935 671837980 591603414 797460201 213417475 118648916 90303161 743799459 127848498 757968972 738693845 257114132 849910903 681954426 414863661 431182298 793599119 337990367 36930948 659248535 497529994 212937981 909026931 207725813 547676603 408316642 61839947 477520036 502767038 447319590 454852656 690370915 615544186 277160168 925965065 851330799 815165464 587648718 594590855 515924244 442524687 585522183 948591646 174687910 121528345 176023111 741794326 319680641 378005560 71864269 172305520 396001408 315105471 147998815 629673475 786627732 613621564 885087818 863709024 529123245 322547601 741270376 623025133 35145413 887401690 851360791 782952143 854676445 147146893 728544315 616635383 420527872 241860951 639237185 965633823 688016196 405449270 2785312 312181445 439469502 202531184 559108187 441642801 179934354 934347153 562142448 860754806 173893613 938708075 697409140 160275561 503679228 976821788 269535484 874614700 761756926 821461001 791658276 720044713 132748851 935634396 948827925 549333389 162728166 111514250 286779770 459951186 701609576 429080914 771338380 303445943 162515476 649426100 171593992 822170182 393032270 660435839 114677556 560161615 777412476 158931910 236884961 246450662 803352343 539613671 362632545 280981491 265821842 983425410 568173716 445926168 771429491 814819977 698729440 657984457 647116611 563408940 45037110 1936955 512127127 490039785 602131465 192561519 755079684 449547909 814981718 615067183 645879345 938891016 362375081 25627658 257387975 228099532 581227787 791216216 812853367 29854573 323726612 810706749 56471549 582193608 336424674 43485338 730510107 563716880 642079516 675768102 304732824 512558776 73128689 450189143 773285962 156592764 476944660 74155114 207395341 181293409 25087687 138166125 50339516 624105136 930599631 308831276 697812808 848841984 180695159 412968000 50511777 92242223 477616793 737803274 120231361 648835933 66213010 399801267 404077227 586195446 977803082 539926059 430851430 306434226 724782125 77356071 166959115 597196686 855215667 987108650 551738541 282375114 667124951 869120127 554263664 943253748 220499234 49487409 425468035 344707552 399921314 423028251 176868116 358412717 322151535 333461724 698864734 252609211 945010722 536711903 791032226 306665912 742449895 377103699 960298543 223760027 592114792 466672941 186090576 568375195 713369566 732215856 209737829 749710398 882328328 858818532 65314255 743741525 720842025 568874652 39804918 268032239 387235856 730601067 125545294 771073897 879714069 244134965 632163923 981544550 646665749 969383584 707787909 601912534 759899253 232619806 295757164 233635052 124287015 189465318 637087135 866887973 20440220 229797370 151664055 748045122 370216920 453326369 602790740 408023377 883024735 622586859 170454049 487165607 824716092 616411055 303760595 403444448 434672395 93793425 806181921 676094175 363886308 790733175 99493837 825874898 504586357 721057807 925190053 644073004 452250597 21372885 343167607 218191531 549329133 605830408 453735200 122173776 402383818 659098033 244597633 269756523 393745477 926101149 808718725 953122188 795380395 427663465 341483038 283830932 95747281 130482288 987428934 222143141 329118486 557554657 249720318 211355946 883388259 938417317 375787348 472145112 830545443 60044408 685031254 214876333 921273162 621866458 735804194 455679723 645604188 92100372 488177881 678364704 302184028 185927476 266041506 202897951 57785049 980781332 281669555 235267845 765783784 269655639 79184709 331970614 903382824 225198175 762958747 224415581 274819522 423354718 765112061 191049584 169474400 759366992 256005313 797187500 235108922 339045106 71489597 871478418 615816463 534945996 836504534 477567731 40502820 64480816 133708790 180348638 310345289 618229303 939557905 140286130 632703952 531625662 566717853 408676883 30874525 233766769 605599517 576214255 973155346 946705085 153062687 190632566 266904607 330696924 981484849 663904807 874631739 209361612 593682161 732944582 80001891 86973786 409411326 348343648 290704925 864430098 91574276 598800969 95030646 19190861 454766516 760352285 648759816 352482348 513275851 408485055 726702321 422594457 68231432 239643739 539163859 614315329 833583673 305424486 711343839 433300892 904860458 308421279 928752075 548648429 195567548 22339592 793701589 879275836 850158799 677322732 555905733 131706710 78646091 910786785 304819942 677620697 639424291 628848066 742200849 463508767 965253202 352342196 49120674 67353940 794569181 928475684 471412867 257663847 988239563 963624389 862457375 57954833 346122028 482075540 884375404 947529939 824596257 12699860 507893736 195539186 626115526 698792212 398979743 96719489 420610120 411219237 74458903 692720982 918360281 385128997 695429226 641404950 518802356 130094200 761112632 613427493 934785049 672913610 287642020 865418674 675426645 386411281 185298014 168296122 658547640 721636228 990206365 166519803 416715165 86455726 999971614 737843452 5852262 425467737 540502054 843196943 791309182 886552470 770283142 737512266 280105816 632240069 248213397 967642513 523157100 702324873 939871020 424691592 786346558 413220557 156905655 921604773 164259929 757129414 911135776 190307352 518087499 408594163 749558494 185999337 588352434 787259156 410233074 605909980 399874353 69783352 468296672 806641795 601475950 258803378 408532920 298539059 486444321 393603873 194876430 499122704 650256126 522816869 719721731 43557634 874158284 871744683 960743992 632304825 755078738 648670570 110478305 827512490 737292391 709724764 731613107 539731738 978589153 188486022 430752233 474295822 717655203 893322550 308194381 811505752 357339799 104818428 766918443 453408401 291886256 452217016 918663257 837293076 95941096 932310413 650320441 123525649 313888834 816934630 945526955 201449074 273001928 495158138 553970723 31054066 746617226 427272258 35877524 925536273 284932263 405105542 235703423 541516823 216962877 59261902 610437607 931507733 959868790 909543666 483247452 223199968 684232328 62522637 767326965 658987551 759715755 159735682 270869839 717576498 460959008 956453374 52985486 64428624 448241972 716830583 217456998 190578031 770213177 345677606 584924680 311618893 293949573 41748370 496388917 266162804 942233983 691797381 240639283 437317685 605996688 155025173 565005518 868523943 483987752 975057567 856856161 153875629 706266311 265854917 217919173 140197611 3621352 761002098 313120355 128971987 549478169 894364640 200119337 867202206 493125612 34448262 576800908 363477325 76710908 955860523 492670093 47547812 354867179 57312984 537976494 336300345 416589920 465225188 560286210 580581219 417106706 375508461 560653085 617679933 555215801 806731987 709203229 626676660 283223319 446924997 143720102 186502267 223325174 311623988 360319725 125106434 69267498 404881379 226994849 51562640 979371916 883515343 519634180 350802475 769471743 286044231 134734042 68914595 846268778 324121057 165012855 659729553 259152069 59102070 190631337 680517461 493415172 842764589 972016341 293656084 845553966 899449201 473909724 22233541 719766092 970314230 365406769 312702747 929322609 943199931 163605702 98385304 968358324 965458686 497694493 66949764 806417211 591523410 835212856 180124656 291173421 858657673 5778858 494866868 22518974 40936381 405940871 735310959 772264235 417146708 406476909 271756939 3353776 376891643 185261185 477065525 369757341 24277669 145562741 405388648 246986046 564636814 106934651 136947430 472093941 591066684 698944340 769664818 4938527 672555898 174951238 985673379 552124712 310699868 917457183 753160522 949964162 538451264 974518837 689787407 73715879 603177417 334475876 782737811 905293337 992820195 812338966 718235465 352394594 792910272 554633273 15675499 989114135 839658465 225489217 376881911 516189646 263041031 637429804 704449206 878557996 73370689 988983941 992208953 149816540 987803614 243672660 218725337 450545037 814968449 903416627 185781426 234780668 809766664 141852991 712310192 8992235 870377125 414964252 902310530 921233186 275022281 434109950 216535200 849269878 186699054 537176728 741796428 954148545 965911262 36863015 485582222 488139235 144517920 793319539 413815092 927794633 714080141 725434313 381255128 13583200 159149564 179262464 988482779 943143338 573559702 569078136 929544035 931851940 123996612 521894421 92126561 560431195 12512060 492105796 932355213 429540319 308379385 852230654 597790057 231653451 736381760 109872065 114533947 194810305 913388191 479729042 5215764 627971180 452242151 343340544 516947407 283534206 809876533 836210976 287080198 404427824 331747823 252329875 78716201 782482119 615713216 197132156 52335202 333699467 395118748 850593163 690869932 733890510 174245825 545305591 170082502 269584108 532277680 523588988 237612346 665058632 115638073 999722083 473751384 815065417 175696492 853385591 666112054 618112610 905583530 321604368 763434425 385501713 543805076 153994764 467562370 811463378 334894360 328280277 48850952 319729972 263773801 561628243 743868289 490686153 897180677 971733759 70573291 258430760 925521581 262809046 64960272 832762102 986143598 890629474 264381824 610011871 78399649 691542188 623717783 478598288 208179933 159881808 203371375 252642759 715583494 373993321 110409971 63348039 833974349 431641244 438302931 699048919 185227555 875303704 652193673 104314698 967425604 664748438 333644371 598550908 609215669 684182355 556787258 916334415 558898626 164436754 992750863 455620012 407786496 429114917 846472808 717714055 604040266 938301280 75723945 524324823 80858310 600480293 235603446 356147874 740741598 408764244 161970498 221345776 794191176 966855777 642672964 657133525 255521537 243146304 956657022 56446568 171071562 377247855 593651001 718518991 488094386 869130739 969866881 59977779 335088396 954833500 796197169 5195972 377810549 332712642 463312359 100416704 65614673 301997248 769715982 996599655 52480076 294305151 484978134 653302787 209555802 53986475 323896630 205766374 179167418 182495097 554927856 555277932 989469676 880862123 201853066 812240376 429358271 845865604 963892311 320892144 307668548 773199830 603769450 850210764 531403740 832957172 569683371 444066561 846963240 756057020 3755706 585808916 807037462 682074008 827993871 72080014 996595162 333965938 66010589 968058626 336145902 917728195 659979047 899986955 198808602 734378376 743921330 303803209 770455142 748576582 884492561 32183912 530362923 676212494 502877340 628911130 959277313 47038582 773607539 789812506 931018702 842394010 318736765 815855912 500483518 300825635 228913517 377296915 372302150 559221821 242278839 520844966 470224673 294665119 565546657 649151424 523187029 763808900 414253101 407720770 941110829 163009722 478348080 583957272 474821949 320111753 736211008 848212530 668012641 798311369 994225854 918414221 391240894 751861465 730143186 876537126 224595904 930825629 692191084 143438607 917194271 838874247 952663366 77282899 543386320 426459529 528189407 459281935 124261404 70626594 759209852 79133799 906604686 836330845 779407156 492038016 544620538 159200962 276649434 180261012 640055935 279021420 605729039 942847702 734636412 510321654 574336060 761452687 925737633 742532232 122965907 9207811 912317667 230275537 802869002 105848966 74405754 842620932 719976288 756605814 533456623 191397859 234250531 27943217 313674252 236346800 14393245 898172963 923249893 110307902 695177190 540315580 674245590 67041248 952247269 983720827 279917702 545950581 423918909 174304220 623683295 450271076 614015582 754102129 490356754 210932891 988899715 425677764 488590754 504243601 740631976 161817205 539874894 775047489 261508507 482896420 866616102 948045876 816836328 437230970 789110909 227171193 611823339 136279087 320081133 950685604 51646910 234553334 385568348 73310165 873560911 464080789 409286903 971491504 461223501 174033877 200709169 323387751 986612526 804469898 946877895 435396268 711817012 370968972 843221181 141393857 507639656 825780672 434913886 826653545 240146843 929321997 451829056 727652597 722359136 881330793 236769854 342574392 773544733 187963083 877978494 202385812 664470263 543407156 233041772 540390126 162208736 399266738 703215546 422967475 274410126 448833368 95362662 7711192 434672775 81553725 989913780 790595040 73066763 703197316 84663856 423411663 70175790 156619865 339176881 664223537 459232205 40304363 738518606 928479006 309008513 311081590 7488110 950869813 320474293 631810109 872622270 167984283 27753368 132786571 293183281 814070527 204789284 506675374 135754756 960750999 129150491 252447750 729536186 110539808 108477697 73833201 829477154 887349733 611105066 125214938 675121741 553162413 661538474 132838965 763715992 958555605 991845479 481735547 147657131 33511734 173964036 946883119 732606829 195039801 612473333 512983512 643318036 449716429 536001134 200817934 434202909 707685989 869066868 120370278 306786125 815765763 734709709 827941767 112021934 2086954 806087945 922390038 901801878 255036394 122364544 162779336 819126433 96261594 937008979 292960857 831761842 664406550 460241515 324035720 620987382 892849734 747474293 465614624 119639523 696042137 554884076 20740342 520334898 915469506 590793234 310084320 249968363 255948036 757776365 464600260 593202262 65627937 104479819 478029450 811941389 283324264 989399497 385408805 730039268 500480944 540425154 218936719 942583559 67947096 4814180 758802379 229205214 714550598 770065050 956350433 552651807 221202662 245773088 313574631 339356615 259744563 250800501 949384690 324293655 354373799 241063905 134193963 535171484 69644616 501138291 820797110 949738031 756313510 752468742 322066889 794458087 703679448 941430329 342502812 165882921 448930939 425308787 439669876 269636771 367456693 485885413 851331738 916010057 592048695 426270345 341167967 87173204 265341491 821410589 680770079 538517327 675071593 988036649 881857848 509170686 469930783 355452159 192371483 21676156 293532453 595944119 706013495 442871586 425557200 537660721 167380229 53659030 824087294 103189013 364814088 354531779 574745109 128372179 130552266 574033629 962069764 65010340 826776289 344996448 962655810 990961542 737267168 487215379 165466315 245213511 791151473 859882495 842026791 898833777 241246264 918362489 577782884 784292703 235836909 713017373 788966681 30511918 937748549 176012240 122964064 692068045 249285123 882214592 785039079 682750695 898158581 142367326 896142805 756080629 203159018 3956841 886926818 87256375 711856060 730099171 717926990 307503032 699943504 272564249 784228833 903117636 327997583 76250016 544145893 994285945 951584363 358882130 154653488 791172784 149742557 905118041 658478373 648347416 300525031 388465177 637619366 732796317 395762582 585751372 521880356 339285753 659716348 858865389 122705299 969647788 663420465 103278144 35938674 416112127 639672920 147023568 473797577 652345086 458762396 879413109 821159461 182029192 779949360 65143111 827692955 732240953 950595149 675543722 828901321 314401144 45099828 122071118 130274777 367848057 862998321 297715750 532122997 53993522 890140310 775072367 846639572 452043365 879260606 607168681 215851192 238238873 145068041 6857892 566954851 806095132 330183397 779912052 316951973 193568779 478361279 867704949 471002324 326068802 422950421 139123786 498030286 934595181 714352744 425447394 3173114 496875003 382128452 159186286 996750148 507086880 690322747 559739757 700668199 952743651 697507554 320629150 729655453 292538376 321618915 339847701 988301101 553263649 703078883 669442082 312731878 704224133 740868502 456744800 583706462 976822611 699583414 317710006 635683507 980718199 331458567 450893649 859397261 416839839 515317329 136698272 95812375 828935491 805422436 159713382 312830472 151543460 171107360 635669410 641855907 849156810 475870821 669433251 220676520 86417030 698672154 941571068 900065384 175995504 392625206 157944968 362992057 247936486 780408240 183175280 229680120 198127124 137128076 368413 818176271 507591912 331231957 762231104 579403624 971847195 967964570 212220892 504414972 156314667 610062838 653066544 238533704 428387170 853284367 996205517 271435091 564539090 630528522 912477570 932773546 860160851 74545950 266551407 61618277 384801921 207893635 153951732 136330015 910089670 346162811 73040324 323884803 497731927 703664976 872127183 724077243 724447015 303829078 134289999 466094721 80541687 175776998 328470733 104401166 374990929 735833954 217070866 254879406 77903235 90789428 212800821 632916012 862250150 790618320 485098894 602737121 511208351 981712558 253806023 270811814 863859726 373089362 504104904 469661926 931434088 576131655 725950150 609836431 220123879 802391067 602031166 888873237 741712007 912926060 25914613 763028086 519885329 63263453 357634037 388660794 828965144 743832855 988458388 596027760 105478387 478965705 550930541 695157421 292737983 76264115 218512999 990357775 366313832 80119954 31742377 657554746 414109857 99937333 944586669 407049825 382563290 940654952 500237867 659626297 637753946 673415181 154437672 784022268 177468198 449344257 11563764 504798838 529275920 930139441 751650590 734865650 366481073 161144970 303908742 187842888 62678374 43786510 43608145 581992660 229442649 390876602 228508134 591637631 279300218 211198362 590828031 544988084 35291778 584548542 172711059 408138604 804208115 340171076 941516010 872485156 61602320 594022989 893550224 177748965 591537902 112264963 985718361 34247992 456893029 3727767 711062367 487674934 555945232 492715075 702971400 955480703 244637535 38795338 915091201 88786228 333895803 747821304 745608252 858034186 543029088 122538655 949743609 228871731 682211280 627580823 610532280 56645486 945177423 107759938 745975624 863633154 772664368 467543309 70575549 685833404 611909770 934903145 126217330 602414068 996718400 900790478 665566220 323871367 70942454 202825924 823231862 709933018 164052766 424538833 530458855 802421727 204768498 87639940 10354907 533512201 545401457 198605183 73752339 56600150 48537442 64382047 235659677 999068753 317633622 414512080 729673166 743544320 969227176 409585285 635218240 435833090 188203125 63290676 173831901 235096432 927486372 832832933 320129482 511827184 592089833 713667487 963032191 23673781 515189689 99998196 528948665 33949038 807205974 793942400 960052088 422858848 986478282 616313381 379049486 331431502 434729954 543378380 768649995 487304070 328504377 254087016 695498318 106063840 373082412 405695475 30670073 41633211 110833639 467289966 589879416 719228665 533174871 47327206 189551491 646531083 725557813 458773100 198897427 76302567 49731586 908950043 996357485 235584522 776735750 986732309 786652956 775437695 487599443 676026752 666902006 988082125 539925183 631297684 649119766 66886416 754431976 821782921 36617955 911900644 829008957 197704355 309679108 225383534 279265256 498128936 489190003 626370401 116299493 405295982 496692072 860123375 687778288 482617294 936842603 4052 756857239 825366954 311512390 336354396 988122918 135135085 490076940 302925140 874683831 855230600 793497373 926519568 421562666 288792697 290566936 422552174 489889574 907539901 49410796 85586902 956892191 273967841 587861456 732734007 597953097 196433271 207651645 826648071 820872868 484995864 85074937 40137281 314291709 750535787 282474764 774661997 501923295 132907538 270761169 268960411 444559782 266709958 726620124 50390625 156245873 102650177 762503194 327625178 712086823 865740096 397964210 255654318 883403640 635819666 153117722 581948175 764711649 75170568 798526733 336265391 295297692 627260540 501611408 631316429 842425271 343079379 832090863 287017774 121831933 411091953 158970302 9076259 747485449 778558156 4696797 308510592 806897979 12536417 966015080 19166375 815183035 534497197 655392981 986955897 422763640 994518972 156141008 907201127 824098093 654625442 314110811 566253415 876698712 466772089 136279220 833219320 80806725 231021155 339880815 676499998 508963327 370277766 27007066 995285610 483010657 568400922 388848791 399846130 510896393 388947545 293037701 971906898 892103266 174825856 426542290 524836530 329744796 927084257 28878707 542959806 178952622 900681927 651314851 788456112 93081178 17721742 476850662 745905733 418871079 922943642 532162314 570166465 719894628 739152214 445220645 405550580 745044523 88146994 822442894 66112309 464653661 227484587 241918188 888100446 66143391 504589118 232752173 603066077 240851301 653435514 13097857 726061208 110074085 881766897 281934696 127202570 515871520 237908027 540618661 749903409 299429854 541597948 512238148 97892755 276979118 443475933 129858201 635488061 105792749 53266834 238479939 111520455 552986293 304862419 736209953 135285836 294868977 821704037 628255074 282964855 83901523 645666575 569691772 58153586 969230159 436935333 631279658 688127733 863235370 78685440 773468785 662828350 192782312 437359623 522461592 753205013 435717214 586875804 288838459 205964999 632530208 463435451 395334963 451764777 567530896 235151956 861332131 151447450 398185174 743508083 639809782 187531521 880487650 521740570 808187620 417810634 596338543 281485152 936507241 823798513 361592568 719569502 90543815 258756077 766109640 472608825 233858955 480058312 303271666 528928534 297674121 766209808 268011851 913272875 715159263 16278492 61171313 445569201 232452847 119886537 380754897 352488 184710502 788910588 877160344 914197279 174451001 902771751 266330562 295103142 327890852 864519549 49892619 580796119 675899691 307350205 920850942 965685779 667863192 84440109 228468202 965369542 176912901 579291802 388978151 250236003 651428297 657402464 941256151 509340771 742311817 907076694 370577761 153880392 147669810 715710185 405127924 256282013 380637179 103032577 767682251 972155122 657915738 492413209 539144674 47557860 693557787 321304619 232344838 773426199 386520389 640835777 318325703 95667504 947485483 674975718 686122363 427091940 602658926 40590900 35702848 867195886 369295086 657082055 210768386 283053583 230868700 419521604 603500914 160134419 882900393 630894556 235686150 313942217 39926542 253192260 457398270 581979405 836763671 454766778 614529380 376709314 43321867 473565700 448117512 415797459 309103998 277961587 112460417 250188078 274819408 846153688 878134831 475668434 844804515 509492375 589167675 178773438 631937248 69159057 908089750 121576960 782106307 944826169 713350391 360331431 339460416 181524352 820296161 187031501 879371168 833801962 661942166 582166678 705078127 344217723 900531244 583316524 222793598 939651007 843751292 620015297 572183790 486505422 441804323 778986126 389029921 902154822 301396104 801836760 601430979 41209934 275092958 99261158 500724168 522786708 143451421 596631309 691806317 139848015 754452996 197931942 84395830 770253115 634107420 628818450 629934574 172661918 82269112 991991230 122873260 682851146 335320810 361705757 590614987 490789522 245303960 1534116 662741740 590720598 685976424 609224152 71722497 92672508 228816075 419526214 14038842 636784 650147831 569575548 322950422 224704045 709227246 569202967 845777241 316376109 66896249 827404729 422313994 212432630 713978407 25850378 187063429 698487449 685634896 384255678 809143394 960917675 586045973 83592848 620554885 741381448 871436638 958716227 245491229 590296603 586690779 44895900 446589851 699175247 501794308 365613941 967719357 877480603 970104605 962545825 66806406 277742140 916581929 139464710 669339717 115531261 328706042 22789518 408648842 709340710 340297512 531224107 721386294 576254608 118416660 908411607 482922347 110084506 841418473 87494037 843788436 686233898 517269649 669969519 23210854 971657644 859860424 349525620 2262239 938806043 508606222 124276418 762724161 345757167 772297900 666924925 895707931 465421363 431702961 840160459 629477436 963233397 75684598 780006880 929484998 969204424 933261850 156605942 259786781 95217613 677880455 376049999 793055721 614543272 503241322 139661878 706407198 180062474 914701248 990397949 218919678 599625769 148871494 727053310 708508681 63249859 729845636 648156316 340816141 110304282 55230925 618305600 277372957 880302595 125057846 993119324 992782741 340030927 548232099 401563756 780700952 495595614 860302521 656400627 246893720 347434521 360261353 363099767 576774469 473763306 383191660 160048270 611017882 425469000 874946112 352310992 440376156 654492212 833110834 420005347 952799387 210733619 622780623 186479212 341894310 676172114 900989038 506447395 943877662 443466792 878814256 437172924 40735460 266672083 888828417 436833534 550591269 212348153 432288909 24435632 809913428 154772170 913857100 99708072 177863730 748604411 847621763 933972924 905693631 753678793 609221172 314435026 5990471 879289597 602407218 704639443 773098078 407240418 520376089 150777776 817613541 722053200 586289730 370214756 251687418 94756518 700074717 179994099 10722319 878698698 917703636 296673890 607619283 598004266 366362080 499411659 517619270 652255675 493578374 931917123 872419755 821869309 778435338 798299883 245586574 437301493 768963453 71494897 874275779 24119090 437376441 681268102 155082342 124042955 598649434 190338276 15031519 424360795 242958796 686413390 795172308 234389515 83956030 471144206 724679999 944359050 564328875 111854453 414150999 549538829 449921231 884143070 530815909 537705041 461463092 690561453 834721779 638431391 869485611 623536201 481683285 18905794 11837642 187066919 313581863 815511570 309696244 970020287 692815887 744093297 923746643 624766613 58573559 410832701 426752849 770743857 730565140 112250475 46381608 664850216 280161253 32110446 905495004 592287764 222574123 594290758 97574964 64067221 698316531 452066425 846262719 905833561 129207184 656366612 296761044 362890252 821762467 69675695 410609300 576132206 284139531 661319780 161679851 142584640 42401783 673288929 642460805 221657677 44818392 170113613 269081563 84437605 962183278 847119969 182669871 660854881 870458813 607543132 152365958 751089190 980518928 709018370 80993972 220437920 944558330 33399716 18923088 925554108 77674586 307729177 957379003 881063288 733670739 380864443 365831192 329347798 623414609 262118259 978324319 334932961 49003272 289808047 397135170 755025320 33969524 495460708 901798980 943940424 870466268 746141203 776430254 993818336 280100297 873752767 416013201 86529184 517464592 7718902 599547842 48582580 84742094 148717013 463580899 531527004 137736809 416919792 327700059 595763159 400810377 644983671 354612317 939035501 783445540 6419984 116464863 815688565 623462264 408792310 730823329 156764487 758575112 797768425 771672620 362981188 36481182 18813483 521963216 168756697 415037781 629106059 159916454 459053175 931664000 870712671 826218129 180772502 524398027 912966792 669623602 925975740 215427869 209246058 523803647 310653811 48015790 552492276 634412334 918983243 94271736 558954906 230042049 728562398 226422720 880403551 631697020 326993872 794365714 760970694 616521463 177578954 116243778 337454812 954230403 938482305 234039535 499855932 310928704 448423338 408112633 194903807 258460444 849793036 147414159 520192975 973700807 737895024 409521187 589382102 453645491 35836585 184183413 204725201 193777188 186932877 604286596 487474422 298122786 748462850 261042592 372100114 443097215 228757749 622785630 483513968 465599184 832748626 387973529 12095209 415450488 72235798 540572019 249747671 371353244 231491140 815503964 57735458 517769008 611925222 452231172 539365691 1460203 476458254 974959213 788666389 560534092 220724439 248549591 339854127 598988189 166790497 11210956 675279760 9758188 860302295 741261606 9299141 389674261 803375724 791781119 861529575 626757554 197549914 945071802 198309519 562005043 953716196 723262725 753034729 596264896 646377301 414367701 858728863 534467417 945628156 751559521 87924459 349387962 10156598 635704115 110440328 95444844 862634853 402688789 978812604 17157055 146704113 92063260 965823579 137689547 524237134 456318883 424397747 323689074 388342521 708285518 973965993 576044635 506220399 91061004 303970463 666505460 774059068 160232974 58335109 296339323 30912500 351883730 928196304 759401963 145988400 326814237 666015872 324341774 521341842 593662714 560132635 517892212 413382340 43845565 145308078 892397944 496103802 530075650 354463441 522035255 637393006 933295279 346105760 215177624 930085728 540080366 132996036 626626383 704123933 615742263 597664107 553276624 509236084 996753472 535483462 532916832 186823233 765933589 264271002 858814982 207026792 377055995 688431146 953682577 449447376 43886730 826982724 951443609 762662766 818238111 757644224 992299390 578293821 141501021 749531131 613528170 146137658 733255470 23181275 732520781 807615861 770677706 735786449 523683804 257214204 619452202 510382542 117346460 756021229 250592662 322333781 374014930 655105127 775662489 591818089 887030929 474317973 898471684 582253467 131873711 73639851 416235511 250035966 320220362 783939298 376281557 576377397 464541008 468015228 573899338 765418338 443713391 285662916 494160459 524818230 241567004 864123660 483938579 568816101 339116827 621773998 930286886 944291886 128924659 317789197 160937811 937328216 95638261 80237458 244844458 949088561 304543031 271206064 821752461 259071247 754287260 980661473 915553178 925061328 593796811 582896809 271773891 822815962 79977012 945681038 917731127 308957212 565775121 774556199 6679159 597663500 563336287 414077707 300621123 691848363 868168424 696670172 734541481 630263672 325155388 699334470 724025087 105517705 956519351 645019901 607437535 332828271 80367474 44220088 13567020 374568522 916554074 822323514 802924822 51095235 595791390 68843343 939285265 932183301 953906745 530488007 663184854 895048134 319532774 574027646 559410794 971138116 178187570 647649877 419057181 702140233 514377451 303892532 550403454 957096481 379574697 706723603 49660781 752725920 467096013 824961257 693920780 882257703 782493566 924779190 968839624 291568540 640112559 266737032 916803159 54412909 492639509 755152242 990950834 154552974 860226355 389591179 69813025 500884865 316746576 392948212 259081772 950361674 66514813 55405277 314541994 678738040 109073808 4139891 266401977 650913056 97369643 763868145 324424633 136919525 870882742 45304221 862307670 239503845 936716643 797174716 493747081 518867669 51576358 323693220 586371213 896540137 787904453 257326255 267198434 712155359 907759042 156534588 309820249 377823997 455214194 864140730 282522115 130902545 852143083 659546777 133443903 892323699 349373710 678555731 124802479 48640768 26726020 737108585 777722432 759592991 397308859 373536870 750170921 730606270 951711213 967099614 676525281 414089811 432487194 287000685 673940272 406661339 474320138 127046318 192168481 991370719 396413516 898378579 690152713 543021418 920533820 640366856 179126658 324621076 553718518 468812428 95271028 629420286 346074213 484842911 858936073 835656394 480779064 49429515 740681653 20880550 370559719 153648290 155256114 422465612 166766005 302101058 314880394 933230072 950650788 381543113 499827462 90766704 843340172 155137570 362891066 581998853 685460992 287166273 297458179 919687817 766526051 831179551 144301700 425793626 301385178 42937276 6549035 771632229 55026264 896359207 702788525 927138576 31713174 272496239 687651843 283451480 127656979 175979185 300964723 369763511 936732180 329906186 660784776 927335477 478940337 606661802 997113624 760250718 699817146 167366080 708258624 30482507 806738898 386608776 765027939 968295323 496333669 579007811 357945899 853845361 58712991 130637373 7942544 448926842 136639099 946278084 24522189 657829619 280354996 963141175 76890469 968181653 600114394 558139639 609889062 106524840 109779512 33245034 221115683 27863288 155136486 1256202 778724792 106514143 836400072 373953355 834282124 371902265 803222404 273405106 294001033 333850733 60590986 60415432 357835232 95571814 757761554 970676768 855595285 410030239 717471260 933782359 284026853 565339925 687416947 601494537 57384288 440589133 280214181 539731172 888432603 561458772 974569994 845319066 728390127 588835011 433225923 756537319 79007619 360367545 115666614 482821770 368343744 916858329 343371416 782322766 124415263 913123922 579229407 92200711 947137625 727027165 453827272 914184334 27375987 799901620 812101985 330390469 21666232 483709600 585839223 376288150 517891518 831809521 497033121 329780213 917994081 955127416 735481665 98528475 426066372 992306073 137429887 148808523 555423318 567719989 31896909 798002252 300927944 511838142 978459999 816087028 273548825 905495849 258287418 734327902 838796939 851980276 541290018 310461608 178269867 737502501 745926700 578425344 234993999 27827276 300820780 291161238 473989008 686111868 336810437 949905574 756974036 646364505 884711516 401573235 817910472 338004482 446371876 893630019 926284895 841833514 649415700 821327725 383052502 41329926 505792495 575202631 724933553 750390357 4107579 821827383 241995453 192164698 329951303 425016484 992934666 641809384 309870891 338555394 828694010 128639314 33093834 1229261 568356913 418581881 94155725 988697989 427952279 929737665 901809568 80925363 558873443 282951190 921256318 951454698 112313102 495337460 729907048 468872137 588705635 612733269 810684196 355593194 577992808 544032192 946633541 937611774 806557557 932591942 895777313 848931510 903723042 403972473 612726999 61556426 507653977 897564282 45713490 439633917 700617792 198003183 311659585 981364763 561108307 330923013 863983645 599439858 171159877 971734642 275670054 814489699 878334497 981886838 408328292 515629385 109669936 425189081 802646441 102239378 49577227 292650211 424244873 640976179 220759686 900863856 177463398 850460193 31448525 130691805 341553261 703526239 507072585 431146764 694681223 797317883 321956526 633002611 636332657 336616450 306433017 107358978 830166697 377919892 799726188 87179577 671799160 595525071 94583446 992814879 751840750 125583583 759950413 90303810 225434854 410589174 925317032 812048311 981778940 748760654 543155215 429419295 947955866 882555435 559682349 491513245 431770353 352473555 893427703 36884961 91859704 770022044 137992103 768308768 898522481 479029215 903119556 58250524 768964321 16962047 739773465 888546070 942555291 986398565 298960826 196485345 604712374 117289858 926751236 758988495 852245525 408550356 772066461 526515649 123968349 403344605 211735916 728999965 911763454 365474596 31991722 808331985 815297077 689839165 490381010 516526672 871069948 610481091 716698025 299815327 830637343 840391255 766771512 286090558 427537964 713662114 653578199 967650879 629222782 887017560 612259358 547400502 618955058 284004661 917064694 250584388 184013620 507166713 174589834 571910413 265494578 150806382 283411021 635790270 869346468 486546791 820896250 190862355 921458636 816058815 294961049 163793219 556800177 961160020 219742322 282630167 481643808 648779032 577911070 263067102 828876985 368411894 117673077 692583281 652384724 502616812 730082463 123494440 236399265 510842877 268302338 497747182 305947659 112352049 36208730 371673903 723466953 728627352 771172255 301353442 343181920 676111442 489584919 252657799 966894103 581024638 188385355 744590368 361499131 739685191 114598930 595540543 805183977 287925212 849536904 504556536 246619261 734658428 808670480 164793581 845623841 830531945 717549401 745807934 640478215 842296043 627589204 495249313 66058530 440787541 854684736 880535621 758336312 20626943 588172446 195230699 685467600 955048270 526585663 241662939 961849657 866315693 594672434 400876513 570372491 153790860 8073687 933964627 767239079 25250663 515538896 658732560 160750134 709933759 950460429 728169857 369606310 736421662 684341948 952446865 967346225 530147606 337948255 958176694 913302743 243403076 827360439 495665137 971752544 501249864 24544720 479497669 107032412 265489101 751892736 977725761 886863397 302541444 788688354 857284605 851660759 103128872 297351516 209963030 188734302 854214269 946986651 312019251 981092459 962234441 599663631 202655106 380026995 35223394 428463224 400536249 806165433 441136290 369332185 381542165 366288450 859038699 429042812 415719519 828271843 102522149 471327227 856459490 455760945 623178051 892882986 150801016 508823437 243727170 661506615 479548284 440431132 128082722 419450758 849809366 427782613 505413356 323291343 115771892 40944234 531914679 825413903 388112331 827068510 532660376 735359111 184661978 871129083 147719093 305807815 612167211 541559886 129322804 113684128 51439940 937525299 951376460 613156144 397929794 60094277 317620788 81853146 699815618 377767150 40860976 875604814 192229866 172314466 637490570 851262333 629134182 874093207 401800851 998880929 114195823 890772811 505601958 613607235 606118082 54733833 405751591 737428525 390074276 77918238 765486460 173510002 57219305 989833383 976538141 981166963 453711582 396848515 442728062 80025548 283837545 876864086 345144614 673537650 969649133 824770964 69869214 873567380 264629848 119479159 371571321 299460529 720884259 838222075 155679823 400245387 426700873 653402856 280411331 866923566 715002704 799788244 375562366 683977458 70684234 907424786 194917687 814357871 790271946 693304004 63766178 751220621 5533937 124441297 288663430 953952627 952771682 686942957 125916845 382289563 756388685 79910794 25693159 267603132 69051495 581150191 884131087 379927776 524937969 955453726 883139847 86173263 887731630 882577645 251621049 223657886 129734638 751228145 746145817 133478826 920609417 303124875 283878686 141118614 911652057 194531041 745637583 432978129 294916551 650304998 532232242 303307277 338936000 196518740 819171676 363293253 133515964 251475622 595791463 765571264 295811384 593688872 63112818 838923531 962773307 631120618 297573546 544592887 363779666 717959620 386557762 828383393 337002900 663288405 913965172 734270830 153293472 370896647 618381184 117186827 853510813 190394631 979716019 981803371 151599924 986581328 671558490 355841227 945079714 496539044 619151062 217488046 339185569 439053705 881765254 739577059 117800057 237567309 314237654 987007098 282159606 888422667 705655606 686575829 263524722 818899876 935976224 63342227 385049290 656583102 537504792 904486560 771905379 284989132 167009192 955560759 888528682 98842115 146643554 263558349 222805400 878894949 610459873 886175529 487772842 730866874 294299332 796538454 821763046 672715411 594166200 625011629 645589853 337671496 540515440 329254595 933098145 288782840 199417254 433720450 298278866 785685901 155952411 720368149 759930009 686882740 91316376 768309229 214261023 912685546 537869043 81311434 116872479 211600490 296926979 270099119 75220180 495022914 327735978 339973096 36500486 483063615 834924500 546636811 193886979 254212345 451684724 499294448 531930017 859654097 426376325 333575614 358895164 182130927 965808388 757819875 177040062 734496834 182222592 953903633 771356565 162300804 308343691 663845701 833054389 406349110 309410748 417263043 906835102 551592862 289092537 215026198 252301652 729457615 284689322 365299220 127548264 208947871 955594946 506771416 344900846 20560301 398546491 681239241 832936583 881065061 134067286 583449230 702735958 603568885 879952224 741216803 658343692 274647892 915934378 671485117 252945117 521323589 536640910 623324898 215248520 551312974 793691249 730669920 369827924 464456387 754942391 151259211 636294926 423234230 413536983 887846398 881991951 289747983 591352138 11093023 561741618 748845678 409819027 80036504 558640607 156926538 250666555 86519455 356009475 246680536 992958164 373002158 709066773 828362776 157091578 175786639 910425874 706562004 976349518 362403910 637148037 254000282 906774653 983139118 418928246 991398342 542471733 120537569 712138878 116405108 990069808 903829569 368347324 5528974 219453751 388737660 449166295 327844037 526446093 339209225 133932282 961336720 80895623 142088863 556894428 968381232 222161535 109348679 837828799 156574895 97572567 482069323 551860068 823483352 283780731 98413885 513484318 665539657 34645339 731945983 938233792 629646942 966201201 192542127 545228201 921202242 75177923 273753791 215633086 598027492 938733910 493223647 450101875 453738751 181871681 939652108 126820278 892893709 682022042 150171019 836506634 916565853 503459207 508891368 564917879 728277243 587200048 27064058 216879750 799649472 687573193 256274648 185859921 699038540 892636554 989832427 36523637 922381579 7982006 914790877 174063384 932629289 767799448 854894496 985663211 479355551 771766915 130859125 348630816 66749231 803103694 611932636 137963383 306206815 714262496 449148325 985765688 978715264 361123358 730903267 533352494 473950122 892875007 870498544 963814834 81595584 897398011 938202227 817322915 285331560 526039955 840575575 910005603 536631313 588372565 121404110 83700450 869693685 371899342 527241306 172550555 509071636 428040349 771246266 855402884 107858487 754309729 459404798 177570346 783806187 494817479 606451065 406531481 518580108 400495231 781762757 462699877 167757624 994309701 173896391 267812270 493747416 360988121 502281901 868500509 91470878 86785799 950110955 625199836 439109761 183083683 464062013 743602596 68296255 603151234 802881702 969517746 421064545 777158026 254513266 356914637 195531963 588244647 113891640 667433795 428825313 881966023 576504021 79362281 613769524 381486567 428438633 609799452 423480543 763200262 776780641 196219337 910326222 317771572 269327475 497959767 932561343 405141374 70491290 13684670 671331117 65568513 203382301 120233345 616812641 509993437 411412356 372938913 260501615 227203647 442183846 723914157 777781290 237247830 922398113 972350650 998163764 924830305 552283093 693051499 927404280 98323358 30584561 942452963 444102565 371861337 403203559 161017041 750424883 694103267 580182518 324757098 278906464 223545238 668161441 143267438 769025462 446745561 326124466 468757794 736551559 856556048 407380034 232038742 802859495 580108209 722549162 916856670 336650171 16326708 747130255 181422106 151806888 105163293 320599004 631889903 849795616 91337205 374704584 355803596 908297051 479594320 340237517 501512230 875300950 641457606 735039408 678992382 957396959 921585146 378623358 536057303 102806914 965876377 576003208 634016963 728071323 550100307 915965809 650175314 555716420 165995486 958798357 746242216 570486634 649227013 161593510 444517228 613082047 38355338 941891223 249344198 168865463 91536711 659265440 953081714 443004819 792041998 271475404 320017581 632606044 262874822 900994916 298627388 315445732 131384411 355285501 818412140 38997697 62607549 868859250 917678872 918914131 462172643 549730793 466693272 733185731 891117268 305723850 219552217 317640450 849921177 838520017 704334403 174666696 629192516 509949171 998914768 333272724 119281390 857782134 342681341 855888046 597306557 808722409 477468112 171473450 913272277 504635165 951534297 176861916 258071151 108842033 627244844 401043303 371680960 61881734 731511403 37588528 891218956 308158925 33358262 938129514 268390305 341243638 24323265 859242252 417479114 304801599 917145790 160333784 503206630 552755757 400266094 865205846 914361432 992737673 944196119 172053716 157959049 67981419 844189830 843625323 571721960 985586221 404711442 913480956 931639541 708116339 677637275 466592305 388229422 678391594 275679108 930083446 963748639 80832392 323207356 38163718 835960667 330259209 512719293 680538595 370984569 629716334 957129342 95788240 987051550 167964868 35893900 874232419 294320116 865040483 743910387 964532977 925941933 702383077 399730249 17015705 588798210 607539244 255839148 833635655 621990585 766440039 26597315 22446502 473735062 998351625 538886330 403210806 542841969 911415502 554734667 99647281 370827299 681675196 3007153 325072545 780167820 115628574 457231794 338177879 596777881 751498121 952987041 963970537 627039288 499571160 111469136 670833593 890903401 204592176 45051420 848694256 424443179 12687358 102642416 526501500 559703943 467032565 635825465 880187673 758327187 815988497 854052585 650364995 845831269 993737112 954450050 884275269 479475747 184996885 367246346 987499053 819293940 491102299 669788175 578266839 567885837 6670472 182414503 353292767 577317030 286236675 669936241 352446126 970156293 454143602 3483024 38913398 443221359 167996621 906146998 704441393 776049466 260273233 583148057 467589018 786284479 412933503 99766388 132059709 980416353 721583910 491457554 104687467 530762376 498213723 216041919 272256055 506406058 381508726 74331086 738606727 309546303 30150177 876431650 42729984 468379334 865831491 28562977 821185813 984183761 532700690 381300660 490355197 474500587 771376397 489284184 279536054 853388979 509742066 222060296 167437578 555438281 690635221 367428171 63224202 830342358 808427269 19746604 510347407 956677774 287554081 215777350 981537844 151727021 530502923 997514934 629144680 354650354 905184750 324096801 533717977 445858602 358339138 887895733 184237309 43593764 923808709 728984616 931050775 201675199 44767092 843217597 443254573 285459160 85129377 255923506 304502542 798568541 587913692 172065501 543101528 247500860 270150151 622951055 742655846 72195189 438213953 389727146 151567460 200993798 343812088 678244112 672500801 923400189 800172513 64369204 754762162 391539303 563583224 299353098 564364346 282804066 252888705 485080080 527293731 816688656 759258632 679931725 515708024 926135195 839818849 798327116 180518424 693670452 763087529 359628585 972587679 482097175 66386757 837446270 739751028 827075716 684338398 580155506 544533197 10361543 437046124 258036916 986191002 361925938 302561065 391065213 223743394 637855263 680844699 786901893 958007660 89450736 17537677 93576981 140323398 253469968 979882771 217792252 717544522 665708786 467851401 358967955 846897754 808376590 750392725 522106802 225302810 973292777 448520992 533666244 965727740 54253578 823527266 124783798 659331641 374692613 252031191 61934590 246243793 202460276 938684736 54846872 44785805 507197434 87307948 109603088 346013435 229784384 761871982 413183087 465113973 919919354 486722597 91668812 111033624 822389217 232592048 713021384 862118098 800904631 825104192 906346887 343893584 345826886 165559367 611355319 803913485 658272865 519181440 108423953 614187843 196732130 608767475 768422094 283495166 106409901 986244330 461747643 20510480 653464745 68331769 989492768 799172624 637992650 45813244 418788823 325855582 133324043 633440025 560631102 286047264 51390828 319799226 204920379 789720139 893150203 253425815 308901176 798206866 611281349 90421414 681084466 837323899 502701032 147845171 561128868 477322057 994084999 57236930 920689044 296295180 790557640 90315567 125882515 29482147 197251810 564903057 639842994 30587815 374338317 35390799 83800724 16295810 692426378 672498963 851122781 317251689 692232615 526381267 874570941 923896910 858688946 496559563 522717671 667167221 481941510 774085246 687732378 951355364 446221064 455958459 705649953 12899692 764390179 240766866 812889157 59666857 411215811 641684579 34083423 341173876 298850920 803466193 513839690 813993851 493329298 785655751 59992689 624371498 359509452 274975613 222026175 25511358 98889895 656074858 157799083 986072117 494600639 321840470 223058482 814133589 417607092 903891789 849573597 419332274 234751282 484879008 364130744 276218787 868691437 561790960 801032027 870981191 485196700 451808030 584296162 365590662 401676034 782201433 355409653 425831186 911945961 487539472 456768195 753757794 281619237 151316743 708524286 532735929 908057487 407068475 159249130 442475547 250444041 77368571 544449867 381196122 858039933 1305309 503770988 685774608 433771487 832924603 871120423 188451229 913513257 782252475 41909467 611298085 900603227 24303430 486660202 332263580 163301758 971167762 524917318 845012156 425781162 581258271 672041828 572238080 23004151 380630701 777515842 651761845 52466564 160526663 444114151 670035944 15535489 635148484 779696097 968039540 248051225 375197760 193910597 81592054 120511885 379980832 847800499 306742747 313120538 891999505 895774544 323917388 209886223 698648835 870142667 385744200 246595770 499045941 171903577 30371471 103193464 676593704 92195771 382610341 726138795 682690734 297009205 80965851 174129851 427503323 159573397 62293581 107109661 803976708 772018482 31578839 934257992 472808660 837279978 901292835 590566083 721500726 692219428 677871779 788546325 719452764 439167183 462907530 403693776 752702404 811500126 63378142 263243409 505205810 492752597 739490151 77415926 493445557 703351218 553309873 883957934 287479195 492229898 696658200 312982889 452403588 657648240 368792507 752458974 559391316 813472261 651368321 126400725 461196601 412808556 384531482 783510293 656403621 641196245 365100291 886903921 572419411 485319670 264583285 877436867 248512842 319500045 747925119 404748524 469236437 257373152 526225900 580208603 584120200 97685697 309352792 533013372 471358785 835885438 108283938 214867148 914799907 904624766 399351667 795060686 594895001 334158242 362277177 922138252 117111384 304333658 844865324 266472984 324338526 833481117 471239632 986045325 755319788 996121319 5017963 987783434 568008339 771795777 79547149 190003390 558105378 36612918 216097678 622197209 34864571 882581214 531828366 482805651 120198075 559203032 264782201 985672242 274170068 393153355 134282875 63620094 750452728 471091425 211397005 647699530 65149029 963502036 691876207 435655792 767819932 782249187 152230570 364831442 506567533 270327889 531652752 983296474 671422187 919402220 109254712 479020796 829024623 588210447 616336768 80277427 340347040 172560275 103579666 951553660 671868525 140902626 166683233 634403815 867110918 879350248 400921760 490887555 35546345 234444060 515127762 825452779 544394200 106942845 459630785 843543744 734767589 975028624 209407736 951682480 311640413 256074852 338822102 229671787 835311840 833014414 395989879 272907179 458280019 872037167 39570371 122327856 486246370 730369258 730398059 6384329 918172414 95632113 168820969 457526340 216955240 187788789 94323067 286568830 187711520 955504440 849443371 89028952 962240631 757074817 402759366 869291710 139460348 277399578 579393768 704823713 463669391 822769119 329159409 542399482 338631507 533495851 945686279 884577997 812994483 762759650 370967067 911243555 634186085 734851190 51557607 328772879 874077285 532540639 568364774 39389354 555851255 936608404 965677417 332030746 983727526 394370723 819240569 898781573 104523336 931978901 81028080 302385183 802216186 805147008 151060591 442710819 179570206 817704198 202674782 223572433 549959264 654206028 243704559 411586420 72606135 495944960 718467350 720851552 550918239 115266647 776070296 893617904 2594265 202700305 892165882 798263938 926523890 171171187 647020175 484413061 43357120 428080717 458836845 75307367 11557536 112678387 500995699 684643234 244320566 174819397 910050381 935073982 888341611 342337191 418728038 773548097 938845815 881181448 663437820 235858109 643461586 745531105 665888526 802568396 576868422 57971758 860329314 587867156 902853595 396013685 638504840 928803387 702098919 183410117 420196829 522917876 995719172 679930292 275450234 13104636 86566170 952187489 939152717 14893077 919262291 392638832 827135749 896197125 14546978 279992083 826059801 465482400 117297989 597976317 390180040 786233539 474716609 945036653 116071197 811277902 388982241 723830824 304169448 254989099 268163385 492583294 815548352 869760588 93818788 388079430 113743879 441445550 150303819 79139806 988329954 311775826 223489687 24711467 200271684 536968513 185172795 980852636 74198502 162900620 358696756 863913255 547115079 104750416 347196104 406619210 510937263 42669488 359071362 840813835 284482093 122716115 722577974 189463545 947741594 878017774 633508354 91572522 782140057 407117368 804214601 342611261 569719436 278820856 437953973 640746582 100256171 1389172 520589374 303317799 675401707 505933056 521333791 96162786 742258698 160380664 850875354 871272777 855278738 863766202 653128769 388510110 187008724 600124596 258059104 635209652 449878505 884103255 80912795 360714207 150015405 377797916 183764626 654958844 274426316 272654215 655329842 628500851 511562934 84975138 494578095 719243313 48831138 847707774 550319750 430379951 22388368 42764854 470352765 893465831 792060234 757471727 858690970 397402210 946287713 262033486 854631224 119402287 497017643 632172808 85478129 929555939 953908679 547895257 204487849 796884891 986487841 667597182 411779210 642738431 883600101 456558281 909648908 547992381 907058319 401934213 756998890 617471243 277410909 768665486 485731369 259875239 199112025 151240651 262682899 420113366 810677586 429817632 277361725 947508459 361667040 690656643 539531906 930777014 882144101 91847405 613194762 117296539 270681607 723687519 826211649 217172861 668947640 357936870 161741782 804047048 355683888 903188626 292206539 409725049 620840431 309589374 533928032 61653511 691149114 741860559 260657447 728765052 903189032 469762475 501349613 982713190 477520524 605456965 731585235 700299229 350043401 711770329 433296186 184963450 865775109 21421737 696480979 743410537 787166897 137832701 595306380 314330452 430135813 40903209 313127848 848413300 624783811 400376969 819282086 908288646 375736691 638239610 47445591 214973650 947123042 975701612 499465160 454986021 724703148 817811409 117570141 971229395 735179567 422565405 123578551 758624701 382983316 820294873 870967233 897885510 962967884 73283978 272347056 816215395 381183118 500478153 385139971 81075586 651329629 946764072 12627320 790763432 582492796 715427409 550940451 17474393 37785472 723583465 57203027 320030880 301587904 155253411 34837413 613971225 370734683 377965370 684877567 529024732 197233210 711688563 812965515 976641431 202069262 139823890 583924928 962142065 1738831 827537137 619432025 462339107 25156155 514284002 492026711 684392427 759759069 769453006 298716684 802944655 549232388 584748701 291061768 900533855 433044297 811853119 410129193 315548463 782878986 414282417 540455570 348455263 697279348 188293364 582403507 153560276 946483827 127221779 725741884 941283838 505320896 98137889 514151466 968049872 523701213 355002677 143315651 714480077 524377873 288323700 91492240 903109366 903859306 13191945 852374123 464146140 229317318 537566242 467551595 919927191 503021505 989158654 939148789 874262465 667486914 478991326 412280759 326400389 810700796 825752332 349693861 10834828 500029289 454302680 1645816 275004432 14062532 857256865 519496250 276789711 307078552 129632962 53516850 726344462 739468856 706667436 807550201 843643546 416251576 938162128 595328231 549305038 624876281 944347302 847795107 556142213 415317668 824817330 517429526 753189925 878563883 314893436 91907192 19146906 468104644 272897947 191967557 998224481 229716080 962253731 542751806 823262322 994314487 100526907 343423090 523880791 930144488 143039755 69978677 649145883 34502046 745913031 649732641 683223894 517296951 22347303 145273372 420352551 95873436 786284527 852061268 339343668 998374783 668114662 530690618 179263915 240349012 142243557 177869196 339534912 258560609 634897342 430632271 165367348 511271848 255372891 133199564 471795278 442668797 765046689 430013084 622816219 116418553 559713668 88189335 291022255 421394168 83551743 732189669 778610987 648349736 277986323 890175980 22772020 690794103 331066056 537715048 496542523 745044635 770670135 27818065 294712370 980985876 147833459 41342956 624697753 964150318 795413155 562175941 297396855 727411447 692619246 229119665 783915610 319866441 974177931 560641995 208308824 902160577 929281198 327788918 341031950 680387785 947337118 310806114 592805542 902211987 488603811 163662979 826609611 981931026 992367120 622892050 871796915 264456204 334130241 659224727 251967774 626324744 235653269 745234905 90970193 213771092 399050359 839092977 703936538 831407373 769875033 389455162 332679634 867704076 599385272 618805078 323926356 305112062 358030099 310233655 4775944 993102163 80228086 70748683 263819228 212202561 286962933 439799120 557675588 764329675 320552356 899851212 53810498 96576184 536837292 655381899 791456346 532357273 315748277 144284126 99999645 952805572 464542064 446092900 267777180 949457498 737008793 264593411 574789499 604253766 828819696 696061412 527665627 513368119 400317506 969138301 94655981 432041892 995368288 365797514 318248296 138642636 920946978 304476687 941528201 176799674 610986350 92793174 780050711 981193534 813916716 102156792 771337055 292531696 1989200 738587087 620198199 11930417 344460499 547311613 709339391 476351524 557965239 818603504 899907741 578787009 659199751 627354205 889718399 702435514 937885141 692597824 642895514 897130645 510223161 564820444 301677934 60361364 272266585 237773249 404160256 325783498 973227102 357182911 882927073 961517330 421691257 625978867 243763234 641372681 809329126 38401986 566116966 549104150 869953511 26820313 797610192 676481902 696977858 499727402 136547857 723010567 111530705 822829298 437077599 227035807 354473065 991872441 242182773 949483969 195120365 318191431 841248925 225262779 91055814 738133936 690207650 888175785 319621994 759500117 994691551 418417511 298488400 996600787 23837228 219490974 643328508 39900445 807473908 550847168 334605560 486404707 80327460 191089159 569355991 841826083 704051507 982833007 257767726 124516896 150866972 854626753 872934055 814751337 164527720 815206544 771730920 884026960 503911207 960816946 298812578 455795825 638107882 394694600 275618964 176012978 305359061 443494971 74158716 331780412 949243785 841201977 854504743 571964297 967733816 156492090 294626403 826078543 39455126 730183042 793749519 661742998 515551460 61240599 66687754 747600808 193862373 421217225 847960131 822756381 905296619 302616880 838125989 727596493 821363142 755337647 136572720 32201948 986955997 326993769 124955108 772086714 525997326 57206611 995802316 444717594 788219852 950326820 510406651 351754744 642636301 406933850 427883398 792870551 591042892 917984832 844076183 870438277 53756562 92643047 186541652 482560916 989381998 965690660 583147249 97132002 52843765 887657369 83620517 11744980 649973956 516580526 489095861 662967573 735199234 222541202 251178602 345320088 27348064 149926720 137650713 156864924 319831312 497853817 641482776 205075876 258393045 34122176 127574476 678724733 413236721 586413161 331394207 385134392 592227123 397094285 784691459 615640887 952803058 589281801 192857459 79784728 81134349 668712582 677880687 9133514 122749673 75380345 404724355 664984965 686471284 17120530 180989249 518115519 208058151 992993881 655945792 167470910 412602620 779412499 215039786 863225105 764550015 529854673 329468835 375238538 112050360 959940841 892192862 28722759 92352576 43438460 128782359 715236392 715083831 13489012 226314894 123535455 812324927 101048961 808588177 745892186 807995019 962727963 487543790 182433757 416431309 685050497 382937218 937531364 682062663 60279226 855334190 196477890 933296572 5625499 54091743 232473352 868178557 240621496 269723522 706356626 187053918 341643893 609718037 202117764 532198592 480011255 750924954 858241356 537309830 660194350 197456922 518566046 355240225 5917397 914568358 455498614 780181124 746901098 621954908 883452440 725880113 388549430 130789983 759152913 764180269 873312330 111329235 165555762 191524099 180057214 188284654 285483418 822318287 189625712 434814700 544303278 973577003 202921101 263996428 411071768 542300735 803296257 310765722 922344912 656365239 149210565 804727784 490878479 692113612 837934745 348274513 124673112 94024506 608531206 622323509 665965435 915564106 546283102 930121729 917621129 113147082 590915001 535800101 721766625 769627919 732510963 577681435 144943908 588446708 806542263 131086183 655005250 657565156 138516598 483007378 673538925 175774671 457013609 207078961 672023073 127764517 453516684 240128218 300518693 273369062 167598508 382278709 119964545 362339228 10786135 901857509 14355341 424606288 309947878 336077473 132244963 510978207 949211512 515001123 992355943 987433889 471226870 356021547 615201607 235458046 35186704 737497988 282746870 905588964 658692673 381587971 998155312 284939533 849324484 320362623 70019836 577963442 840255911 138704861 501198244 331185564 33956277 500632834 241085117 908254232 113226120 479889894 896182049 954001407 378196355 267709570 110482676 552347820 939099082 209687511 769168552 5848326 33389905 75962094 747698668 549244029 460313806 419013596 46809278 969844740 462227904 728876731 396061795 137835294 719438197 707504301 578008162 783239885 15095286 180579032 905973144 506042017 189051680 744380790 859582746 198655408 749873040 551866554 673367888 327959961 338154930 852788715 212248295 116201856 86612661 942312531 37877198 53666068 186882446 356447296 831277639 978079118 514050562 827684880 879509971 615419050 192746903 849909540 728249409 70071214 789637789 908313321 320120992 279566955 714539308 963449805 953674834 281586227 935643684 619764812 366126585 691737317 370000433 215921128 968947329 114424810 291901629 814734380 286917150 338503982 902163716 66556842 733023564 997509672 702697225 842574591 364820945 746015448 151895694 681618374 61094329 386222785 22164519 118392753 21600342 189900274 496349741 367732077 10448198 881326597 867722173 159516597 178844013 616523026 413236672 62525518 889950199 128764613 60212202 865284353 708380505 974147401 233803697 812430494 656489039 231510610 604958035 725035522 46097117 664355876 888493784 500144913 113707852 483314309 82670870 326218160 773187894 456537021 678938273 43307221 402224759 13569447 109138136 686046071 437934127 749097121 449988326 617674652 199670730 709948047 29447356 894875469 528720385 797367267 490137102 799057819 245042636 922786446 79312737 420003234 650581874 585767187 563813626 86388098 608174974 345867638 495932394 795165032 227475399 808779335 5348618 434710148 665278051 227772314 434016763 701885458 330678458 24795662 780311584 251087443 934998650 723646410 803652529 211909520 341473428 868619132 898386595 127076128 853793353 83290459 8272308 213168729 795998743 941703714 346820974 220446109 717022412 552583195 248927010 908128089 124674689 783196179 794821609 931056892 930295181 940567134 155336095 888097285 326449044 33507293 850193904 458742002 85798022 231777527 135414604 67705423 260144022 481798807 299354603 493107116 154515520 450088758 279067339 78288040 683528006 380599248 941182135 833441760 227198905 332992238 791858495 214591490 628115432 645394332 352444859 80732350 446580339 772182643 648854601 814953937 670233915 545688717 594173141 63521784 578399344 672406675 967555594 735201796 523681156 726543283 535365734 95301571 931606068 516890275 519077158 678578447 945664386 523459744 753420116 152435404 748357311 400288882 614051521 781085156 261727866 288575849 328475393 156427849 51680661 602343510 18631286 172023797 783659054 170047645 952687947 374572523 598979765 273743646 450725487 222783283 79629022 391307087 567074457 971812320 154314404 76832799 124719945 410641936 917077836 276251920 191850950 633217249 967213154 545464616 155484198 591080830 174125243 853697524 848704060 588861978 486481779 124838540 779734186 398397681 471078126 374864012 635925464 362960194 888591831 613983004 509640438 844388952 58823716 544976874 789104892 457996936 84236304 395605548 317456300 906305064 435156770 384538529 2558607 545411743 493963043 131490190 302230001 893323088 428912424 708481472 100961773 654447798 22727311 121565587 826259297 44442439 847264249 540675292 731549944 698398338 233475159 674324747 829662243 355454456 337455574 908140040 229086231 545091638 565689594 714184010 682160854 38265819 490808196 374965458 280895529 115265154 486657406 757978149 747219614 92243932 846652480 28410703 298552464 187411611 30286182 431065064 964295964 662349683 785746387 549556751 687583534 93612077 850463409 888445800 351621236 588410512 83181175 68935717 11261031 974663023 726155232 931433977 883588420 630154147 375801587 70733093 274762521 380110097 270435321 344061290 128069810 236999072 325301383 474128157 554195113 347913287 624873082 30645262 356288604 266418171 236365558 366251169 50915065 393517758 240046953 917122745 409026152 250862241 56863362 159834818 296085609 370098350 503761731 427420857 765441398 561594887 917478383 973274903 707645917 360391878 448165135 923835363 146485929 139953436 232945272 715192746 444554423 903898683 703508042 94406791 397790115 143149401 251495401 560284434 369727702 899386041 789038333 345764727 993928834 573138088 769706107 154831459 114739872 71622263 68440994 245570056 124075502 251084672 94288117 38051112 12163829 166304807 101814080 878980617 515058439 687973587 877978265 274409848 85140280 318907126 124044632 395942351 500473706 152749071 997199655 815679975 500854089 215774877 954134508 331619366 182457152 213148458 772944096 197647744 647377805 793569608 181593983 6354536 21813034 458556053 829419145 984811994 360529634 909496236 53719310 874909792 658800199 309488446 632479587 73562889 922909359 764563708 678252067 765263463 238246456 278900383 666748208 851976601 464889552 876304104 645549241 368470344 771581220 995200163 775813683 127883424 599370156 854404515 983897431 409142361 636851114 659800513 668712234 734741423 592586788 446951900 535262459 491404650 950266092 596431076 210471771 786338008 352010136 657616075 573842216 543952591 971480204 61932935 180237959 106012332 141637100 280966685 389487075 534941016 255417005 835056020 366396145 949038657 628410754 840905733 177225643 286589529 468121070 538383237 332931927 819248930 593072955 5264181 970910595 171701667 911533940 921042501 992255231 524760937 647977081 214159585 916145899 611823496 331775202 615013703 953503659 343180192 105019676 890749624 502667753 399897307 869932632 319968385 947594138 864145120 309455754 337742063 662714106 754548971 906798711 458594912 125432720 949668023 558304933 125474871 405531431 130639245 649394274 207556571 254464721 434368312 280976845 864044481 340770283 207836947 797989310 378777697 84006683 805629687 40127203 116743486 164421962 309915212 801573545 580399074 169651888 866418432 904730696 55950050 10117065 549111949 627058116 559351510 754677846 113624301 897987301 113499488 668373607 555027878 18167351 980157483 362736461 755445963 229941781 817151463 676382375 821193708 758885789 789830995 687704918 397506858 915891643 92647466 920828042 606220335 990609436 213840959 725426356 61437731 17133116 867133534 228425874 575419327 381752919 8112997 872685608 295364162 18642040 868365616 231535557 371979376 513160044 182866355 229835511 702623386 118959569 507924950 593316767 572058775 700185347 13405853 10513630 951534785 944754216 944705537 547699749 848890625 548867383 33908242 822958628 229446597 409328611 884626915 444334553 353156866 740858031 271639691 116581257 643538232 795150816 951810604 711708606 86526061 985140872 598400242 312503373 204650286 529281410 388832273 799941458 630211475 518498410 730242750 70686772 904772151 973486250 584412480 113644189 626743108 915904628 724797920 180815232 39078759 898512831 657362927 402610717 687108822 258052424 101438152 967617780 488003663 366235037 114908367 980817621 415269912 793231880 509277803 17133008 474228993 883539880 479450896 171859012 847054174 336588377 161819192 542206935 953283598 703178691 8576102 343493233 111148921 984168022 201402917 289776971 15824522 736203342 662339333 286153692 313610682 948838569 736465568 821966573 612161542 635236908 481258906 637638022 258681845 387716207 54300829 845472254 297674387 391993539 345822043 586408691 545163899 866392906 527619468 77479493 220191428 589544431 891953142 582832674 604710429 335619934 11601762 850146303 889198509 840764434 735595426 692708248 568090159 496289101 803871888 880751601 737064156 874567186 959136015 867151959 157894273 766316087 371140614 734021466 583658087 764675408 611261292 810508252 848689510 577113025 597920569 177784833 990799069 134323118 736681071 568486449 126089648 609144329 50084888 301909024 940258129 138035084 586654280 28906960 873626290 561347509 676585240 471237251 893168468 306939340 557231531 752497089 75968063 633997285 752749352 805621858 84909307 946755028 955913159 318318469 493104292 677407803 812411836 990189958 587181780 516223362 316058190 754909466 987924150 102936281 556604103 591653936 576842230 235819833 479896438 424606470 589597641 206720611 412330681 763905823 546830319 500709340 108339695 354243145 354241452 871297527 400082052 651613593 575170256 552288972 306987240 408043110 278232753 151815994 162593178 626342746 216901934 658156523 221990424 695694689 342491564 956013646 371531758 595167915 195708954 621149594 387138479 258597303 926257134 827239893 349211634 797171785 799101223 920983742 110883932 674652783 924750667 972528878 677923990 112662905 342826085 938233017 399008596 998505222 313056784 303646526 561679185 246819322 895801449 492415337 661597258 316626306 448976147 738556134 484880910 751800850 781875264 237131058 681057134 291085925 326962597 65159818 917311812 232735872 455870337 534067447 875604339 82871470 125873561 14549832 136972770 259308678 895417402 590878232 873675657 176213474 513044286 503964359 765273950 503435240 736908544 997781627 762411876 760591874 239334251 433346853 930000807 826598118 594785510 310193276 505913655 49586576 171869036 668216581 463234863 120864323 213723514 987670275 167014320 542172557 124745495 756317577 71277286 286381377 534610641 905514862 588826117 843082621 404763838 969815123 542092356 822775712 543617916 771103648 279496167 639547231 736191280 857405318 814077751 178014630 777926796 595550205 543280518 244939191 960089029 416976834 72869424 394533395 239566740 48423266 139205526 104787846 932973126 715226668 59726373 720733224 302069929 96525624 960541515 873635408 809107724 927176293 324387458 77464999 948854359 356977498 41346131 107499543 537366760 461434508 352535873 287725780 370359219 945012273 969687777 831488859 352035114 943732551 683364557 646759022 410712145 990305945 547038119 897793311 269241767 108767668 483436570 525652410 381470782 505494006 781594584 179700963 160525999 317766523 869190298 69766779 157996051 480674346 506376485 226064044 134355217 294074038 487347266 237449453 582819034 283088793 523961283 66377979 363630628 786379278 457552769 373456854 420283948 610934050 43809374 979803345 314706872 70683811 97366856 329681531 586104854 61180969 191765039 792301488 708768799 820404244 188022538 974782616 486940463 325369487 69008097 914817437 777677866 78857863 342661309 951321203 524825731 605065911 486844589 881262358 787704108 979240091 436771020 439235277 647290280 862233473 39618110 785123616 306241273 640831348 5973551 440653543 961851054 248983120 98271949 162572092 756780000 911530163 178010194 420899461 585621035 775345414 355830279 516924779 304844980 378537595 522540334 890862055 501873451 960908806 975520799 818973745 198055111 708041581 424765233 664930767 905303365 75835955 421149129 591468173 160159211 353125035 647903052 634318720 432673927 269297901 775188019 273773571 293593200 763936214 383777525 935113404 767852423 544365076 542851347 420767893 804750125 625613074 477985305 277152708 362598741 966184460 473117851 503764676 151815536 958864642 458516782 598025052 881377665 642842042 549855609 933098901 477654285 604450501 409783076 669711556 673842208 497500284 184455907 475794567 912538197 516396030 454716783 44565441 863058373 817777204 59601033 134166428 866861081 291793616 422957565 908430993 245201276 603969352 684813468 922646358 761474474 534984156 343571781 232735222 291782879 250379926 970580434 621087931 687930079 453492292 110471733 405615415 589608442 852303233 24531802 473647430 703571974 14500267 790277697 788142609 114963298 271548395 97413350 217542912 875599858 861289011 262100313 378366152 798082087 955692599 387027626 3200102 278953463 813386363 257422322 552359967 554130908 641821511 200630613 612949628 501980130 779650984 386777852 346055508 463938197 216570491 321649179 302675652 441732618 810039644 925821931 991857711 736846561 275064245 325579437 97821504 358062398 211153337 887586991 565818604 301065682 345944411 123859262 292930161 106935504 183724382 889833400 554881107 683673850 851215946 508926592 54878555 597451414 9568625 535323133 8935327 999772782 895167977 28345764 287810940 748830428 351069584 497599724 468026520 336903871 18615317 406542941 809673437 169944698 930489314 545259643 914604412 709181693 198961459 465106141 10405368 924673213 954578692 329760025 678705427 961531067 325369378 164231123 402665941 633120122 99189276 310453174 561020566 729193483 24613451 516198516 568664051 882999554 362119883 530075592 81539534 495477118 795764105 492132469 701849173 403958310 45467440 812677440 869915387 154713641 255737918 372201985 293458300 47005755 20483568 595538576 507691742 364569499 828666192 722892751 409710700 151013646 198794286 215328937 414646459 671857639 452156449 222552335 517936293 829861111 81573768 868209917 399155792 809589151 194095761 511573364 977466411 392874690 926339620 464811390 820320741 397146068 982168833 348669743 409107837 409461702 830565027 399174305 835029047 262869530 563023443 390666482 472994208 92217300 595011621 937974099 232715915 656559234 825740781 412615155 927860245 291257661 516235340 518124298 185153696 499412382 94049196 315781596 909823709 270252752 732285756 421966773 383556794 439692417 183288821 504447206 483239035 630802404 674740631 909741512 712051613 837554874 83875243 957631425 377957360 590542409 165855871 114809398 888157831 769669726 751482412 538750877 107149503 37625936 556078995 487323246 551955772 704975359 571344732 624950830 523393770 773413071 709179128 695930980 788720126 95846572 491868574 67316644 690324725 515756818 752660816 906648202 47824783 141896701 500580308 530912948 743891421 467244783 73227708 36947408 928079665 775227388 655561056 621747856 928508711 226343608 79073759 454084524 734177445 611150656 95885347 913411303 949455063 542955836 262644187 617181196 22239279 387764955 724105854 744591341 782147946 917494737 258063951 831359332 569356431 856019037 82644309 328895058 412089318 543212103 517790816 742451876 810736390 174400986 561758728 557659468 885532106 654685934 105096622 712234818 19331418 183665634 953590909 327978121 617453853 666300060 318199391 331802925 658409931 243598217 617731856 467754045 648425052 21328545 639637265 182020823 644466457 258511966 429114025 135544603 828859018 324714701 950877929 821161266 21995144 595453049 900011686 662104144 709059885 946505076 373199748 685659057 493524954 306140772 764986602 771992980 460005440 647589227 365076233 168515652 418444627 491833142 706221528 143120662 115775562 315640319 656133145 535944032 787631025 823243395 43786321 142825352 642782799 687381764 329811412 819372022 702168630 592881238 456905657 777035806 565669323 296592589 543725532 885126521 181272232 965329734 978452460 93919879 664064705 492076075 352069719 65063382 938630471 272963174 78875477 795380983 537584054 877708911 965067749 453711237 673884372 518809925 477138127 596054560 320939436 899714924 879692709 936208245 450943123 459497463 136026047 702339379 352569378 696522612 584541499 74224918 9337410 385145098 967583236 620616162 146174751 162296155 324304587 775572065 479121961 633153429 454213125 680126048 922582302 153604721 807823092 410394560 315938052 215203625 330914464 607078240 633458983 927125125 79362779 502732843 326000667 801398229 53058360 954026001 558329019 450056175 256691230 532585231 240007978 847022126 304517553 836446759 724866009 407268220 330248930 737131619 394737783 122692932 99722859 534955475 545799427 222928513 900844489 140740245 937377474 935061164 148773959 556493768 289945918 356917454 43252211 963627673 488278862 453710453 281075369 617944374 144693773 618904758 267420420 686108129 663008732 281324338 239011697 698409426 994807150 446738700 835196702 367531613 449638577 324269558 796801283 994503630 636952549 530504483 278636256 310065281 400178316 938868816 801703488 490734553 855187570 630025416 145478000 873936703 488028846 703623254 223148173 815402278 718850716 286850129 76402289 836606472 597621468 306740375 848251846 902170985 187667553 207434895 630406655 440437456 392677720 267653159 646911569 299814097 841653827 550021332 104506046 880529926 187244258 777028758 698350864 871980563 305124164 259456754 302277589 970237086 411406013 926848502 927367012 826238046 246538982 76035898 719151328 103568394 77686443 833739997 228492078 618421095 689542446 162190467 567159298 924858938 900290285 689497688 860553428 434967901 538012317 706757655 226124768 271665572 969741381 814368253 431649077 115948276 322496560 119267277 419249050 239684919 518466551 122189272 52399536 137464159 581927793 971783159 805168341 704570469 570186179 432695938 435758637 789921868 539951706 214260069 804545964 468780321 688438764 408860427 712277259 704790512 499685746 789938538 503902920 793811930 840920370 782649602 736977196 960974590 703073211 572628440 509866310 98752902 516287708 503698554 597714931 384344231 191890101 988625153 457958605 424597911 872811176 737269768 655512382 556325019 988428899 514469304 392895355 258829821 900831449 334832316 27155318 182129423 762365767 375017293 747377139 392554280 162736175 915214888 99620728 907278001 920658016 303421332 214134614 183878161 779986414 69624414 274069672 377948343 416520503 444352220 914274634 249283618 442679258 423556593 892955878 271936210 184552391 528411132 843024364 175184721 398612016 564546543 430144151 675425587 966255253 359548993 893843427 341595665 17815990 188846575 85608600 275393164 632733346 192132480 767362636 398532433 443845039 82751489 820653650 929625617 2376565 628171784 136296652 923719301 701841368 2448055 504559523 970583408 926454022 192245937 670500741 551824798 818078327 138637090 308011242 385986273 32408545 860927687 683534102 183013649 399866956 128799958 64890639 614418704 598293762 57956893 668561061 946116554 122773658 718911972 165580657 815294770 613393902 90703622 107489234 412737857 557033251 630071007 337597938 463834361 766940836 769902677 652469951 807780197 840171049 220587734 582354676 587233430 814970795 884814682 389909007 446358697 303780461 250733918 724169048 551343804 590541822 555782120 559723746 6129148 544281394 158349960 746047108 561640093 584047909 425731667 687028445 983381718 145372731 907950310 162260055 364786154 774054174 99257195 882286622 459556644 679346119 112512907 600114481 39729877 329176175 823086208 994388813 594936153 144110747 76625926 180827640 929935889 925744663 435923302 283203460 45459049 719167990 683461743 34586125 840668368 39517081 170334832 876419693 653134787 854555038 524741457 228163406 696651459 128597237 418319985 969101861 984704858 783329747 652652481 364859426 410105373 801602225 659743927 426127694 5226914 677360469 84409680 464749930 339492751 106569674 453157653 71642381 976034701 83863912 910865427 32182920 723209803 850689481 994578911 20725505 883413640 38424014 598126233 920635229 697515013 811504296 743969254 858398541 190971531 909800136 902427638 771086410 288067820 619770095 872902780 236302996 883930629 901052698 35426747 551795250 2445749 440432029 426389365 885520375 727326185 920631814 928305145 313048185 966795662 733237813 801717534 207738137 347486630 665378635 733523266 886073087 237000239 163978935 473967692 735105050 589350194 948772140 34454186 12363813 104885701 490852776 977577045 499237791 336877310 445096047 185273797 447601871 835806979 551162890 997053699 793230535 281364988 710789201 537883807 179083358 878407452 641930076 999224492 19090741 322353565 585602197 377146828 975661749 642113984 254288802 630128164 602771212 577337810 37555583 828566115 136205364 189563173 572382560 297775291 236293357 168578832 739329487 128886254 378956735 216142842 659594133 898777154 706642426 896670793 833307847 390841989 333752504 710808433 831428034 388999436 908341719 450639596 140304939 965095608 493363455 425449788 346638317 107504620 635024035 458272492 362938939 289581465 814077176 247131023 781589650 741607986 295016193 685680317 527517115 921007291 857397637 62109465 806903482 405132211 894619667 764219214 219647979 353420333 536103943 665998094 238547428 417311932 232258429 428061202 586846861 536733826 409882207 868785952 539098129 288459301 328727900 535099134 928459748 985432272 953511153 435910017 522956738 109977404 536809048 771896960 673029299 335236772 454492318 260776161 620579839 430591442 755972496 108738956 622091323 850746388 406309577 193014901 683761731 745319999 49242790 778257811 979115068 272757167 998743890 600658412 13444754 851662158 291381181 312588936 703388923 412758664 489200287 815675771 201878384 514959445 3513716 959938268 564383544 220721713 59485580 397334993 89426398 17446181 662587634 146291075 7365686 511094973 377047424 628639778 85643612 408635919 932469204 458917357 902408630 548765371 550704218 713541152 429956081 836274663 926084160 246429707 292359676 844520256 697751166 173637628 318866456 437209086 614563543 513357392 389117896 551209951 828422350 543287915 151782106 457848870 265963193 907168177 367598174 2068133 321297069 617828506 958842293 100409008 724008329 675771804 324577150 854154792 911300088 928341054 420384938 291281008 778744169 238906375 404039021 288537465 484085012 723888008 354998335 12674745 524598525 492450143 320298726 495192107 52817638 357057834 338857331 819895640 866121059 140134040 350161204 532375631 414231244 33700440 520958409 277551778 511883841 131996966 669555731 994546804 883720873 160807619 312366913 728649067 424000950 657351419 619285446 142295987 758567649 373572765 56267361 553408771 71902310 925595269 621688083 940410777 755066451 119209620 531661350 638515003 800369522 967504056 121965367 111018041 698633825 965929953 160395288 454985830 852388477 489382152 799283701 502086178 197513455 730329649 309969972 684057942 90829736 159437670 411478414 413585004 614956638 581121464 906840318 200932700 184219029 743486019 491350729 258491046 928902547 534812968 306977144 913993294 541968231 699006608 697693925 97268963 377057771 883869104 950286629 282629240 646837438 297155522 357487009 466967986 120561481 522304777 170787844 258662578 689171902 221110219 644428613 823643687 414957586 412422492 74757786 89434697 956288776 39961369 938750604 895727060 95644455 200704354 263135206 970682128 777354174 946017955 73455806 659928269 329928680 843084874 810836334 638685020 145738626 46100951 910377883 396077985 117141049 978790343 434691377 761161724 695860345 262603433 931357541 227869539 516941947 121542667 667045810 808102468 878807871 728726920 589193949 508614053 924593551 893230534 183993843 187051015 268585211 847614315 497780551 237813369 285073115 978094124 721634677 377016209 353990477 675267522 352814689 278615665 582529596 479018735 2393146 178147259 519900246 37442172 43316850 160043678 920311831 783899200 123758279 303998417 933596347 542976529 798034488 327451284 17350989 609494739 888370201 113829803 637105052 891345773 363024633 516644450 416275264 840568278 530284982 870550935 754879643 355838982 866119796 851787422 667993044 512930047 853830047 237400679 100958683 335455690 210928365 43043930 766146921 846853247 710197335 646004079 32553469 841856305 47176483 707964709 829827295 193750278 501587164 653290622 145733667 912992041 565857370 414080272 414276508 571493833 720628405 598989291 565535726 789622563 465832020 345855153 336856449 630533750 735181793 447976069 842604418 323577106 358959442 711981847 389509356 536585541 656658659 814990748 414436736 649250155 910424088 386456020 906675911 196652258 445609661 779375364 65454349 954725658 779493862 863796477 533674092 278540930 819105008 841951504 662773700 330681239 39977599 121618209 901168065 193325528 608780673 363566738 550334927 860767440 609020453 364593491 508554023 36013845 56817388 589506266 22327243 992938811 727495066 352887076 892793729 366083817 800969787 414478778 975923419 595367367 705727009 918900395 883841072 887649415 29536489 965073287 295928480 106078692 995351416 845728371 554112790 376988579 479948026 250799376 726679872 65111432 936255972 207006096 491966614 419225709 628421362 657407401 159843672 102166308 549169192 33726359 96479632 33077655 925114323 291168547 111169038 700095402 694848389 340189847 597567336 242886739 984162588 414765519 452888832 726208139 607324604 6429476 278465024 459405397 627870931 614697598 718336085 180399544 788646672 632199758 913837496 174071244 221812597 18291335 871620266 342758822 233417797 356065704 273751413 292880237 347024904 830206393 791768359 558781254 309216920 576938309 580246678 276833895 188278797 606294628 815178599 485103112 414841294 399521718 620361471 107782254 370061190 297242463 991070095 915152867 516516904 424695309 910590736 165834676 320298228 117103606 306947138 261935426 111266922 430910426 120089005 290569963 563309403 608153089 570476195 146067739 870877142 113794357 879475256 99280197 996681787 224053709 163154512 681789153 411445292 545572521 296142480 22499443 554441622 852205615 476923247 316117635 712551343 430421836 900664093 106487463 398928880 36574327 709496479 59134580 979260191 606132910 743214778 875451538 764116040 888588920 522809603 920167337 378841024 614598370 634308814 778632043 643103780 592010885 687813180 620524432 538805590 62289020 996250937 544810204 164136834 291771247 588791921 177818141 546673697 202483339 845921885 580737311 514360553 259037319 153638975 550371776 827699424 920804515 327793437 602250978 479481685 510947233 413764809 924159343 984403673 78249683 493062873 511060823 854794314 566040335 550869936 491072665 198317517 236609969 141816693 73507377 549237196 523746721 109365528 237513007 90113023 879246922 853843282 366425506 976056925 743149225 803530147 350742948 922598445 368144438 246348627 47747162 422737661 727246330 848583792 292214508 666178460 671873923 984685784 441075599 501127980 790778854 834702118 100470905 466230288 883346117 639466437 531029743 352164082 648955201 433777637 545584184 150726089 630039306 819761786 857703597 871999183 580267354 106806604 597422754 34367367 698426859 233444317 772802939 310702017 375346180 579289217 422307492 41050254 206377333 437002573 791507085 510685004 922456464 261208867 953372592 773066912 757603896 378473130 188068755 308280181 985368275 248548692 836462525 893537279 844771660 478282840 987415745 872443066 254050589 356171192 545246006 250406252 314391616 628268861 686311109 43960865 824134207 446343027 623146770 215179818 211860773 616560820 432795860 926911784 877953162 222207522 510485187 908756477 66625166 743319202 961856161 192342996 677035221 325007848 322019896 438952226 207847311 484827500 870195803 135568037 368252526 383532907 995357668 832000606 671885749 628382192 959911095 848522399 784031016 442047433 164257466 694373108 830151959 285010833 793943268 376859456 746980182 639885991 682878508 714104485 247087173 702905904 671924374 418157711 149369289 399193122 133910061 951489970 328865361 336269875 282883583 662005005 451955152 920634594 553031467 356527326 665792714 590426745 559753681 375645113 476347205 955589636 976250907 408042346 482279368 243879010 582430013 386279446 329459825 615485231 589978735 784313626 821617627 311066068 35895284 715670566 46801962 183419008 192275993 60252718 417626131 616399662 311521837 608425583 22112197 742422172 906576778 338128746 861967874 347139413 863856788 623571438 72887566 566195364 169099700 788281358 851382715 767431080 972677727 220150822 989579868 910699581 981574155 760664541 753978832 637879819 296142141 170813212 967354495 216937858 392906367 696373528 731952981 462192350 427732320 721635662 86283976 947219228 4704128 196074627 411612121 656030983 261034878 777920961 973761802 584647210 872225286 352747868 196473711 617319395 799297735 84184052 831309721 45588559 736374142 253956971 805139112 120444246 785311980 531694572 753118020 197194666 533182429 630977774 94804120 290752451 916679710 835933739 14148445 563501281 355633041 895637159 183791312 515160075 78904083 181625776 736619960 481561874 893478289 804827097 260918627 188897680 153492729 318174206 744374438 919795173 986654027 166316614 619096800 241130038 154085253 139991323 640915705 381259124 469108403 578091055 71847004 217381980 606647012 944453507 624145410 827057768 423490617 870025816 649683817 194834660 655254479 988542010 376438677 485260768 888838354 177209856 352102934 770240309 185553780 687882951 549644803 392825727 144371182 496257261 49712888 81083179 206058372 704444709 804954655 367197029 883364737 688298847 297537824 669819176 763417140 675433944 990835513 468079158 418825211 486531094 146767392 771531796 504051253 609727970 665658146 870229266 821324365 739249239 741319691 563702092 903106742 35771593 862229552 492190110 234917866 497456096 985325425 847851186 634984815 175898763 919678773 63461371 129914566 562163448 964232551 817470122 38881418 546443688 512230783 949155016 65019219 372499553 538895738 609715735 655279808 389031208 568648417 368205610 851409024 443924822 64008641 52504152 114314562 235120265 521288623 775535810 516184513 905044385 525839051 978768209 479718335 687728588 897352890 302444979 774873351 156074369 227832235 625838946 530227307 308983670 590624085 72048287 856995012 948642231 585039347 86789999 422931959 889698441 408053582 412338340 475354604 753858949 877538231 940953304 512672150 939289733 870103294 457447787 220252655 175723182 598231429 419071363 872617208 41901420 104114993 789670673 917458111 553418613 635403888 666586061 784899154 472071619 465823547 435613752 369360590 465799321 57629198 353313435 996135509 719705734 985946862 330129412 174268177 357641054 853224044 336020815 581932083 257442623 436286620 313315350 653051637 103031177 52302366 293244873 182950813 781072361 639293209 876124818 973103728 781827412 961979447 979151469 249650372 589605129 507892146 642782743 904092659 509897097 860013128 88078363 25145949 37401505 140926527 709333961 425907820 376670567 754452066 821354552 564295063 842455347 892166413 554847560 915850580 745923757 657006875 714944162 616448038 860539841 87165681 688554681 126079640 22763427 699666815 73619905 559040061 550737357 370069307 37766843 939387565 136354053 95710498 800059504 541201037 56262233 429079486 7881328 760790659 290589208 968234522 472813591 379511365 117410020 105897164 533869951 754517901 577623201 806339828 429988499 328577818 184633719 867692856 601077765 409079739 680939226 371678919 291900489 428576575 768711308 491505747 883803811 687853441 406051214 157517087 733235227 835973474 484258091 419867631 572086911 44246480 925090809 411917842 661345641 545756859 392745170 440493150 218937657 973727260 520877023 794954288 742889494 942757111 256695175 411280496 35866867 656282709 411910017 743046798 328223878 38730312 150661065 270386044 520702544 583637740 69621666 245101754 286028184 199431013 684820634 201122129 995288688 244202711 16377221 126228683 818124464 940840824 473574271 425001022 647847671 951466884 717756139 244760909 175535 915803195 395777653 155798811 655474183 866477799 22786068 44270423 4287222 76933085 947795970 666079542 430771777 921959795 543612357 902453366 259027307 648658700 736269094 560450658 875736775 470991383 201093439 981911746 599290989 828873984 696383332 525088496 245471034 176762438 456459330 470037194 349988829 384866664 366425793 332368308 281008063 983168498 889689875 32288670 785851421 607858806 285010360 393351169 439779575 675850638 805656179 258854101 682368531 157124831 876313935 451955108 177355265 347119116 807967138 252574844 527573789 694666193 856036617 522530547 435046019 904004319 228547175 64582439 102780188 392178431 495072999 213663423 137796765 886796791 136866558 313546216 399992440 630042266 898363243 443171931 328514800 455372741 698471469 355443795 914600975 72853848 37825941 797699479 755310241 786751805 878757172 350565493 51238209 480389737 24328424 75802820 336836942 868414417 138114519 585626852 391490034 283640701 390198634 579123899 471953695 637364594 996901463 485416627 542730886 574371014 648737689 477887172 45797039 824803475 615926132 894787440 480343519 418220283 144483958 725469368 437486372 934330918 671570034 881296688 462330203 56338761 832827271 401179369 339376161 573722525 877683989 502850178 32686814 852233570 29486794 900880932 424252356 105681639 567714715 769918588 673139914 199354234 495541954 741004224 82929331 342307963 588891336 317042350 157987843 707023941 827651188 538945932 810377228 484903750 328982494 778913067 336452072 632323825 396868958 531714525 8118132 663845054 236794527 640931459 165659740 628152114 628839302 33139585 940152591 716430548 443026252 923704777 733025218 691599672 793110379 943766477 651444088 976538616 318106281 22855823 258433788 325624249 890728975 183536272 631061464 732080928 42707956 577875172 163570538 335997923 184435444 308989985 935966670 924012986 739244789 688376160 835159281 610022249 810874911 985026892 41690493 697700794 600130537 231867154 201355246 231470207 413260303 554880360 700830084 175546768 972596117 726155661 322040648 28553685 655131590 901110855 462462730 309595186 503573304 542600416 793817696 123807389 320974535 682147892 201812396 750092046 932648598 591864224 498822424 46443657 701125909 110417931 237948304 675197977 470553074 679135454 143553489 560865740 480997166 315300631 15825238 134526400 31504396 887930412 717937002 51179289 127279131 282755882 884368417 868357373 592855081 227370396 670284109 731106719 769815382 138942106 814007184 60219707 32590854 232008641 631001428 348312850 509615334 173357625 66304457 472548463 526213609 25022890 134261220 320808867 109868877 29288275 673447786 944291595 222328978 330229486 689547235 53658116 494315403 423954369 749637530 787889150 784054596 234183067 116038828 510806891 384816418 657083344 174926839 485727424 583084483 890893378 250390052 116512642 487235604 32305236 702973605 35120958 122011725 860545529 599203502 359791746 184098023 329592993 60723268 779454443 693254053 39070287 596288301 605387547 7564951 408492166 645616632 814215099 343715598 656055639 503657728 336175740 282700456 621558359 896234339 211362332 744000586 666622370 742885387 459162716 332594464 32155877 235783847 319822085 180518812 235025990 726788783 758937834 516052092 397095808 582112867 256010468 210821061 878741712 998260172 98834649 531590592 751074813 531174332 460646062 53773829 472125781 15573705 486800729 653455982 708810413 413185618 264738258 907223585 39386212 240358276 776175135 894096519 625220195 423572555 17960519 535007321 577245461 669269601 143361371 207147151 387341423 486208068 990418038 62900591 152464626 596331073 51104702 747337605 763741860 485552996 674910042 723024039 781846547 562320519 153374334 545750255 853147477 460355401 239065698 645431233 538182921 651735826 636313416 984729290 354643 648389141 766504319 284530432 107114211 406140488 765455954 927060380 650624494 653612141 407300387 116545319 190165813 438570248 551352911 639701097 97899772 425856368 141406784 667222900 101558803 461542584 593016939 724645037 680806092 66769602 672981065 40813999 396375562 3495221 573798492 113383531 140232755 475708036 702239022 466563604 906566705 642799845 605371476 323722792 565574782 444723032 446493540 869817707 178498585 259235494 10694916 822412518 919703941 99035232 448782300 131065073 876196816 369176543 613861281 718219301 677317012 808347454 780189193 759497321 967128559 90806893 304017881 39316968 106687362 206841879 439816153 663368726 325206913 386512053 218081247 801200816 812583071 997096329 333359041 60413626 805856283 166686616 999482980 544126337 983899325 505026742 199376562 121111960 456173520 894308985 100389535 944645084 960219180 136896835 352062496 393198704 980063025 385987385 130267196 45207490 897024450 667225422 817830907 441426820 629087568 124354619 549435760 591926199 265513168 940673404 555191989 877158296 865209281 500892254 888762604 323955896 737787174 422322415 79156544 465904109 381902481 525220104 178330597 539777102 236430102 330057545 286326032 253477442 107323478 822197273 378492425 710649977 562433909 762728619 786492439 601076447 615463456 386242546 565084042 933479863 155786640 818661303 960258754 519540867 748488068 781665656 814078238 108190476 784042814 759692174 637551624 585625196 347745425 360845837 959030259 703261694 356814033 380992469 538745690 472032355 548958171 509974414 926661055 164121226 821169430 604816042 953631401 475241127 52462707 317877857 87615663 100770612 174977378 361682098 695041127 508626424 747808744 227521384 951166326 114939134 108199304 649711376 985597833 7468955 696529491 236891652 236156235 666831722 311828955 438849380 133293947 756674897 338663489 362150934 867575258 89685625 880485673 55696847 433206324 346886491 794283715 11452421 343254363 562618031 805827783 257228020 274035236 355044474 962934126 171216044 407458424 430151946 658069636 264777206 846020672 354336244 856824916 940550001 869091946 129906450 595062452 157606520 614281716 49660809 711018503 319867956 878574816 685499077 696992301 847458968 370222904 340694906 480301460 356108122 462124559 94384292 898173497 246066940 855645821 212801674 419617428 881103813 307629218 243902901 932206767 677426883 852477104 556815866 262590742 452331219 918058451 488208758 423049696 317641617 744100169 485507982 675702188 596665960 393831760 341789676 408726686 234785671 999235637 879686534 740642664 952549095 551614794 365710745 158740540 939899206 92064747 775341221 998151643 946551089 456141430 266892666 941039754 227124723 510147417 273922605 143278360 181869225 340819460 539612441 584189916 153489199 27655155 618174433 595610546 27129134 414244774 89880176 446652163 144215832 779402666 25235967 344521403 302151975 567545744 409875463 46757201 999103575 17075442 429799244 452297154 686214003 470995571 42933983 492834966 60005897 81899195 937259276 45462237 503213427 815379327 520839798 670614824 615320529 348618871 468367102 140125850 138019082 341083750 310294738 576866263 147434960 124262424 15033700 486267406 290424475 699070303 504103538 533998581 988670634 584394768 293769474 976854731 117362438 919605012 69868124 405229394 97648513 782088020 278434072 808837857 56911792 927206593 37479953 237754437 407490550 24784722 454246248 773742818 637624442 945552398 870244750 751776668 459905068 344868862 273490486 733591522 267661765 568566581 669938012 30524587 927737539 773623242 587705411 947307890 453648496 868636387 140401785 693550400 915467487 582268326 943843536 228557732 964728293 211852363 115749478 665303987 330470945 543735047 813535649 859968266 18702334 829756702 972440873 430707409 483889323 580525533 578797300 795094710 221755681 716841363 19967808 464411631 884311841 422047899 512904080 876373051 30128689 92187223 562439600 649794271 860342432 803009073 323701428 913737640 646345357 892057245 845074938 886523377 847841488 418125844 117249061 648616338 635637271 938887705 954816030 733573622 708553168 753083956 324614177 345903883 898015027 62458107 910510754 287943749 786015811 900326149 935444842 705299877 536810179 51892725 119981700 1707180 881697096 470375284 606125894 699395439 699331113 231906361 981511499 148900734 148937860 163601144 192244085 990731005 798788421 923661178 126399731 39885711 632040985 914655620 555462710 115755360 93717114 638224873 609803264 136115757 583656616 170584964 501281873 798698029 111491754 383501371 623068534 551572266 526497618 390111728 535640324 851757941 307901752 732203420 876873943 526193372 386230716 160102967 162505745 365932486 120121350 136993733 956905507 462998548 411180039 444157005 488737211 897512502 57213300 799237858 557362651 545388578 851975379 516331681 921280709 547374166 469643366 87864233 382410500 995753179 312064835 251952676 86433903 943604795 521791039 104686408 103243550 675191436 598155513 872032335 534731898 976391792 29671133 511949175 805038638 820017165 274075672 475474701 571185453 101666829 701140132 930130531 413003442 830338219 443735872 658680018 927529797 582191779 313034359 677973182 903937967 535129659 229666710 701680275 53043716 707636801 967511480 307733438 804214948 530640652 565664955 440199100 657482033 94751611 990393926 6756625 146360215 803547125 610006734 972268103 40083721 375878501 193444489 742608108 508119300 781322818 481225332 445322399 256765521 106660749 97749340 409114111 264902132 760031179 779567825 840436663 992975432 153179144 395696679 961657211 266063334 341291229 124035969 411464452 297281202 128862055 412645063 181145365 442300122 503258188 52408490 406531703 880301522 710248123 200720800 172841724 683816790 733051243 278815981 749497472 437977705 201175449 330111894 36927974 852726873 894908938 582188396 934031380 225325497 399348750 980171784 662808833 211751781 632406141 202303946 189098148 647652227 459332786 691286747 302712833 818137725 588797845 985745960 205186592 185406472 147235475 936616046 370128151 851538466 112507044 824984362 865501438 953578510 176692549 677601189 736027382 474762073 611854202 844307439 190651437 6610645 949651159 98504673 9007824 171141022 25438830 234485786 314079005 996485149 751302622 570282755 593647191 790422267 589108303 193443276 236723140 332874794 865843052 67404142 571421115 330753002 666297965 395110826 760481426 789899198 27824913 774257159 178632110 971493237 74312861 290796244 183620219 627031581 67768032 600950317 105565542 473385239 920368945 186076397 696419055 363280645 536807274 629035457 915866770 836499669 805979896 311417365 947143134 597367994 860521413 80965412 213507940 411703601 688005447 983522544 389493697 217532413 484907902 491265343 934666385 604692781 412840943 198780575 787001219 156923410 501383336 58306925 997768007 900677707 741395778 157191364 893451417 486206648 154760153 86284688 489298233 992040074 33559570 625750403 549241586 106910260 517645855 59806224 975359640 110076019 487780787 196465530 746339591 579824969 760554251 171741131 838717466 930951938 47217138 821667279 338034626 33537845 108368050 42910753 489323246 37372347 83566372 600983072 183260826 882344891 100998566 77336823 335656647 90065054 313123356 528348821 967516542 222069021 144678648 2724014 500443092 912628785 497952300 3834825 927339237 425158687 229931579 991692843 119885516 169631091 831698725 752031459 234978235 537246211 528153981 37842123 774026975 5069798 637007193 914732930 392854901 601538695 952314196 778538098 856018364 28862863 161179033 663190987 605335045 855770610 123642578 346542467 589701531 90782445 283467064 550806109 356011482 86335235 387312520 55875294 780792616 925761281 58334217 306479194 616288747 827550972 330688392 723945449 583822233 831939920 101230685 56282470 301206950 228512673 611945317 783032449 618389149 409917914 714103044 983083941 942155008 812429619 571950636 436632331 293880935 135600420 695699797 982755762 774545003 460031091 25908598 477693033 895251370 150941740 92737820 407054006 151269588 40236709 487737682 141207034 210329497 337550966 383865008 838651984 438188466 265819016 177254995 485557157 360405477 886279172 746247904 773281443 31331062 985134944 467528072 480687559 676244157 92466521 425514753 584730192 807128339 178242286 814481030 515105093 77652182 52135795 954398944 857645689 808743158 933517177 159978335 618162048 843938659 11673561 931938516 696214718 995318807 355877563 145172130 769737308 430102036 582343819 135153582 941449542 974706789 246437115 47545188 818288697 653612827 734856201 946192063 65520305 663985234 897220856 139411767 31354871 262112555 244488022 435711959 25326622 455779024 253659128 999594539 889857788 395268980 569497591 720614218 797321011 817504594 895356346 295819987 611914536 578617773 609157098 900743146 850252303 202274762 255669889 152572480 365197533 692804098 579326900 235195658 169573717 803233451 968475919 198059014 18964734 201103145 450124887 702486653 865476137 928864997 394067109 36785207 466564844 223238224 491786067 835758737 60869673 822383593 204759302 763277156 857045129 517567788 146433195 238493208 235528570 275493802 900508276 799157407 42588727 537193457 660387038 258832488 428374206 536391325 809050545 272869241 381927641 593172301 722387189 709451603 33383191 620584878 126670847 473767428 385976784 46013556 407135339 391261478 760337956 21302870 855371039 86137557 913794302 305583894 116635973 188615350 581497868 519774851 871081298 50649339 250583239 395444584 585537541 672932182 826580844 567606950 850920799 794606602 470864904 533370395 322374572 514216153 871094123 213026739 424928898 909046291 649085992 390682720 574889406 653336461 119124390 601787165 636999811 607883687 832045833 275700713 748480573 740641862 777727553 194449106 975887775 270089176 908502793 628908265 997716903 627193431 567583198 841411401 341538971 14479933 562718988 960661520 373444355 430676880 506964899 491644271 703810230 382702817 531304566 55862933 476508110 227201605 994144555 584878779 865608629 9814616 925693734 958491172 69019664 522808135 583829658 435903259 242578903 642459064 598791041 217862898 232327751 257642982 683288215 470925059 154301923 70384783 897242212 36932528 648265077 903675382 154045503 730977124 631634708 691042031 201221945 865996176 996869916 349199308 133411124 988946352 891903794 708406637 79110107 661764679 948625729 964765237 848011163 729159132 254962300 177174807 245404332 171402754 280125539 409641607 291081235 376502871 949183415 997680513 295620242 777286518 774086018 283352721 538357183 128572947 731918369 881110207 190506734 127932886 958400550 486553764 317896769 697020033 986850173 441580894 523930528 304211666 922689612 177994647 829290941 140219286 804555279 89630326 218568973 322403485 423156859 919460534 609778387 183814594 230236310 774344084 919450132 365787110 469020079 248803288 407272101 948461049 594116182 115226319 701127704 835343845 170708332 599365452 468483797 931249577 931600146 543434419 692041981 453368902 395383734 10066919 668221828 797922504 976304397 653059671 725736226 307143998 526373135 429440246 707993430 910691782 790648066 223293256 228013930 858054529 897056374 562228304 850223981 796293527 135929917 495998879 87306040 34038330 814969713 456832582 759475562 330234792 744227959 681138151 643793004 221641507 574952445 812351913 448785265 243781106 760974838 883467575 683130731 961369705 27282080 808497608 251617313 526557922 286987645 516694814 613739797 55931073 164665435 342846587 333757596 834234220 323532364 301758894 902414029 416240474 163952303 823043088 404084359 282778370 17486887 371027325 831490674 71059433 512669087 464151386 168669696 147932564 769968460 567460759 845495912 748256412 114856877 826579370 451367853 411204504 305208963 748675475 566458261 250128427 936134106 441108693 743841454 394749949 593543432 268956544 60352852 956154816 595498922 52481323 249423526 684641845 505725603 243056624 525485451 472190743 101391134 74131837 80450485 457132080 500025232 677818360 82569884 75795032 378762935 846304028 448405630 101002855 895733910 160344872 563160424 765280829 439652217 503499745 510408231 234663364 745323762 430466450 852325200 685349872 923573475 734087189 842167882 883321279 824509036 499651014 510503480 877604141 674325752 591379086 493162255 399027268 54066496 644457179 35500674 725993500 480560190 627308193 94952215 357815756 857601588 940577374 14108432 423307127 471624627 724918298 201325441 339976517 351787657 26195557 489039683 796515947 611815128 818570577 659907570 285060129 25484288 647465852 629223164 880338603 341347761 776191250 443091084 992014418 759609564 107764925 252616863 169248873 860169409 297173685 907865072 738352714 465470945 892113845 574709517 676273241 926415112 774548486 804829505 970815740 238618700 311262327 446208424 439936938 212150792 81363292 521483809 688602074 17603555 258736533 209247315 309108240 429871559 874398087 475145903 660536022 918849767 878028833 258920815 913983422 409199808 715582424 879381905 481087074 83382296 712936877 626446815 440655717 756356602 339130915 3809254 214970735 870981819 487692875 968474882 307841589 462632182 560582840 576096083 503226735 890705553 921184396 669057215 804637153 611173814 585141354 573085686 383073364 835015133 581202306 979295090 343786652 27672253 397041805 691905140 113887891 630550365 581919427 634829826 823151384 503620363 496289518 230169070 1826072 248829527 312530012 43122640 839702663 422662177 348709348 24287241 941797210 887509132 859548387 531906751 746158232 320177157 696030272 792035043 396047690 334377535 537880422 17990957 696149891 4773172 693045073 506770716 523818843 105634863 129550714 295575036 80583156 530473652 680805612 936099804 549220987 853422495 349216562 155287700 15696160 481340937 872655714 685822147 738352158 927264851 357046557 712089298 866911930 792281902 11757957 149547507 875395129 712154252 318688332 973380888 436203249 637955243 615380646 661400587 74251579 244453133 974495828 884756557 716611192 378238 866025114 481510446 904050710 144620821 315382087 711783885 444508805 984098091 604991409 211191299 892811325 336389223 845099956 300760955 192695490 623855029 28420794 553707430 329818528 164140870 833252016 756611003 278864745 763434394 509698316 267039164 481857716 820079734 324307405 256130926 513941287 948579810 620510841 153127270 340924521 965671733 894034715 774339577 136596270 99446282 552233294 362053702 187610163 374241607 816199982 590997817 414227764 326693910 542447712 339242110 449293825 933570286 495722262 406797203 363394409 363240072 336198403 63799474 578771015 215318764 370392678 727882727 370713724 841977954 439192838 312247809 941930996 222495363 291343153 256239513 588978082 287719718 116699837 417672718 731447937 652221812 121852936 553857162 488822927 891527895 293906169 54031100 441082328 662292482 3096061 618785564 511764849 619369461 775238923 602308973 374586480 250360558 900775584 261943858 679512314 703055232 750931654 684087425 546066746 106477949 350327302 652548910 30938720 984945921 247039100 729856986 266814375 810177390 27039938 952038385 579827025 271066738 587481855 923803039 97270184 396040962 350997475 818670812 806368256 647367258 367319459 506695787 581413810 223446270 674862842 131706068 646121248 146089914 118888500 926761828 248548534 153696932 334936607 180403000 189135333 203251732 747537677 358354476 264508454 66281396 58932189 298312173 330454013 392731499 275322103 710060261 921672690 957588080 494507337 772897105 547662746 921381438 48954699 45211695 135030927 833153434 304678903 680111689 509753200 932238738 278214612 29087534 490060013 290857591 135006197 615910454 512210610 64991974 178251500 673107843 910590588 660230855 878469081 8345338 242526480 883062336 356040032 624004945 866874164 492857033 789959856 951212280 630034621 660055071 802139778 454708534 920007555 984964421 420524050 957240082 439690345 846968708 297257510 319755867 817273434 440150902 822264333 875521704 606288200 262450164 697897116 863118940 419934508 817089829 570152244 507985823 929223437 530566001 148590265 445673311 339389934 491251342 376487064 317763159 443092455 727924858 750032331 500985349 320984847 565583480 402466254 968916912 135451784 823986197 713779111 4951404 328822144 456736290 372920548 43964688 438497319 322607041 600344222 407924028 804146358 218839376 266589808 477353047 736954992 468390782 282024835 346596242 879466657 592976450 211649920 904045030 73685400 494643157 288785828 943970069 447355315 329071034 396256171 182633122 984644179 903121856 186680537 678856930 829937374 437125885 843733758 294263276 315088333 686901959 7763825 694024863 215242647 427375048 393988620 627623333 934845373 767954155 590083644 408723050 845669836 850728544 748569066 58264108 569060949 143429291 709901454 896221931 885499889 9810824 263852070 719801962 563713091 403348746 433037370 240323900 497453815 801272448 576968406 407078844 602589372 313764234 189862291 489376519 752733265 547976461 908608651 565180932 426985843 873789489 798451558 688441449 313717231 594255724 693157972 260533672 340727960 11772284 403476744 79005189 82248775 161329762 619535813 969244550 22977244 831578223 268801612 331962109 391172166 132761395 13711601 318052609 845739893 51835530 585754500 649309426 998331747 758984093 423876201 529239546 703921680 613264340 210240896 184730635 679725965 345246180 771631935 129989847 432752356 271670986 930674068 442001122 878085429 297616586 630694659 997592695 789224607 905934961 726944144 900971680 222531406 33715089 859665355 599757882 151771765 991216712 649867721 648256740 452136781 380196346 692984871 253868038 733536281 224374357 514990860 882980305 912759073 720165960 277745960 823009850 80501177 566810388 947684017 517910534 759827259 12114238 905081442 106422202 662423563 513641871 266862724 352922281 385377937 681448989 629990884 499560936 774760511 714060608 739134685 698754392 268299920 699019941 619404357 7223460 701655559 565531697 2594440 213662266 675704621 273731866 819215506 227109459 106355094 944086237 727423197 2114543 644226779 438725694 399162977 922081236 625885597 574626889 43154856 236102037 882531464 454417746 493639105 759336074 230546256 639793655 827230016 723359954 420959659 17778715 128458564 114926680 435627103 320215529 41798260 245892553 27051570 344509654 886042623 29548958 908718842 793280160 602016920 327197467 631095954 870362698 606991745 359876416 452457944 430561569 595619196 475749862 598800826 579249590 917610972 522546336 643976234 484816618 577657717 401350096 967466270 823652060 516484517 75497889 212089247 859959807 674956112 166303997 425164464 826971649 977763306 14897313 989401194 424871136 187136100 775302666 116519650 232889317 379063361 315886211 936802111 646090389 695912579 354877980 257675941 317388230 62058680 317877420 520037709 144321176 33886715 521466069 199252845 534372205 85301732 726119164 892227142 358625521 647299486 1052756 555701544 208127257 868387542 628943829 128519777 160341023 103765187 339203903 865667146 580153737 169315105 233132058 20105803 759733028 930872121 931386038 811835337 171048453 505886421 843688749 762375479 896806276 210070352 49699418 150319377 57139785 428993668 430372589 879284952 814169406 749519325 677712976 467556887 457072282 386846020 518508991 537079649 894035672 471899184 284777785 695739212 938833339 85417634 259809413 613534081 824791377 236748319 629019189 171767204 868900588 329427635 751577249 787325547 403386410 419318263 989744358 350088847 324325873 927671815 148486642 942285266 483490667 629778058 965429106 43552767 653679370 481860017 885360862 329239015 87954318 550971182 305536118 440325734 595245819 945628482 777182276 762992479 199415707 52260789 762936088 146160312 474384642 741517009 630898569 447803750 600771344 166914668 584225528 283689573 933727975 267465960 268348557 6609844 993690608 114315818 415068214 751304542 79104743 210608799 706338736 704126584 166679232 706879551 20946297 851385880 98087877 598443909 527688152 299621476 859440769 564508282 91503073 921015173 290054340 31387566 753166951 919268522 975072432 268594997 452661004 390957843 824977318 512172458 337987898 204902655 678390613 459653944 274384161 116038327 372035759 364295308 175873208 439195536 472113904 519720415 733835968 601882338 445830301 930363369 932837314 158553362 775373954 482085107 782053645 908769417 926727346 27036621 736889272 345211577 659639694 612096714 651984807 589097755 557043892 842277580 192175230 678813744 147258902 353514040 512522928 13188745 329987298 307957757 846543988 392615344 586997403 531781774 848260300 131409222 120470016 175265514 72461951 848299498 468365344 988417434 471276828 437404230 965582671 966669740 49718270 899977228 642590761 535758261 117008709 2323704 485087375 688983248 655666900 550336461 633491634 546960809 978320739 157166930 576805381 523807596 313846628 915285339 781048387 846681807 844165148 945299906 13715568 900197135 169546896 47017835 305855453 747201268 483148435 800527164 149940502 124885453 545869753 367975723 134008063 31148652 819473510 352852784 741488567 161693749 193460929 232145489 842624941 276549643 15982010 668456340 862632594 942446941 643298827 33539340 313391208 653191966 989602609 403015383 141052015 608210130 461912182 484978194 746008627 775285628 218044396 795848170 616205962 926365868 377103209 973293715 171482768 560970614 248562060 771000386 948407978 862354297 730646209 700545599 560338307 134465501 708617783 430713295 401799436 797743181 736407267 223022921 189349257 329069568 12895371 586098435 767996536 472865975 597552817 119601251 226308006 68171190 229966763 506789585 406223403 703728844 89947532 979995840 409427808 452722510 59581752 165971627 271119849 683839263 992009047 444833298 991785141 91768221 179374423 185419906 452074996 134902972 40422512 998450827 433632294 902503411 724474023 724698312 623719695 339087676 954663361 927545564 37087416 442767392 928080972 478211185 87197305 296599215 316761252 482571320 713458669 65176699 455948777 517437677 740706294 22305698 425549055 520325201 178363843 167573969 951576474 601548846 23459784 916631342 110125365 178890071 415976129 555735924 659802632 760013479 109528753 179266275 366589988 340068862 317692900 321671995 981779541 749304649 994686450 752221391 973261617 805278072 790038197 981084021 236772893 925752711 945527631 647884168 728867389 247322487 7436079 294406898 261018501 800482643 59421448 902107169 629118378 28288042 393690071 198326025 431855921 775954205 499551201 765387817 814531164 585885769 282840494 698557830 711569983 350780376 412333337 826001840 260234163 571874560 751618617 756674240 678398037 209928952 144808564 784477519 373780369 916451332 69289335 854825862 755645330 234646126 740760116 562109971 203933782 499667336 678515691 557693226 932966042 584448171 49802011 693098895 769888489 525431355 668894356 739570563 967468686 186244259 144470635 388660693 148497576 167341392 955394299 983580378 13140754 214276036 611533287 292875639 93543798 424362620 98008858 688368651 187783237 832486404 440547789 808252295 682685878 234948589 559113592 526084190 187743434 517192147 59936482 604604309 217466954 783723607 947286809 701401006 166175684 168408098 518994026 49403830 853943443 496076522 718186873 735840329 170125525 412401256 725830692 540558972 414379122 120664924 765175452 648379646 705880092 777689232 877363282 108176633 508987466 692540891 807459589 118562085 534722623 488187667 992593337 22587581 549483774 596677403 764771255 340763275 591584348 702451420 34396567 541986267 121543664 372201548 646603826 633946501 343514139 673003365 743885230 641165541 417195779 403573028 253292153 366707427 742556056 283257495 459208773 834848492 992400533 682872273 482952463 670230009 619101046 420616427 823470617 173319044 446288777 299805446 352661747 92789400 453044443 671601489 785644654 976982718 167695173 801414134 399238056 152029458 985512804 976577337 326726407 618642732 87122855 717471317 950065970 984376376 999945017 220984471 458720291 1813984 590937362 987385936 675918866 704729439 706052341 963813339 301374087 440637038 322918504 818693788 550107979 330764373 371766204 429976570 173589875 230863588 548136717 77833322 29764188 840688495 781654324 229409893 307014315 505121751 72218847 648118637 829914953 442954110 547740540 36237580 883754094 103011415 492160580 656962006 642220692 272168916 81405238 942117476 590866816 357762039 547579418 676222041 934049599 335412803 962740612 749002078 866552612 545066185 88243144 787453991 418638540 935786783 55995912 591307114 266030875 424616286 367753517 857834223 469711677 835283765 335207140 466922620 816516006 135464652 96641707 116294374 239890 846861275 334830781 305053959 36661126 173982368 198851362 391773375 157927761 833031906 401596590 499604474 651326466 295897327 849470968 824539051 724649336 509866653 975359585 79594696 542712022 781275209 473819918 455200601 408314764 759228892 122294771 848131941 742414922 41967043 545721541 816025599 461445645 833958387 882263559 710864960 191345434 714800874 725249534 800878668 495604734 865362097 202340799 558576206 926569613 946430420 344075806 475527030 666873568 931201645 564665533 825430270 10709089 303030035 836482308 347227436 234614968 998018035 430954277 82393159 656870619 744050617 129653525 905082785 528710149 529565849 289140119 470666388 568613051 467139924 971788081 511666052 540164553 758873649 297946931 761017051 671300931 130957309 807956665 285681163 937063303 874506507 102204831 638639758 495361078 619712062 188269968 49245927 216426817 410584571 796826363 701183391 428543959 181517103 51585561 332041801 229001081 306803281 149545960 709863038 478182118 741986913 578332468 447788771 686342446 52764128 258286988 836825121 968417446 71177698 914042439 421394921 502690793 492553466 492585861 805762550 272358105 106629707 199320366 877404426 76998053 6026355 948627958 147601905 433701824 348419751 506091088 581615226 807797480 214055322 973513089 513262723 603942431 249230475 147755662 611273451 629255346 829221441 386670921 323087007 85894967 510907914 560642889 438312335 777088135 885149372 885290734 601548214 606456008 934241205 907363939 969445399 696203878 112343516 789593749 779757499 617835798 251253919 687172159 951098548 23365332 412316403 534359263 397140767 23882469 79198806 664491452 457629211 336462546 81612755 562976491 250171605 187087218 128370418 70215744 374273404 473263073 959215308 994282078 849892942 685193347 868317443 577975210 617019018 105202181 560239284 211986265 939195260 463890008 35317143 581480033 769226102 424195516 315174621 94635647 101528277 481837492 247369797 771144510 379410676 208933390 614481173 447755505 904377157 73276379 714923802 407984045 625001013 913856632 840524206 198927441 603155007 741515402 672440495 114356617 634148072 618781438 32964991 42386115 435764665 461819912 262586897 98060598 113696067 178987042 263265239 687188709 425027616 525795605 207717072 618197399 738426358 101309671 261104262 552547291 115122794 785518321 155311365 684089356 698396211 685776076 952813537 892844873 484945416 478009695 919329596 851312249 341853614 330459607 118453435 518439247 327723245 415470242 607814281 423158081 546771095 264594053 555800673 277843087 677563271 329529214 36443775 819158850 342389151 342168029 634634920 259865130 955218122 833461042 986330414 18495968 282144763 740157277 399396837 213925828 988616746 896068993 589159210 270543102 616932700 882081033 252998372 784917888 635562905 564445867 617882498 118947070 965358066 409600866 44570876 966010364 803520388 441923956 163474380 493077698 465074290 397556588 665347068 649488479 689404642 310922016 587963417 3980202 244158989 195853480 680412727 695679559 149666084 492943213 713066233 54943131 615374450 671479576 257881216 39968215 331221564 680994464 925532541 388845299 477314007 758611775 725281830 680954288 822445213 237708664 909014330 498089111 284693228 777665564 211071233 728444662 145900341 242198331 162388547 292636649 752636645 590028083 708672858 404308811 45181305 130066342 383658790 858121417 731646832 2902148 746455565 430960848 542427995 608855297 731211000 344064411 648653508 186727574 172775011 428826664 466803018 866854408 544654154 751439169 762459025 960686183 385332277 329603698 122320958 599115267 43489839 867835162 786871559 471648120 463646158 611142484 734716837 789029550 174352438 74275084 131080408 691799502 622497289 101322478 623253873 183285327 866165365 630786423 471120186 865306602 770502193 481225700 371394066 375692198 767551610 457893180 830563036 842101453 556762136 679422805 949144192 537995255 696068698 249900481 475458288 272137722 286592020 180995810 601846312 93107457 991985318 849070820 890262313 126646133 152538868 705559731 226791167 80557321 921465968 838307080 911005624 974456250 447356428 540891493 58799475 986811598 533464906 956430095 153248593 927017937 407877421 497498650 925757050 912899478 968114503 890698845 728845091 449642297 998836905 872814199 642726277 369629984 738401015 590970064 920171744 373287414 47241555 615759003 456157316 53422511 955262828 992770254 454604990 119050886 476880507 600652073 849511916 488651269 192284731 499421494 532933484 349190128 826038259 294951748 811617452 17291106 986349426 325977965 456683550 697444788 722690062 118785167 39970361 472232844 578267047 498855248 914654339 538371028 24248225 208539431 86915714 115358914 719449064 826380617 857993423 413012177 782056953 489945522 629235708 425906630 917914571 599769648 360634290 673487791 559073001 212769106 224024985 324460508 530241377 710658929 390526561 810719212 500163780 455762345 739536070 915531972 493978425 887460583 814403212 332848526 657234014 769053913 799421307 473535168 817034342 333515511 602103398 454248214 447968006 21201793 268498982 800657045 25797244 138811521 94391456 774215046 657007760 501447 20828605 269239683 427992460 434581225 570538093 813606496 536892236 932588618 404538284 285183305 983742506 892742160 966315903 363104166 779978253 850244652 439517675 923054125 290671973 146616920 142944774 397770715 134152230 691245842 137781993 890984688 321454798 785759397 507848886 249487869 650461030 884731934 695184792 861897941 609977469 323044439 148877504 565645715 927531043 692150511 184055658 273141146 33460476 775333198 506135001 458235034 396905261 505569191 870943316 132742535 196122979 534269424 516425263 62301593 487848405 912032490 769375940 632414553 739476803 323750687 558543477 788297102 990247918 388105178 899857836 964274770 244410026 75696697 168095710 660779006 561913291 740565017 594641538 107918904 817824815 740393251 368061981 307980522 624638524 148699590 889228084 815223627 655075555 377302589 797678432 32628948 176412821 955183494 831665718 918014029 2709588 49087594 708787292 285049021 804546214 588547706 161665147 616239743 650075801 616819470 840862277 331143721 538912451 107118150 429835635 569646498 161832002 348630025 628233927 502566680 93060029 115860745 18985230 254953469 716044896 173781437 897803803 925881869 399979238 732605799 571955651 156689485 377848968 988833037 720767212 696259593 510569999 214920321 85203073 894847445 554628296 702034776 760402547 647688847 922855308 943064057 723015354 409167961 839614391 83976837 433884253 979603361 769372718 494516208 731193952 679250971 368028768 700559603 361844956 385432513 875674439 780192523 649159655 516933592 577763421 988513666 649589413 945099761 311413416 970390634 549660222 556233946 55523768 920902041 371257065 274224051 229687461 683688878 755436251 756326620 378853642 828766484 676431704 162457350 264530959 878513404 500813739 492873252 132047203 604304476 586758183 685821042 798620216 349977845 86995749 402894194 966316112 80346189 847486982 389999861 557327091 795904184 679334454 146056202 87425003 412079181 577733670 717125136 889037967 85619691 168826451 666479532 587683518 109946939 180076092 358947784 581987809 585746605 661315950 923543706 841589218 292008571 566938235 55382686 796910139 41012129 117839353 208490393 609543911 692682732 87644559 896126357 91931501 973636587 111861477 823383016 865504219 987661813 55885998 389145133 24733129 938771754 344328613 37376841 269612372 383222900 157628811 929845353 462402083 690812801 594852907 443309054 269416548 95998925 583742551 224820424 60430285 774025107 585147111 53803725 372912794 264383713 788326336 556158035 165151382 11412610 220016333 298177776 340796428 837181200 850802430 712324 443530964 55455726 716051791 20108851 240944458 429014593 685657025 307628389 249877335 674715642 915514462 554772686 564222310 391632083 852488250 637127537 409427822 691661131 526987885 98115466 320184816 397023657 354846491 611132332 347388146 725070076 617050735 717566888 903824639 220789795 879616919 192587675 187564079 639424183 326869971 413215463 434679585 118080036 702047071 281586490 590382075 658478744 919819403 813549451 617112425 493830671 749458598 475866386 452570530 583258948 548340493 519431767 960416616 909455556 995757087 90768418 574121725 622435294 30806598 403252362 921293618 226598824 780082425 906074603 383256154 917365764 965117357 923002856 999274839 717982875 802610407 702027377 206723213 722350042 740733233 662700724 671220971 112541182 460138012 606618162 842297062 463625220 416675139 13415343 889073023 508535991 514935112 525205556 869937978 57989539 839179481 554898456 768440100 458786 770307489 138306041 421976022 547115607 49111904 7769527 561325167 536085031 944298710 702115713 346569107 897168451 536949967 57174218 155496559 662348578 945896217 415116623 785702331 779668489 841303954 605091858 133554359 684021242 755981597 384368740 661603366 715373259 812564643 340370133 686301017 104394768 48100371 360655938 461266212 228948524 923518829 780509906 474068199 7868743 636812207 561748207 357352839 394964559 557418981 225936461 845975667 885752828 272536097 647507174 200471713 789102544 859854459 338813957 944940430 341015830 115910681 271187761 803703874 270646745 601118756 279432509 143675980 127213557 935128783 414731595 432540353 124952582 225354833 722360248 262059326 709943419 832596463 300293944 973739757 123097215 430042866 668201403 258490231 22078219 136786350 109549949 403510295 675814878 569418365 515983362 402952839 691856004 429740222 538706713 51387921 588245834 174707167 732004307 484400257 303261261 419981904 79640972 716155695 647178855 357208206 172224236 139036665 197970499 958782488 321436383 974758467 750048082 877629050 286464405 310384636 604593869 224975428 536117647 978554012 679060145 841750037 420278924 537311264 421253318 651999628 665297564 715103759 791295394 382468179 832627987 609881719 230597016 835025181 358736781 25593581 931241931 617021603 213175535 819246993 629805856 929813160 335525984 639087112 701926219 995424504 559587420 383611009 985261506 998959205 190982557 503962803 398973638 633186758 322169891 14036186 27407454 283053313 661774398 614823103 597383004 653082622 709363073 195220141 501801048 701961136 578691529 223237244 662746290 289598225 962013242 129939594 223485330 375202853 480764992 593216702 779920617 817324272 696921233 25610119 152944237 845686925 947196967 220261592 656404640 831514641 653373254 235716917 975099338 610417056 743967867 353951901 811875581 902026082 926850459 93346210 751760654 253803149 382780610 157237851 377930142 365081176 74837844 801603941 808951832 474419974 161207036 946162919 443353258 563280098 94926513 213364111 219877708 31834942 53811628 948965776 77715136 885576052 184323700 817819055 330264973 676814310 973048276 82521645 831511809 644029185 436732898 370137 438221368 204233779 82129143 174793483 95159568 692837111 716919483 967759008 698231604 426893265 985947413 347624703 959826705 235635019 516284223 732815636 508351712 94732023 809203376 628454744 684365730 161617006 966309424 649788617 841673249 246994518 137208012 912692717 226322410 248017748 390733524 658763216 720866903 728732959 729448169 338954506 423652743 668922222 688334573 597577915 926511970 782200069 244371722 204036486 976600220 237433517 678184121 354316956 247176616 117567544 707732913 945361585 277644235 4048259 869918459 821476100 433907210 888493935 850251742 752473693 606860855 481614051 559268596 474504713 488904168 801895380 228034838 861449437 731569024 439054910 302568555 745280054 912322343 322263329 497658202 244433665 271835083 897340806 203364252 932763812 39191590 108266371 751208749 47303195 928835513 309938478 797421902 902386400 780447689 531401135 796029838 769426431 133821033 306922536 446137536 478904064 532716913 20665043 886989314 492446973 879931777 537880038 824576438 874301843 208093438 993524900 136254088 869059560 946031391 938209882 315966064 930732460 646334681 894757718 675998118 596385813 564907496 551498741 89552817 50097375 587546587 103788439 874343003 374128464 765207294 721504681 967457978 965948729 550362476 492423322 841751592 541191151 558536195 70853352 867904846 592069456 968418668 436316690 26842901 832722626 451671320 792005541 404484014 138674229 479126590 875638833 226214301 41743647 96817375 149618257 859631775 688412027 25717955 922771368 586968261 756180690 496591992 387233248 513903454 714448690 280948829 816117163 145913356 115132976 68073866 332417472 852066227 728910316 735877358 748327912 552188794 295155212 796706356 379908073 285579738 900691646 480269529 524692116 299487119 771573177 205267736 696419015 210200729 466033976 864755454 103643746 844026185 325936901 57514840 99478353 31904049 535893357 498193600 780202114 254132270 332485189 119445654 410002162 900991843 451877866 695050242 302299303 638930494 954487368 553112311 65373604 547998578 823569864 404135718 821861633 609127420 748422754 130362647 249225684 886835744 15172758 823883022 997364292 688657002 551235688 523529245 667246200 177149614 885573223 755711259 396222882 903948554 978331814 904209320 772961535 749635296 762313 538795822 512502988 15571423 574835698 30250461 933794136 438218999 571399122 261062059 696280055 662966119 547635102 617032026 222620669 524019636 359448597 257543026 468911566 314270376 167695738 340439365 472743384 921572955 611394208 520390121 4696459 826770212 931428826 761337660 762095200 524046507 974872073 844008172 750965468 910661339 853780367 954697574 748570503 531319528 484227934 736656611 458483186 11553359 515406827 853543522 874333629 749071317 53324341 296438956 388997506 347255426 837703871 917032784 878185459 309725360 663528092 837226410 688631997 112057593 228253790 523051478 762494876 475905856 227825447 935768001 562289490 802192307 358781340 981369877 877946541 877837765 25884905 615892303 393180024 760579891 317599686 617884334 862546323 670265088 909697395 392618297 728653278 868130427 749687476 241377474 69784388 505951284 454249687 774237921 981398967 486267661 896859316 138163188 313126193 211827492 986513318 455020073 132422322 334813417 341315737 34702952 861217611 714688526 100133109 992418160 342097671 217091220 965245365 536847551 587176965 88326587 929336402 388212637 21704035 461043982 556387801 419327512 42441294 570077540 578750418 733584909 157617401 48827354 185728857 677485080 216410525 710542034 102616584 551449252 652333437 858344186 647418631 30658273 57166817 152868422 186955266 773106119 856559903 491399921 264827955 800373011 864676748 14678143 146852181 275653715 591022225 545574079 455613103 594206163 542262672 203863746 532588561 770841517 712955141 290755558 906224334 168055488 591454563 712755406 961573577 822059445 746731565 76516457 60264805 186889725 899624177 157734121 533065870 825872080 998477884 206564554 583466432 322992173 658291375 544284625 22652148 411906013 588886501 37252106 296330676 145774193 285349261 897593034 743152141 954318401 634817112 758333871 889512853 329186922 312357118 914300823 318006890 733007835 777139526 264913332 590648883 193979454 635393785 865805433 465052957 365843727 264857829 525430432 199781087 966763146 925814247 892418096 319037366 579407036 244323299 547694452 381022058 215797876 145571521 466527233 759552075 962732105 330484594 545058739 520046636 477220253 990023413 418375084 91098986 808581012 442680648 368940378 900020208 726561827 19117177 885618036 890539563 544260353 489095061 964662515 48875020 132981934 536629690 39432731 789517849 912864113 624180489 707363707 233124946 61898333 906053549 817558243 941184329 797353542 89724120 823644786 154213139 978924240 952204740 770796941 861368910 124444515 651999922 883114462 809996064 515143213 593820656 805558877 61442105 890992936 494346956 418773570 273270732 785934613 541581989 885021202 946455707 797163131 938595801 762827932 55600362 930807465 468036819 865602546 727188872 137430713 231959812 197271665 590550219 277992075 554925035 648464826 175529361 563783622 2308103 218395073 506363457 375745244 973587938 893621171 694305223 155615748 624812814 765049101 306541724 202502209 759519016 834862743 711216574 376300119 612719823 971824474 31069618 169970648 198323887 348454316 678724998 313546782 289597051 3516459 541735890 309277000 781693930 855451318 13137333 782995773 833297346 160244604 558073809 482682031 304327370 924926962 565741399 940958741 470522073 369056213 85598972 947711153 317408706 285379111 990780419 379874697 843468910 111028278 561348395 136066671 542182341 515996308 584511431 853187832 545059256 123867681 342799532 52845962 456404547 613445885 273445688 557322312 786638439 459243414 501184081 58666023 66738476 372887968 450771303 702960090 506180778 746808090 625728366 774968549 395663608 207370052 417383911 662147727 250019638 98299309 864944597 372887785 529569428 84870952 915292359 143451592 312640318 147839698 682546645 480910288 121831795 357779216 778648733 384677225 668864114 706128012 818687555 935908291 787476360 275892026 259108982 13317077 597814020 22071131 759546993 870085470 438645061 973669998 185453547 519940585 501089704 521539138 117176366 259537350 546816923 104547816 608803080 426731788 136891279 74032834 664595919 450529437 690947069 954676081 533550177 714674463 750543977 952532190 103226404 267312643 632122970 807515971 13553416 280053378 542196329 508076313 442680450 850928282 31655211 522442277 752971407 150352409 185352771 862923379 598440632 250687369 213757275 625446231 863773449 892805956 45233957 913551982 426099480 569201260 698092639 869955741 287729926 9836520 649368772 827384588 978795638 688673641 225692710 704795190 264671640 502463077 50724180 535727827 306824740 322978588 740539689 633177830 246367316 938533276 476995970 946417854 215157746 983043249 185534547 603279345 346122059 696495344 614680197 928548950 49036852 611222976 219656473 176289557 595141901 954420805 480469514 497187225 90499002 368520816 85048171 388319895 181894826 987778043 41812553 784029961 340224982 899185509 267077567 981535543 432132027 816872693 649409006 320791977 506447453 16044986 469922050 57695287 432189005 157319315 244646446 458924794 660415903 698717976 513336490 280822618 115958514 287557305 658161339 923118336 808107117 808453022 231185065 788519650 896786111 938293190 194501061 258038844 392535579 444876271 180130156 455392145 372993859 11039904 439130112 558279086 34293369 318271276 558745578 956420265 933449359 498757288 645788831 431119580 372805594 352233206 960790932 733248492 38032185 222070207 426201937 319979973 747621136 527219056 121204317 888762779 172908112 258412103 717193290 920900843 917676399 896651070 811595957 17762938 617677673 539877666 187746364 708117843 913876165 199172992 304122252 53325256 751936659 188608435 349926489 591867514 853616487 309015000 976262744 692221259 846044768 684668379 971959377 752838247 601360421 88235624 359125770 939730752 922047461 420170235 594864217 790183321 674512466 49026514 546480661 905359983 638935729 161512695 628842784 234236177 199838146 673734968 242690663 964488724 985782998 675241009 109385690 737701460 497955011 954433087 509038453 275163125 174122729 797144459 482453049 197955938 980100650 413653764 529331505 931989587 331462137 222078821 269195886 101720768 692993864 301915179 408202764 120611310 301704600 783758498 348702509 309124461 978199535 585241814 510126329 454605325 231816666 380264100 810076069 201767146 95545456 220709544 502843241 124092524 236336465 87326542 792103817 398867772 125669792 454263748 356608847 222554961 231250189 403363587 890922764 914539748 783803084 477395144 530658076 499438972 561458336 919707297 802214112 601776357 933730253 349879000 862873028 252726320 411816991 765276557 997364278 890520767 883616494 126796696 197342390 853960496 206872601 77843878 67873474 326215284 911867141 519511849 680298982 884833981 841657760 253065556 242214068 263541894 433079651 449697834 142427590 753161623 824798794 657054067 605753022 791482361 379488730 718522304 928295751 849037058 985621029 233273192 58510354 339389519 735705789 670193549 677914588 99959489 122976195 509128980 845104741 413761414 25251548 820875697 233513334 287875861 178724407 304732890 882339812 767441445 954454410 438320337 957501577 787557055 534216979 75411867 351244100 665532714 666300056 103473674 471671299 652610817 208532074 765127352 732591031 992603162 893972058 23035653 506765658 526555550 202745549 666973718 545729262 380976374 847681443 430979550 998108799 304721112 214669133 934358548 793780509 469911615 202666945 359615290 982630882 15012209 359977340 245761943 68636402 732427001 650711689 158256186 308578423 795986090 613786481 671254014 420352931 818663075 276378698 316344963 873799600 563260486 690834870 936031021 382440160 696235843 718443483 626899504 903451006 410171529 92503394 6870405 692699357 57657687 745800841 850543083 94832725 891731505 225957897 395597288 212035145 990852067 965540905 24784079 11192613 912093824 318163894 410086841 962608728 236460649 740813578 856320643 676961631 203668796 472722689 36992729 916063933 428645611 294022659 527816999 141338360 353431717 804049146 323438504 304150439 390914026 967878241 779042652 721325152 250975101 199922994 330488589 751274953 793288809 508031480 34012745 920092299 411277572 465290175 107419750 944065110 724721130 131950363 906463624 2721510 642701054 402782508 471637399 81475326 844681838 410441370 460299587 664695144 902165934 826667666 326092032 129930745 51129467 502304712 929133588 535411845 400075732 861376895 58382214 137850864 262164237 859256953 52524837 212417318 777627316 662915077 283618440 828444700 147024296 704149243 85861906 47635655 533907982 630228152 887425003 134833707 168750160 677125667 616155392 182808405 185527332 941982889 897852431 547819090 984168839 474281795 379619475 916496193 474765242 19767146 940918740 946374977 516209228 351936043 402213350 380980095 173837329 165892879 437114017 983028779 109076514 889920300 190479010 766649214 227811560 132041765 994100307 727699648 946617103 124111133 355336421 910418230 989872774 860559810 525617488 285967156 635807631 914050890 491688787 616727316 173440428 873230199 679594615 419278904 586166952 533250442 449114380 775754253 271122328 10961239 749638957 844792577 167127003 52436527 331116980 497297296 659194896 193800178 778544465 45303612 40065320 747707398 115077486 380960144 601348439 182220379 291326791 533301536 393976085 379245157 584091864 140561027 764688939 737070628 593610222 571675482 739679393 418554653 861740312 950431060 800735695 40940895 897791661 444504353 523889999 642087041 886372300 417862010 964495365 221000862 359888226 22255138 899946784 348736353 425363739 788602597 200133392 219904757 253878897 316273299 667014295 407297297 453436834 661803017 570270645 21399539 318595770 253693220 768784566 215403360 998067846 294286292 325758768 402265513 770322848 542734601 266199806 612114594 559258472 117346749 270565703 678155437 907002630 108135409 677442419 177612716 713515629 130214321 853655608 640300046 949778254 75677712 844435604 610234315 369941041 452258855 600854731 551673696 874464090 664165399 413331816 878872786 407892442 768601100 952287295 104889011 710853770 312736056 930152810 903893783 848681227 139224278 240651860 852801178 130861250 444929830 260893859 752381287 681520099 604641398 23540047 677565993 537056355 713791509 524924816 645604630 193686789 510454109 862144495 124218094 573244495 96640691 489698103 773210614 446999955 890467452 361543033 992258303 171897832 608120371 612232980 670648923 288942894 139220297 54186413 883198187 523492624 262606406 606096175 933176594 592983548 209929138 224074447 323847108 114811435 294709536 967620105 889156978 995571356 167140909 808619934 27722524 896790552 469022581 934263968 579983178 209787439 226962342 849785185 271981832 89246267 146181747 830927483 236062446 890204249 366684053 1855444 912205336 759964276 84899790 700827033 591404335 946936634 79334377 642749245 154021215 297396007 37255095 888957565 159620959 350419321 768245012 380302429 978703469 825842484 252461792 920079400 316451153 404644401 889321992 220604021 72724308 677582336 523401852 129258013 904914770 17012489 806421561 876695367 495804072 326312300 256557119 68096094 954448445 536716319 468411798 957504279 573451130 402289113 377180244 576190317 269643612 467414041 867294357 895801509 792743773 46459944 850365301 442072650 195515013 325737494 789120035 767592757 566935136 372826044 830814417 777615484 104574473 540439995 657053621 447417479 25447193 164659320 69556246 18997249 962428601 752869159 692123964 466750172 636707991 627156159 161033597 73210203 309491176 836035837 329594669 469906171 161173613 499004783 225677235 274935179 545561963 937499744 309298295 923507233 788952751 547295213 48562155 963213335 293279630 174879475 785272971 401162771 89268203 58010137 567862232 766980863 615919911 732411603 971222364 968105232 923534132 615885912 47010730 282016451 99456902 643929255 103429471 166953949 960446494 706316168 172321302 795439208 897595008 97699727 112002944 402606011 155748026 583717649 880294478 776458094 381800548 720560941 481712953 905430123 822127514 185878735 386209793 530075609 731612678 202578853 49670261 766674478 4740563 855570727 198378338 852063785 282530486 153481109 455903145 867651530 519338737 550764281 630057764 302186336 106037318 202626594 170591685 493084289 254902536 979369385 50082939 177118978 984621834 51771631 535265342 461340174 75789484 410555161 124593426 334511377 98112468 968735258 531542277 45192379 492013808 803239336 935609122 859615245 659314165 960906824 883958923 581224774 539348322 443644477 798032220 636967671 995669822 448435867 695848899 947242226 206571031 91361847 685815023 43075925 907882499 178265778 273372188 67548544 403205023 871009142 883663758 418552612 695004949 789136563 67293580 201026868 3369743 412729952 520184172 256898794 577165764 941674814 297769605 895261390 520675316 430955990 299889466 175787433 963916262 27105143 778128374 682746256 80558180 929243448 494367274 636045537 371319242 262723324 420323157 489600319 815610610 871141994 914602992 905341076 316848197 582667762 121813134 517933593 371741357 351801293 803715261 42865990 286203045 429139707 26384409 465604835 53522216 274192450 173805378 19069432 557252798 196747575 554927844 306146525 869303925 339590959 516787888 459296811 548658914 393836618 30868067 897173449 925591844 591181937 341302972 766537698 701859300 711545428 960622729 91756522 170241100 587132524 475152279 810877343 580618516 231382010 606117317 666267139 343490427 225620997 281622002 182750818 221461574 429365852 501093131 520677204 463881413 922128025 74511615 983699376 437623242 892979484 368715211 291326878 177512632 217295372 898844273 874217355 65528436 911544925 404992507 863158568 61453933 474017474 689704569 470231667 22129047 558556863 448431112 800924849 103978351 798423451 106072522 399511402 780398849 921357159 198377705 381301112 7808981 981107704 821903253 756723701 899877637 646215155 657262093 702439746 499172910 905153981 189256589 687000080 541729399 46258312 923581285 650888786 182881677 449818444 723101156 234042949 481874598 120186824 879610212 321678184 949910404 673642884 872480587 717807502 644515689 258899156 304185087 363859913 801632804 392341964 994971380 167653234 21554446 473342798 712834469 749126963 40832003 514543619 168713363 649633778 823900264 762823513 983511881 77833706 165736495 393907851 902123607 80447376 934488776 433337237 547435098 839589551 269934136 337770053 394186996 116319567 411368451 539477798 240675279 188077767 368415798 423804053 400647068 715365550 414411368 38676911 928535 113689071 139290297 506654044 201447424 660092339 617317066 428176719 932016162 863719532 80193742 220818684 271803987 890223323 840329340 898820776 39626601 664904450 972975119 302113881 122833735 210552621 874069326 528679135 586510294 746893551 158250120 384512208 369024013 434894374 84948883 737725843 402004705 21462008 394675405 878757963 689425494 779807695 379690524 276187367 60074614 348010588 595778032 91330339 70703191 518133922 558722110 899377534 832253198 768500961 407748484 129365057 29054656 926298022 679036360 819993721 282705303 241001159 362461595 344828675 311483588 715981404 945563918 2973562 406660482 787682252 996387525 419113804 214867476 869473990 154266337 272495268 651880133 296343608 333668883 224652159 161000164 551495013 308962962 85874841 637927884 208518860 670009626 272139901 676860387 248761149 567652853 372435067 524817808 856009928 919733741 663601065 661771844 428026829 224512859 786517992 561737086 35626990 608853275 994470627 619150268 969667355 329735572 991398151 770079625 121814659 29212087 898626703 884596857 60055973 706191351 307668601 993239077 386157380 842640211 351715726 996762415 285887598 371780177 100610398 750652993 568259960 276972545 439101250 744773902 878459131 26154231 6558042 175861072 394109661 367858771 22229390 328208843 547672907 702293176 911842447 892159815 610960312 615752538 155234002 71091606 974628321 291238634 724959132 208045204 578983625 92016298 104141300 320994083 545935294 157775709 410213800 442074667 533659474 740105813 637264465 728754080 309474405 992196194 512399953 434164093 865363225 455654122 679269326 69576387 35998168 118943950 402764731 99729020 506020954 213301631 106306253 75878588 499203737 86702577 922034309 272592796 457939930 349173155 200705071 486246974 241272747 80413083 782071764 50333133 199898844 683289960 231978836 202443899 485504652 839963680 578258762 886566019 431270176 987945314 965281827 346641188 390736707 765857363 791011594 813431725 681038568 924047010 391998202 144846955 476644942 115632516 238658482 146348476 282002169 924692667 113592508 667934466 656329395 566064008 774053990 689422249 536507025 76565949 602684621 617800735 679588335 875677359 488325322 199743711 324491634 218984506 250246922 577802604 131412489 482948553 915527423 449535314 652704738 322350919 937505757 207221026 532330880 859075115 313581989 925439351 761987747 841292915 555527711 112026609 81379671 68089767 695497183 613065277 379387120 159358419 856658233 518520584 19479310 31389837 752169807 315801877 921245845 758174196 626090248 569489951 65387693 253190574 303728151 799006194 347631050 399115756 937318899 476480866 169600174 743746146 565673179 381882185 438983001 68776269 255939798 492970887 670124568 979775604 961941689 545320967 898868863 366146599 993402648 409699772 228758122 809418299 360196439 106600355 544244993 665816334 28143771 955155384 791999402 666938503 410252500 21859338 362799902 210563347 614952893 195000747 303260760 860785833 136330196 410309042 604503452 444428230 652776290 813345861 334311796 540352628 596598648 989750669 563417528 209958719 778589423 910145210 978078853 547351611 535641956 459235081 935132475 788095496 403920960 570651322 314262919 499845326 458585526 286556699 703596126 185351480 357831612 154516602 656644863 731828609 603821845 768153909 91999211 610604641 424648260 220049068 10144750 556012578 955988124 967964489 209671457 698561429 311601976 458117246 766985688 374533387 153949173 421771208 778134464 735336290 344059005 669939623 212508862 388068613 880767293 863772836 593253901 631760608 565622385 899031636 651844386 868977513 853396759 270206544 115674823 914042269 974423033 265814330 393234438 257728004 311859366 750016958 924810546 897379755 923578487 637483916 878032107 216746794 363097994 549933662 750381331 605963678 365573067 831389434 969538004 486639534 631459305 307526182 721257126 563329670 354852952 759903159 648872258 861448416 490012766 941877124 350317745 622731257 733298435 746487923 626236984 300664980 316506643 264228204 257299059 436064771 697640744 571039842 356238906 550852891 401881253 841957711 997357489 73214267 846535343 245788982 610676039 474281799 666817078 177155872 382398637 739625135 667568630 373297441 906425823 222092904 351720300 322203985 354027557 707734004 751962081 301195987 861736201 173661269 974553956 824566995 729239903 981922587 429314513 115880320 993339461 952095581 931912644 553471769 384180252 479998134 502136231 809425114 151558034 761664081 246506154 308831250 86156959 299069911 696664008 828868370 459184504 939222146 11882685 416160820 635106726 656017425 744343314 48663261 791100148 928391623 838023450 791756401 775982712 425020277 503484141 79863657 457868172 915904622 536215398 674080824 447392469 877408402 202758964 243389033 595796286 245821770 262831557 678233982 265489149 419773057 924012111 166124046 390109839 858837421 119602898 659014323 874719669 905471182 930944282 498917132 388470911 517430632 538815927 662520520 690519100 612824460 875013885 704421015 649419919 798428369 629114383 453926194 280477785 347653969 804991958 608771676 982975172 179759284 905504768 462072290 754540104 734212906 335800840 332073106 618252192 8383078 725087277 258495816 305320143 977427115 42540662 749414887 207299618 894319549 524624820 908434009 910778670 685050342 197874305 661985679 518089169 226146050 486632507 76088453 72575273 892825967 480072204 552499003 449583785 956110607 490329571 880562111 89495296 968978517 130162550 620351775 688682799 65330 829180235 539098230 202670455 369944616 930303911 76173291 915228260 782782782 717946265 905500577 905897421 307856640 665058298 458349774 268986316 886657414 675789421 646552239 715596743 487583085 188171862 133176706 514119528 855886554 889872872 536451986 436406693 338364542 93066010 445988402 931201978 720368782 688527023 493355709 123563562 172698057 471860523 339891092 481283522 885248627 245967840 683511587 913630361 679969628 304638952 340602584 322382087 18748123 994619680 716866098 612301488 469248970 395818805 659872688 347128709 542037654 725788818 782048736 930322103 16293929 247819122 275936336 442190785 658060026 684795607 857667740 239061355 358277127 2783108 598166889 349782204 501435350 847406861 65619802 413541903 915733878 413520075 788978219 17780220 721698687 263335130 229805453 613025894 29801738 598384936 113921609 718547325 891316419 810652768 46191908 34264755 48432085 536472319 963646967 351773124 572615927 180610115 521986196 661707703 7209830 460645682 549898211 579323348 288529898 642450335 728347340 258533554 510390739 754077985 804733252 322777391 849390066 800938010 17044288 245874026 54313387 237576881 281168329 988456402 594519521 986572244 709873634 917526556 143796736 242137665 948962725 295298630 589905667 318244723 97045284 707351440 621238375 316071093 339419017 474073481 79844144 251270165 398398968 35329795 964488431 523619692 713531047 489821469 974937273 159143773 913524174 590182456 225736747 236862028 221974193 760961797 248672365 8099693 284357275 365418356 778791725 622190519 23843802 430107587 281922464 254609126 72764109 285624181 935264134 857491595 749614293 163837528 803774503 202099438 616196442 37224833 390753098 213261869 211072721 102834248 126014031 868354340 21029811 279527252 421378828 906021500 372447107 256663442 569181419 733669288 187381193 879165238 336504794 696352225 92069659 38681276 23675214 312768289 277022735 628180968 573524297 143284533 395034699 777076932 392836429 959369388 271341943 354321064 845037929 418608096 76990533 584226609 642807093 791641585 379353969 653586748 899028173 677533635 437450941 728539135 399791064 235693322 830899184 121364454 683184262 43810622 974129634 984711091 112971405 583578783 432967017 211873126 491522603 256406836 37640808 68294991 833404195 473378257 694877387 945691903 354422727 907735817 222604160 262609492 858226667 259697728 185571206 320957042 152582638 981888156 959140575 711784132 946711480 800966673 736821649 669080066 594972597 648542289 136798387 466879268 644053469 840099810 596696410 475825777 697596077 783200520 588885423 492526197 183199274 99974361 746405846 50194689 48980196 830775847 572632836 38590004 429190898 736355476 904506997 912999795 527555824 311807371 511582824 390760 117300486 94990139 585592107 69436426 125275109 17007512 339245578 103139220 740973500 947309929 297590886 133587849 620417871 772440883 634565788 923099831 633080544 755222596 764758298 938059056 269441347 269380024 622433106 694729042 996635338 812833134 201462973 274868928 98680405 700432655 258128349 27768171 374252103 508288265 600401211 111232129 573226387 565205396 811840620 304556926 249235117 635812788 863294216 772717868 39671953 722736175 107293621 464919701 682426313 308417684 308314393 913759755 259657570 6109246 271509223 37680172 195335667 262231884 629682908 309736668 52205718 773495204 96943543 422093382 505432057 162839035 976589892 131817952 958625603 314252997 402706005 242099559 990256429 436098373 811325381 754743262 160094964 888376449 491660149 501840017 932451683 927782987 471432783 544835091 73308610 952158777 811589 630263106 685705963 635765935 174100821 319563330 837999162 958142417 327723642 697580416 55950489 118573714 227586759 686725807 601425779 999042474 605891657 449435085 533465020 125649049 374131992 476096026 794322680 192305318 397290077 812443943 641529899 530723301 327411004 864829894 835210978 669712425 744523757 535587604 101243957 595657749 789951140 860486519 498504127 255823376 637556392 19826582 579478186 186999630 652587841 458531691 36860579 511648452 507858115 997941549 747234526 117568051 409220999 887245413 268225820 999273761 342778093 15434461 736655525 141574115 685107300 425257384 830907715 806580364 738635866 164844068 902585423 122391040 44158284 22100727 560519076 158541542 967705276 447852296 621977260 422123183 80508980 247059088 205069138 612857490 836739141 770781706 965981968 938698897 396654986 203750202 362397154 145416304 998243238 715538988 680302415 620252356 709644354 675398708 866505572 690855909 892288019 624299761 484617656 937096944 255931855 472991555 306915945 125266641 369580346 908555351 688594206 350005 801957921 635108005 645508100 64038804 597288272 958486756 8409299 503774771 347057576 335013149 656791497 687303957 262726409 619287961 83871912 151673101 201801051 915736047 696914886 845119152 846338963 72570872 359258866 148998500 117955241 872570074 75472014 126398542 710965921 607456771 741122689 612879197 301136261 512240677 356964150 427277386 722126436 292979770 264147623 426606489 49506911 427514508 83235662 329535373 942685586 890914723 170510645 72929080 916217387 476794708 448064233 159865202 605031770 787446205 583146110 537091548 285322842 213080641 602890901 638698465 682621806 185149579 753593173 6953387 775620833 147563408 961839977 159855415 744965122 951986830 432713482 83349315 711068206 170936841 710259957 120450136 291023815 58138825 340356976 273216456 273714485 103729895 374752586 248926888 264950252 263724222 21755099 748359898 668003686 12402162 772863740 3858439 183936550 28628591 100394520 314988190 432324791 374862184 826489116 324007126 661849255 462560863 461297279 125535666 662954389 952421393 94650684 804404731 785887776 997164428 184129500 811906364 895870710 994463527 921000302 233038547 575269316 447855485 584281222 370348253 30941771 318293104 579263555 19392323 659140934 546118193 100700492 318311604 894574466 276407342 435497167 728714666 685720789 488888363 732061571 659946342 10334484 132566821 327491234 574725360 340083492 781224042 387023608 107588118 740344815 744079507 78998992 263964785 37612903 368474743 320827907 347523170 694459782 68124218 715425514 78172178 245852495 977071180 376465265 146307697 169345483 176169569 722011907 942849076 735872778 972921970 619990166 464282334 618666797 939363269 124505003 96371642 818665296 671602150 454864199 776061138 214223523 524553131 60485365 918199813 906495826 820272685 466255312 494037484 924364186 234716114 235729780 900911863 887118015 71036743 339610375 179179600 364101641 875282559 880441400 414990579 135273419 532322742 351461437 386956445 244987999 995475570 21839572 91070680 357692710 918864511 563775300 438551541 858340748 485638894 113958234 253791244 618793989 433832225 224944751 870927357 234333958 616338359 216297053 423531631 671877656 554758558 95653005 476845780 951391935 922769674 249329388 936686180 217511824 750835833 830570227 780023582 922261287 301668269 778833564 16192714 634785571 594213557 529466739 622081532 594067248 528434401 498551166 851213577 644443136 279934417 287977564 859572497 234292812 962346086 437659686 352785149 958170584 300674001 684746371 232473725 300682351 983561346 163217314 354329866 703547617 238469942 399172408 792293092 600146952 462477301 81507719 191618066 125503432 278013189 206787153 856009063 353402892 464021503 657087972 499290488 235596229 259081917 307250203 807366057 653512682 152156260 973154639 470602015 591856771 866314848 93761898 651492811 169249175 9805670 684002008 688632164 951930936 840532592 882239888 421432430 821924226 211367878 385523216 191177006 984923543 174680050 337268319 362401975 387256481 88641737 303547146 339735007 957635025 966127205 501256747 892066886 528523360 631533612 261459035 808888148 750537366 890877389 166830017 14376252 315351224 24976439 945090831 199326196 982726170 676721321 718806649 785991231 473715735 246541734 60751546 965616801 881904398 277551100 490411038 293282923 508335469 160342975 926616947 80628921 58388132 990305099 519068425 806633319 656482353 922066499 886015429 418160672 431636624 654824084 238370312 646919506 789053008 8635251 631474885 944828729 228175618 730985564 585207921 917182672 440321089 984165907 853406214 514214117 934003374 547039650 51047439 690363652 625722098 895383395 112493976 120761991 258577603 758772716 588736315 233710988 513724377 146943781 249552400 9653246 446952692 608121144 662805697 131878031 634000610 110805917 353122940 365465520 208047989 671584781 238590456 983593128 477070981 876547979 530168947 811922559 760773364 703714151 99136689 522219776 547571632 865312307 683561984 354283976 91798184 857730250 888977722 372572982 227650521 860117844 779525564 402489202 272603200 987967034 648549994 318409580 140855533 312565554 727039668 863333343 388755950 471076408 529128848 249894983 204310880 604669073 362296959 67907053 595536998 326001094 228421249 65253602 699457574 61333167 249261352 925029632 324062422 85068900 198022540 400669927 805927088 533804878 65155913 529425147 399414517 956278296 116447108 955827825 466842863 35421365 29057517 885968960 469727475 822333792 932886458 843289127 778297686 615392163 697446570 889800111 322732926 115706690 226152450 459388200 263945431 564200791 23306129 480400044 424560078 230646076 364715693 741135129 590742752 675083671 923052853 931338521 854142355 451514194 615099020 672918554 859946347 260168869 947169959 646916439 281687292 203863558 575194869 572399821 726902498 283868992 44878198 448845382 638779073 532314715 391303092 68829268 750082109 886982317 926211514 374029644 195198478 651703249 669040417 586712145 93005035 974745773 702071298 622265931 414293656 162243691 799365640 609567975 308582622 4601216 972113759 897859489 503294609 584146600 692099519 731993783 69736585 942154219 917527397 949665330 837247146 351969169 415250454 209828579 352002780 144510766 423599141 314669921 640264215 801856673 102188386 214574349 670768460 384730380 1246769 577865488 573438599 458535901 742820466 637438297 657342411 513782728 300445336 199959454 409681452 244708808 605537434 532897893 935708359 601420834 186569970 526044658 511458749 648572771 867807658 619899734 819144502 427159388 556421967 3909995 648415846 504903727 696956919 951331279 103108744 924073786 842985022 426611179 588213724 489044012 300533327 21722094 802297519 597940221 417042645 137066451 809010769 536914403 993750532 388199001 491229727 949560933 534515872 141851654 609907319 364820049 550349551 935184431 786501574 579543478 288751033 207176168 339575678 375359734 777693017 47656725 334828315 200786356 923692205 489913176 745245469 451045851 349223451 91934505 970660877 483199133 746897038 735025850 161028991 454639482 75571329 341036304 356815628 754601268 267154160 364191985 629372762 793739482 491325538 750840810 171509008 956008639 411470820 231784283 597179360 242007421 381068815 73561436 144959366 633892603 733624828 442298845 935710403 895748450 718888535 633420167 776275554 967480363 437685323 5389014 663367221 840294671 533148302 21188876 77910549 780963602 530425441 769911598 77396198 487489411 278297223 907377420 925526418 546133234 947305553 106393152 417192970 879970366 697057938 653203244 120427594 76498829 718028973 382546420 943347026 389080393 735456643 877832586 905440305 652063012 690987143 266191016 451434227 97316638 763396267 973451980 561689013 102502011 880120176 751889216 677445019 340885188 793128925 452512786 162248653 502145746 153930620 241938717 10096253 730736062 777146729 958688510 662318055 849276909 970087228 334197792 389917517 298477066 721261600 3982258 876812278 919737354 285422018 74638511 801322040 537783340 263239512 183958227 614159471 492093424 178176672 288290215 133886454 428779813 315954401 795841916 358419006 156860639 92917737 446281324 197214137 286541433 227482380 216811351 569674461 610565785 348643373 15080673 2131244 593490985 678400174 250058367 843836983 283859295 628581502 516874089 803029129 893948085 570412823 309137818 850294974 201979890 593533042 732908769 951188092 280623394 530614807 690896842 570843499 96728473 708161558 560151728 474423354 601287920 946322948 832840883 529020329 444082192 372106751 289619638 25298806 640376866 486708652 555182193 707476845 575611292 839974717 572705110 883053153 345280314 347093093 250241448 140758824 341308673 758747491 267747184 294407594 337904443 915173886 941471103 778696655 670290302 867267717 242792 419647110 72941989 957890763 635163538 615930574 14683348 107218736 156504096 754828456 183809146 69488028 157009414 556777500 655807817 681218170 864522488 345946689 949546558 672638916 94864764 741068331 521794460 980845557 576753621 445642240 908134897 289976085 961564438 729634283 405015824 239909299 331890710 984632604 505220887 967827938 919504503 594407631 577399142 932176963 633040287 555765058 513255854 372447483 398089665 931339463 691647203 461237432 810259664 748054185 672863804 875937714 499551635 228838983 351863876 206020776 489433742 704569856 361969090 49380829 193384210 2814017 162931918 908061216 86664760 513468536 39736258 858399689 687544800 148205605 835833924 634509748 191161266 125813702 202449470 996734539 532576799 94065638 437363430 535303289 744987485 938624027 47964089 379803315 422210670 971598329 411042681 592345594 831445019 556575270 518342451 586303701 425930739 65003340 486045499 896668752 384137551 533919007 828702764 306327299 165710926 490855765 118130159 366119944 142222552 626695858 996475565 198966795 349706656 581068800 439562712 199070263 154326301 744194836 353990960 401655620 423378062 357491140 578056121 514523247 661155580 441623798 880754364 896626815 224161849 192894866 865563858 81242815 386723801 266459533 365096658 643755018 665627200 978704605 676448999 669744060 793726868 501843590 181229428 75032765 353183433 615124371 362177078 711270006 921683091 288992791 457645860 48315365 60871283 859053096 521960839 294492291 689084850 722317551 51645668 493371222 696807522 798574481 475407383 10214897 924463192 874765379 858890807 266975075 335226935 777291580 431780265 974841681 63077991 884028354 610322715 548073181 394933268 487759135 359619712 834036665 975628860 829061025 879392791 517127447 990094493 146424231 982043487 960031927 254140092 233735824 451049513 709495777 725464305 944783817 370901895 811294305 398201164 815966657 992341716 20164492 836322994 955867895 515669688 372770116 645468618 920762086 915759132 264846062 433262085 209812769 528268088 347006073 616701595 443558452 696982148 350423897 346641803 840473275 487910853 821372813 763258012 392196697 548974344 734699163 34021475 487506617 662482852 24986256 94609716 179740297 60003120 601984774 716666930 935628422 703492244 733621786 836742213 718520948 53360380 913320307 16866074 264428061 365210331 27832635 93368365 129211472 461912302 946409258 430512061 886333417 829533496 52058498 827309521 682719947 304769542 845916164 774481210 740974302 246195439 300953859 510596753 138868504 813503945 99061843 568112950 743011441 567202239 312692817 570500690 422887146 782801977 46738149 431966675 329027729 558378475 956293244 190037874 830262900 211407316 24506127 855503283 344803246 867714103 175178009 652539609 69400164 848737697 4815521 249584119 453320897 915021285 50428981 586986467 470325232 68866847 583618028 447766078 266010933 297583795 393990247 602829941 192011466 36182609 952866761 608436912 795095805 452207337 4285631 721682159 152984353 704565687 45862272 124973548 138558607 103547202 463120078 753468980 462668713 942588503 99459309 697812247 269743833 51101958 673494697 363428264 343597458 775457198 865985113 996982220 50096463 76034037 430282975 339412266 343032465 574916548 438009501 306100277 613671395 130341457 929937025 492750623 406788310 96575255 957094148 360006893 51774214 320181466 835996453 417523815 270372117 50915496 69357928 954524443 816612779 176369878 670650587 10232418 531122301 99644412 753586196 532016734 104408899 19443202 563979316 428191990 199896769 258886933 547401697 760534746 714826689 321485478 469587524 103328386 819184148 204100722 973544987 886337328 686330773 21499263 69476508 875317228 492357926 590767385 499955348 718440068 356550069 573356496 131304782 658010257 89041710 155988103 321968034 332617845 344854415 110899038 967248109 957389399 628755417 254996162 226592276 189058855 929363223 880126057 437923976 665803677 634129755 236738123 821697343 213799226 243290815 42865585 134289332 905984326 764733541 563820580 795885810 63031248 773123446 778583674 215353475 84834484 297392168 990596047 484432255 503717007 873630387 963459718 356871045 709516235 463668313 644969293 172619706 826400150 641498725 824936983 523489740 429031659 218533672 766816032 581445365 59192198 646037247 251017199 622204140 249710325 713887048 545628236 105071359 161273733 564576624 71704399 159304952 916780877 407136746 20623952 874090540 602672431 691679537 642404346 188520574 57778130 473154243 934628658 508331345 963376298 541857325 677908528 547599507 750536940 53040128 207790963 391025083 478837912 684500184 544676025 138872007 109398905 158639703 98759697 203655484 158902811 978265124 409972945 609890604 677839576 915992310 669058193 60669994 992365266 85782404 458244667 574765142 650356465 806983573 489627895 49650006 108205795 766424300 832364857 639788377 728477218 904808542 815061953 995825681 701299950 596562633 154648718 437232577 915138894 375663117 990120434 639133741 708131860 84839953 65354109 931800482 46809048 602010058 944920846 375328762 78578682 813454387 948643783 851135889 268534178 103433551 286973204 580991052 498519233 661586725 853816749 945955997 410067213 898751688 244819082 346640505 649805065 53506388 923725298 309912154 35867899 561954027 606216815 475469386 630913013 464341429 760838105 767590617 159379151 378174183 777328199 507400728 361482536 889827771 111619360 748428970 37647465 471788656 251341328 904383157 942095555 53868373 765751309 765539045 808619565 923524024 132742224 237081966 803314536 300338934 645942624 16091412 865300733 890256240 979443722 45472282 944061497 857379730 397040735 907001679 125347384 960218828 153729724 206581512 992699608 442049177 928307911 875306535 997775812 183505274 534157929 872638733 616309097 63172094 723160795 519090346 110730752 709672371 186431892 890669431 680668810 232504883 460074846 69349488 519768017 360512545 652578624 657637914 279382370 743662119 167430033 508216199 779043991 607634936 747427565 892610888 940382095 55970129 866415417 426306688 455398962 924072175 40947870 629507028 612392244 872958366 456225941 104484467 850328329 965376819 220600533 610294545 391009523 864937861 715566695 17357546 886755322 637140857 606540434 576597195 442377198 101627381 758256625 945201663 347178600 513089262 764129117 556641626 152162760 439512161 460221175 265542205 440495158 353395018 381688624 503026574 654429346 794772153 913718715 484557498 599112134 47548604 401021072 804613304 658769696 18907506 815253243 730166534 683718136 128557049 213487234 450670253 760068193 998136188 879870973 649915702 750036016 982735406 528528006 718609851 312291336 182435401 746863746 426489817 351659088 957867281 676558494 34795702 280868406 17333196 618081996 524793346 750737081 744745169 700946762 856544499 413259665 702467702 845071772 296505156 983851082 673820705 896102286 963591231 70858550 797334843 427489846 569784751 708627053 216384565 352832238 931476205 375487179 646887307 75303003 601854423 921794301 300105404 945594216 494272977 575565425 820805975 208528970 389931212 969007711 959431147 72757121 461198396 92942535 135066389 634927306 707069985 526187379 95488114 820369464 360590848 61193459 259827123 904946970 749586920 615617949 636672388 650902291 629255022 40539794 38707877 152741630 997071541 893357246 123191507 337442318 117155675 739160524 56529882 895538870 111404436 822317881 880757903 115260339 644118295 946697024 309988296 265774853 936717854 72661999 233945965 823332093 79032946 616396816 694298466 573409068 118542947 963055680 680392861 969810802 347719619 157631966 747207703 113909487 508634865 714689557 578432977 626583315 691095511 669491919 331163095 684269198 125540574 593708998 696950587 196250209 916327427 146173311 289212185 885225677 538265021 66786366 119437710 837395550 157892630 358289685 412526282 845000426 792913821 463694554 817903101 862621326 584481893 121487153 805450336 16714412 257024272 203211646 949665846 591826162 732586946 24377844 405959628 728748115 487287081 365426315 788288624 638327821 286545277 570311170 712513918 151364769 598150011 609884898 779213656 207063261 925632360 892360317 364259434 111831766 193591319 817371624 211902501 617449193 510216153 446511366 473164291 232101046 616177550 544253820 671906439 816031279 322192797 960811455 392076345 655590021 632582388 345721858 188208301 682677555 505725448 153917259 545803647 78483200 926192602 721754716 167310669 184654584 549498094 440011466 971280581 860339564 326720082 214047211 200242583 653897471 568416412 341935071 854919038 269313933 766619375 223610000 854697278 51667273 124426219 757551279 28107679 118258083 990983873 376413870 28455026 644762711 376632869 434187223 270541718 663777389 392083291 235561770 701454824 696270126 26781474 262587003 630618198 180627761 863011535 418092897 893215952 401860945 525270323 147137087 761434963 355901361 832499630 304766776 491791071 222378685 389907750 874890561 946807933 970149420 26436876 939115280 337948736 106172408 10432083 128241191 947512390 79882086 246809723 148878796 274181549 936925699 790468231 24259089 732378017 47738529 867595275 832915148 685604947 644622430 611149335 945063073 41210878 13468575 387407950 83059189 434613223 647837454 816466388 76804089 802882898 970375331 160552024 461835686 559351449 542760084 214942993 940855484 81765390 101499500 18067386 539669698 700247323 516456946 379925917 176890890 269634341 244959295 719664775 315883180 634937503 210875050 959459788 129216904 540362757 307182042 741155151 503605060 520605398 825390268 231609458 520843605 766895779 575132548 775097636 996484849 917666294 247130286 23251166 262853140 793956208 470888959 991354267 784772751 885643439 655751038 750965986 362974953 766770527 213939847 112576196 699445121 252821043 947804339 68707538 535598452 882593251 981331171 954181937 163148714 286365745 865792584 602479488 772718039 887154922 134889301 533292018 734582639 206165215 313502916 820753980 455178418 383676138 22884509 955638428 378243500 536217324 132581161 933593818 828847405 730589394 314874876 713171777 320394696 963651470 460424950 391092139 200727269 91267609 970042169 974597234 798523300 99005042 783450160 919281534 371644412 751438506 263640720 831525185 5336992 46534095 991353686 842757546 570150167 623422204 277568198 695615807 999207585 107653202 637506415 740973056 88835925 617817599 741660446 832266367 869712390 737166131 557105655 773483217 173893209 579378470 100798810 434441109 610843571 27180574 602540786 636393711 166389830 288186466 288266680 234242958 659686409 432553801 672403686 802853803 346325948 60717607 660803839 435766273 309115370 921146211 678767825 549805273 838917600 136472933 298821231 191537406 88763576 304906142 388695604 629924041 414998099 920477581 755786695 664093463 731992663 30579121 327568660 912520270 283775284 279369364 868184399 742786911 241334564 362034120 591947760 701166779 37322024 753160426 813374402 362737508 571252742 536386200 678753231 158150112 769722704 892794243 516737128 887472445 323553375 334502229 811821615 697157137 424811856 177290701 867987714 29382522 927866892 174738860 590331664 53927454 42601799 71302076 501945807 500525868 428919668 170499539 547371256 800417626 36663256 797727687 711212436 900695016 25879928 596984440 499841259 675146137 271084583 4145367 519836048 368254396 859061112 813955794 710896229 269505323 735761363 607259236 238736265 78548286 217267545 329126545 208285035 15806177 219515135 698535521 818165181 261766013 116670843 261651941 688082046 616165388 239298124 289995066 117017329 51711500 83726527 790379395 200441506 210124930 804851937 544987622 281638500 334444285 391267465 698367641 161344855 907082899 870911577 466610645 836312540 835049187 63889595 379834076 663689888 892822289 596281051 702236922 613924248 228549837 97936821 411817599 854087935 52540238 54538502 509652935 807165019 213737041 896062552 977686578 540637558 450795292 759181823 337527597 352245095 27403134 955323405 453887273 807966087 436580557 62825317 437502110 852289149 757743847 444442799 40360210 400767283 621436722 616401754 616832525 314405854 507515806 324473507 631190050 967913724 302106017 107112069 951141356 546982480 549339959 90813641 510330125 736101863 613566951 90712065 620973356 792806675 851576766 855844485 512521982 262254963 441330774 607546741 342600001 979923433 602544076 482606520 864236976 584132000 72440773 449135872 407561240 409314066 566758001 310687428 627945295 241511159 891215234 681255750 60824107 564691283 672896827 644243596 620214926 357853812 922318689 780839272 743653476 805370349 470998080 615280752 809173662 809488282 821901234 718141192 251649082 3199137 431685651 135436887 993433910 919603821 620721480 957651528 424422300 855268275 294670787 523703451 887630466 666704748 329474421 791782349 545134337 536957923 100673760 392898596 208801080 433862557 196858380 285971636 626177876 175056498 932015490 592674387 22201992 383932030 845968732 181177505 627205645 380730150 357889592 137970953 643427365 547321364 56689723 33293750 483890459 421845055 674954260 25604263 780553278 806011104 88821752 677262998 128836846 886868094 197451432 659143185 64319370 378931170 181948007 424960612 857597053 630544679 250313733 654518952 864314681 689892000 430514648 650459326 547811127 588655608 11012798 440123982 240581883 745948953 181384479 284452298 451074830 212351289 396229606 635427174 758662405 40838097 327420300 721350694 31879799 973447078 707946766 641362131 303157766 66173382 907692787 638321400 409847390 197646981 513441353 422615538 712107826 283600511 248051108 512615392 198400571 932614551 373474854 129318059 126252603 25860602 212319348 69217537 530542076 131608349 36526011 481025370 842876242 50767548 231486640 966163706 70557719 332394458 161705110 359183593 114634027 436323269 528047664 895865586 730897784 597183248 607649484 913031345 825540853 665028249 372454723 151592071 90463639 570953856 787754222 150915226 937300578 642314550 801589944 554262492 580002402 316346990 52835343 449387781 412910504 423618085 810599398 54697364 422686286 168103323 424722878 654703826 914059127 752093792 447997597 438289614 70217802 30595400 650031633 327463269 169396478 491438446 584375598 493669170 872140234 208323896 259120023 247683742 476239349 428314961 291090030 838764253 269465280 661118382 277135714 621008610 50445447 446264456 758047149 682717296 588060062 659785064 374587143 287453457 288467306 753119256 325982906 170188051 832246615 556734381 865992853 329445516 610780115 837017474 774824428 352405601 151253849 785023548 526392991 930628407 284557165 148118217 188886036 443552384 226219416 11580249 124091961 828661108 221386863 601995882 114469506 799718931 2996872 525791171 302355185 374926373 677236617 363793774 539729672 86205497 42566424 538824382 331151579 266866856 103330797 417592147 443388410 602753685 882404030 634000908 472243848 899937508 491775310 531939355 68594731 303362888 574815081 318619120 186495245 121005883 200373726 150452809 240909544 704982264 774499210 521657643 659109370 288363147 149112911 417947359 38931975 431728322 799900180 949834492 999439201 68238904 11250128 129545567 830683611 777289293 740770429 550137643 94538195 945285159 597878296 616520651 461848368 55916470 549349040 572201460 667134563 623863476 518943063 199856803 342636895 375948195 470767908 360265244 754310309 532584134 463657020 74110700 269349431 928079155 81822410 318999270 963521190 674321343 636413949 406201894 105921544 279490058 121115411 235572755 767779069 276399996 35823691 570730070 8069544 617194569 694796785 625883620 809430201 582594149 303115607 722000891 508477543 403717778 687544790 631999773 455037295 21712217 135704531 2709015 558184471 986548231 778891702 870258941 314190636 554450873 301041907 504570412 999805192 821184586 498650370 679636296 202401416 931961704 779241062 467283518 609033233 7112575 21030315 809201217 880963217 901908681 102387297 396408526 218686590 162647620 758173219 257607336 904542424 391046845 499825554 319846109 786895399 409930688 590739805 755328448 251046260 500030118 83917105 892743662 533828441 632818065 969771208 224233803 289236722 463882854 738010347 128544259 727497448 295697371 22155868 663575435 25337448 80681568 873601778 586160031 662676006 145638718 179235463 322763585 218478436 960362871 643117050 35707841 174588647 849691868 845958203 213225904 230209021 839245064 307095863 607169516 230168955 903914075 473106665 494550683 715906750 573389050 216217687 435727397 631256241 159400411 330088071 713483329 413527744 569767342 223019917 230253291 406555616 573036026 682476930 574343526 198314897 205452805 19545994 197454145 235255001 554819038 81863377 73589069 916219204 550241120 766545797 578559144 503224810 373279531 649940962 742834613 300919402 484651428 55562026 526637859 141886954 147849724 994209961 204489442 458492953 717976880 719804590 951097652 491827754 739080443 17169303 926265752 682890717 903420134 363428037 348785628 917887610 80271173 305462174 217815316 409318861 796415021 862129818 110901407 148792621 587471996 813977650 219291420 493458041 163888865 764585958 835514749 290993940 39205575 497698117 623131635 364539120 160019814 706936539 875459321 611522437 960345793 845178181 791843415 743311050 164030111 333009444 21410836 583919181 56918929 229429030 968786315 168997399 299913196 918622459 656600146 943824831 571457748 832850524 878618450 175669605 349212467 462012172 399223221 844784814 684796595 383983319 243920367 261479370 460869329 455918222 343052986 880167022 311167947 673069322 153687584 97764569 444222891 246201902 113272427 758362830 427551551 414692326 854506797 698653854 796470561 353970467 464194627 660152355 38877363 279881950 327897298 910282162 583833368 846306074 277038150 134158139 110178373 713267171 29163862 525038884 95764462 256087626 996847354 500439912 283758744 205443432 262709113 731548806 488198794 929909088 825343837 557365889 988745939 777546334 428982906 779791851 79296586 500752786 926593776 679304916 871671442 442123321 153187873 197260256 533342994 108886162 997541303 977294644 383870459 121023721 229307050 531962751 294645058 590410382 651324981 120062196 692341165 716346590 199427802 803293269 654355390 28858428 604451179 767188453 605785290 60962576 631820789 709227124 714236393 325211852 176344281 419311704 309257976 612818668 768892347 737372785 177701792 772906480 639754884 659488032 661175380 81709156 990183018 798426458 789832522 176591836 265296109 791912336 653837700 466757103 814333642 336400068 124732872 936268095 961690901 35535737 135354793 541771896 782061596 648999614 431344763 988391247 352524415 99264812 619190368 281439606 304157728 931095007 823008069 747172280 627726637 678879612 714265556 150145243 872011545 916250932 330852487 799081137 755931553 250464700 391702176 362544406 457014728 496168530 150610726 288573163 257358044 256935359 780278249 643568411 498475888 387238219 672228481 175302551 710631521 872658896 556582224 345695835 131665362 582367919 258222717 244488296 551341107 741352138 761756407 504514249 288831794 200794513 15137656 592429969 574448849 988508667 367238529 812147414 297345105 878082947 642779736 728273857 345519935 655615794 111629839 691206005 91413617 86975127 523353212 525282858 605939968 986956999 824770114 298557464 613328211 214618462 400287177 226326144 903665172 569529225 332656191 515580081 597234488 238190830 920342174 424067319 240859902 98533576 952652455 474911663 135065831 334820565 898619358 590581309 352919233 422168152 453596825 425173512 982654876 145539365 978962669 161231749 153272026 145001101 693519290 204044077 820999967 289138288 490899368 350411394 590222674 286646325 195355179 371910927 256509357 162339274 404918393 584711015 626196135 306033318 383739023 830444577 649557512 498635461 69740091 72431331 380787164 92898223 165913606 306861908 160524662 545356144 946688080 781318697 163041394 283751331 780260918 33102875 200831927 597306466 319515806 435591916 765756012 877862228 679842621 388778087 384682251 411250857 471071110 114790237 491156045 180905493 200612797 744958123 391415863 6381527 740205033 941105712 714012948 770397620 929308378 610823639 425899645 102317566 761751849 766991508 507563078 85439624 260357687 47337824 794425754 720327602 131804457 450363455 133505508 349959010 268045811 481860919 50330070 946799110 915591241 901909852 285075057 413889938 991287473 190367181 771901939 198752905 515914604 254016678 314736363 449556205 426839443 143117845 39242543 367352652 120274422 294884680 69147353 197387712 475384379 547965822 942354252 792356070 541997511 355902712 913638457 504190179 65790156 549335550 669836945 187922532 192366400 308884454 47324046 213862307 474792934 642813446 701691834 458898779 539563334 456305349 59868637 291472853 60495534 219977865 278145549 913961948 794435384 184505543 288404132 113174985 173519556 238457591 516477259 207267960 291601146 655288730 481178600 739254866 731788362 191726400 817728437 542799427 953079021 901188471 195116075 286911683 781349858 618882011 103984142 402182350 461738483 360948493 274736236 877165292 269781167 98720694 80464792 979465258 775775599 961940875 966493742 312003360 171165779 251891780 773205524 425199852 122584384 317876390 244056950 420105778 883323116 376643451 12904902 70915618 460487629 343463057 402929346 102854003 17854754 667072455 771395439 392539491 566012405 114689532 991690006 760766132 422160916 635840029 784745552 593755323 821652249 295352344 789330420 520691784 120011108 174945773 934391853 69185217 533076253 657242778 542250846 471815427 91513653 857909549 291866949 944711299 919129699 208306610 384288726 364828212 185303591 62796363 259894365 522242455 110942667 11213844 443697759 255927727 179846495 47527994 813407924 10550283 75771065 899014897 817409145 711448515 208700538 106263151 84009486 858222708 123884815 114855416 504746533 648968005 67965345 99732694 812954286 3194851 296543020 13486943 478615016 725038980 148317040 437984743 614029652 549487082 382861814 725552596 320828099 976967767 479731981 947707536 801261892 884349083 625804492 640087182 308257335 974888461 641574422 179113543 884610622 106178184 914002835 740003645 660355145 860165495 330423985 297818362 588352135 602566853 775710891 248877584 462245239 224226791 499224446 879238428 143372507 627759326 18563828 756356543 985445058 466493232 160503198 28101024 171126402 603155181 845525973 951244151 240638387 677473703 951362742 599559160 297148219 156183934 443992877 71995626 681970758 6265881 789214950 669305366 482445129 329502116 238520668 204561997 967463169 208368090 668294353 435693163 136581487 803230964 170798408 681388113 680490208 305392316 212820374 39023080 959845612 246398847 941264977 889245735 322897771 225189649 603565786 79623683 87439236 398059988 394879067 710467968 359250083 625463724 414135486 518180011 900409208 153385222 93010370 249054352 812926214 37505500 679364582 606147153 865028492 405476011 716478320 450052107 980898714 660005238 537207666 765922792 765696771 744704209 382644931 725313311 778376160 491232972 303123202 895659749 142833561 21513226 790060957 987587455 303706586 531458222 929347773 915076407 876056470 16962922 159980127 543811935 672205833 783414896 607760705 830975823 212510648 62498433 974718956 207734125 254053233 565072867 951989171 911647779 663897412 360581475 291144616 134478558 544787856 517310297 707248561 581840161 372792314 465599649 933892467 978552166 919264878 367268259 519435104 279435325 983710751 291078477 881065390 75309363 503630473 945348116 518807905 953920486 455592560 62209785 455891262 369298169 72036066 588399230 203350230 162477330 132924981 606834615 439682435 977879528 799311614 293264693 572430179 465755442 672730923 91470361 464739934 323536308 177882847 136721158 586672422 210822201 792703380 634684208 13428787 718126225 609577732 602067273 751905476 117155990 571856436 28806800 918311396 483476268 70098034 203291085 113091425 791988541 263485008 807706698 602013904 489096890 427329195 840088289 967709336 636403102 426582436 420951280 732865247 28196078 31184812 874872156 496246418 842127791 832588406 617394580 329239149 466204151 597237756 525602447 152499695 723523039 203126151 382777801 137494622 155735689 790064287 285401672 406695373 586384161 400407577 627423134 821676053 307734485 697259280 866031838 879948244 57669349 578207213 601068456 432255346 846310287 745892182 849880864 253072931 290946847 344111941 154370297 478182106 286826470 546359282 151291491 274817882 779937855 772685029 577976096 11933997 882542479 167901670 413754999 803841185 856298811 843021324 99529266 980417997 157161401 690132149 630584236 448196499 3623297 85754496 689942209 331331229 528628247 713471581 715798742 566704214 60980484 256477824 493747676 799643644 391926493 880522085 924746569 602678156 190124088 528065743 401958171 763507920 825372858 149053643 747528917 64617047 414579214 258978991 499221640 419971193 45911268 544157203 802426827 810318423 857449462 963833312 372596922 823437017 757168393 608708928 223039743 438655406 163802597 788573862 142928579 54440531 221960028 795205330 200478657 395497730 827775051 459085253 911445555 224366023 743505553 643312589 108046307 419572082 567889434 423795323 779738398 507467416 956587481 904498608 10988985 156252318 101412549 794226317 28709397 655423658 363052771 247559294 299752468 957951660 412695612 594056250 448956968 114374237 885919717 398420156 728682055 915127869 661466868 259294281 615171308 685398162 369130895 101878123 614198818 198951024 852244447 323135991 534181493 509380782 437126933 257333769 956574200 22979820 339073642 163063046 786181454 301281425 172202020 904501915 243771548 807114191 241918095 936560058 761030287 328197788 918023924 989034917 234171743 984426428 23640249 15941337 526833609 332863413 490773559 833205797 775601171 618584533 138207195 273182108 163434250 305801528 568103192 649876382 991154441 179966397 486212458 887997901 628939497 899831564 851381073 642832917 765713172 609365396 569386839 800406952 372739702 138867089 345054991 799392774 343359367 773901312 709638162 989427701 599226691 808535976 145519877 997043322 918019635 892379166 63923345 93447153 148632931 183924919 897778278 694822640 456567145 733098387 117517891 655453534 991352676 197205146 594225892 800726377 237278716 952246912 430050072 7688834 314567261 318727609 543351472 579148390 312046399 408484745 254487430 964621340 87843806 574918899 764818044 812712687 95419138 987194314 639874687 36996462 78379000 43730857 6252925 449155198 858256792 611221228 853680499 420755516 955523392 285351870 409255264 42241818 815690708 87650576 536958035 820381385 85243588 999843735 658972251 501804357 564310281 577320149 471240595 470503376 932555803 786926608 337466653 282898941 226181381 834748252 293824037 462820509 259860817 630776976 580336347 789490889 762393114 589623372 235640186 941709032 646522620 775953145 792959813 822297001 463925535 363376581 910736261 745891067 415006255 564510121 631620236 728346908 809274720 957654629 661480120 889235347 754563190 576645508 713308519 390769193 515520693 56368979 863658500 846507509 357088746 182069741 690260739 892869712 968374636 234841647 381038810 190783968 578536217 725712580 260060435 759137171 653033561 422720796 485845297 477818777 556765974 199238255 484026313 20321395 19300043 34621114 289227637 319079904 585762676 732209611 36466649 904214514 501323926 246315567 705599130 12425208 961965635 827563580 691594353 507548564 398147086 170391831 598145556 318070692 430039574 891609510 175378247 127659353 472750083 749624729 839470036 593940261 129818113 405328489 279595661 117573572 337645510 118078036 442732618 851286845 315815826 396526439 770640112 123739607 805291307 856197228 283004010 644837162 784179933 528605696 983436712 957447444 676647041 461765509 524677542 694338230 821984885 699603996 554340455 332184957 234399388 3830202 264197105 277049373 690294123 370862102 160507225 339274642 446524112 910219699 750628280 53074467 12688209 375251158 511392053 656578648 790686444 156832912 475535347 568286217 869450294 877450170 742512939 391854929 42208580 818895860 539880465 83098003 71000242 713785510 495948012 291330172 980407976 167127041 439664645 500093697 534821845 782884859 131516077 991788638 306058861 331383638 61866049 435547926 837910319 292892314 761048351 333290999 223098977 333552921 340919220 80966933 510133458 135118824 637067123 8907466 777263832 104671466 533334996 993424061 647889746 119697348 910978907 119886553 89333925 102678763 545290899 840759378 250775999 16517266 304148235 880206501 888101145 449524671 120512094 856227479 309877165 903798580 600280371 513684787 77937669 167885958 770913327 394777290 245323053 203872010 701661957 607793665 388109757 917341413 568321904 413599922 670510289 702079480 28145715 263294227 133068049 264978683 200396823 434285201 831475115 11290206 986901744 155517672 79993173 926082922 888956054 316579106 207058765 467297570 405764079 641548937 180104792 514574678 413622239 247089070 639790025 962430369 205953119 508847474 415548016 745315938 997429093 160926198 373434801 786460097 818912755 968639911 802437742 612888749 829106455 356893755 255670806 779055072 438035679 506457003 987232674 574556378 850918758 564612925 879501452 438621925 629329363 751534204 23539679 680763916 390955338 172093503 244917540 968198188 23907328 639334816 474833783 193733092 871619633 838651141 110310513 271125405 934807323 501357849 15692602 979170949 929194508 161627600 830815619 987745686 281483605 377577831 174998142 466831505 732675921 623053667 367171564 592763642 656324447 445113740 219860757 93161254 439087853 862174460 305338819 804535596 583917162 801234701 316712781 118171117 780453461 414736480 153134482 394867215 614604845 645466598 122506232 632474881 485188475 720934866 886144112 131525632 3220181 89683616 232023149 11162376 750600913 131616789 777734126 77263846 915264788 805404216 295933563 469891877 7632713 460342372 493575710 702528801 180779551 966133813 77365362 429099257 632944210 917578379 775064978 549919635 28692902 949508754 803353894 238929059 10032611 740529858 232545116 484564382 659748316 138354135 963919853 898833095 439067754 324408275 674256656 566193189 944418163 813317891 606805137 165310088 898770653 899631866 663990972 97370249 572097434 546020248 618728809 647705993 98878633 385674751 489888501 439571116 96765448 446708122 3266887 591059945 88970178 34019615 227431626 379638512 976450796 514447241 474685307 212262987 158316188 443616028 686196691 711843896 803952377 693537384 721081304 321653200 927117865 157259069 128272410 59096551 72112478 266062264 88203440 569644572 197753815 953210689 413229111 322254810 962966994 741241215 561850071 872769363 377792924 467030887 15579962 694602873 173569157 393376824 749889434 171598864 252854249 346008180 364410548 87827618 11740199 871513322 320923343 64997245 418150829 222230445 270454456 501280696 528933357 166041879 990502089 252014902 52520542 820814030 804514266 959165343 563189639 690117823 905676885 615437153 977129964 768431644 830221096 59576500 24504102 715049572 91007178 544431773 560561354 185984601 762902072 662743007 993783679 925324040 862810617 436990477 879237099 551344839 689847577 111326335 446719938 443007536 846772272 955507029 816283327 268838185 296516701 136747124 240922528 417149915 158900295 983986834 854587703 49329597 998545689 861045796 763134801 321484941 165911435 638535789 928703943 324574026 474938586 943343728 151686526 117544772 714645968 339524610 307027808 176620302 117671352 18314424 473280352 602450823 474666344 101256950 796945270 160812751 817259585 524820193 214245541 964706133 336091430 334085995 395007992 481738955 49988489 922380618 172245378 969680176 523658331 654345217 744126811 129089991 212674335 616024791 863849126 684870172 205495513 197995484 888614542 609638146 950735640 333433065 261932871 732112793 890597618 354582685 73258759 664152642 721029637 630222179 429674771 39207851 432649592 86021222 723191986 396350406 341794040 647755428 708990012 147768528 615741373 408333275 340814856 423860817 394924421 651713938 790049657 418185233 885323667 525147674 679823350 450300708 846611896 488211852 831686132 770652392 467180877 900639944 981333999 55220227 997718059 463014518 442234214 922318684 868038074 344275975 737413606 83827500 548127721 880409267 914781184 827561966 510946863 263373432 586436684 431478119 207381641 847054625 294754928 236610976 622934652 194470716 875217940 551497712 287440410 694498596 565555693 824867316 95810807 858657785 649349297 239964303 287229230 262940833 77381669 956118253 205292653 648775885 547860499 930853249 536038619 588299765 80713034 951097097 425202225 693337179 123862186 731233673 197302958 559283205 753826834 183665998 356226072 573777348 157668717 247037419 316694205 82623536 761776557 735723324 526984304 357524141 602438602 657511015 186463124 392816735 981468106 715501270 94701071 726134069 361291702 131935553 732828237 452115691 877370016 752911519 57379396 363198464 645282208 299783992 387065973 97668797 831989980 252596631 819228899 648856625 775549054 666056080 250954782 112287027 694497205 195504961 888717373 969335140 460433341 333497868 142868956 975497264 304751832 651244959 382288675 791667138 212052307 915832044 424129214 120664598 239283324 838649651 540371688 424271341 333796272 12207348 506991706 77563848 484026704 643748094 475242847 476739329 366521798 982037348 507941568 621232809 171904647 66811010 218787033 46190242 701530889 20773374 403814530 430540951 180442576 403113411 595230758 459421430 484867433 286594310 389746866 588890103 765781346 863177538 645229724 872712347 809694551 660692797 540054754 551521706 312697835 457339905 710294027 160495284 671984585 646768611 468030757 483169555 78399134 396038528 114815684 723475172 879442988 965295293 170462218 135278098 497206577 54835141 191043482 373801292 703096439 100249610 61919911 782871821 346011086 42116942 942233569 96042638 969173271 485723281 224066185 546228961 755832111 23139614 847610726 32251343 270478082 208206735 100440006 228653809 731761792 34877114 272538240 54812331 388302248 734406345 33406193 316075298 620457337 185110562 749535232 200048456 967173885 366540924 882764057 308744149 127747653 540749782 205098805 441645641 361770350 206815090 874781651 199648235 728670107 572149979 182300148 754518221 374359029 546559719 709030188 43436229 387052716 572452528 129861262 557963894 917806589 73997983 529701306 419306055 383893800 982771548 55066068 875930985 629271931 354847453 518885007 187439315 574456644 803557722 243323674 672910916 930552033 901388894 941423930 950262600 868193200 117053362 265184307 709303854 541232926 321250924 154449872 427621132 453073310 336760292 503658861 849338564 49419691 38397635 779457762 318939136 89189059 798232563 847420315 982161965 411166835 395480998 802731394 924180613 772753739 913000541 105437713 337661703 156339688 5383129 887917890 695306621 6761455 642418216 805809313 284447348 141014787 265127580 541810229 136773192 394279386 758850261 821641114 67265048 23052078 912922546 988643052 451287756 568943811 89944164 242716112 596073492 732100705 897002847 866754681 830147434 80639707 180265306 300326039 894686477 560787722 263540321 588744813 46288131 405279442 577203384 908079551 704698401 217992222 204521979 192432347 197802744 419686366 301957632 83975064 219950321 160304909 279264240 29324375 41911598 157136300 913466676 137477368 548443555 353317832 766693506 491814894 906074119 423796851 524245719 883873583 231909590 290801861 640529522 138762039 720428127 598622947 443231719 953065998 28840878 978087155 162427653 841003584 220973982 834898987 435823082 889945064 227039182 52379589 934142457 442026913 528689060 71762945 427732193 197502351 878267733 657724715 517360531 193138788 151864533 693426837 340689229 935473751 422021351 687894425 738537619 790790176 705804305 657156249 127624241 273944588 627946402 579503617 786500667 838759145 377513657 239610688 247023887 273044232 67502383 424400338 616039503 944560970 579611312 82789435 557962217 361351703 341757866 333590274 769148687 470196828 480317017 265830845 953478977 518143118 943287738 506839042 660190015 435820460 411431573 431948408 773520407 350341181 886911612 641077701 965967902 948372814 851437254 559058845 723056112 476350328 681378197 472179642 595129201 334964183 305859279 378046686 97889485 89539345 804736294 445097941 864941945 470545491 56865042 935955054 771216689 945034839 22989778 233741446 557809398 238990424 553120367 928995073 99826714 900247838 918045880 172743362 155961646 370281975 533621833 253574594 761568014 817743288 547926910 876283898 286419424 270576067 290760834 139916395 383838735 760453880 342807110 726181406 282682703 619643595 183176062 749394728 929536925 986587182 366827438 361933730 92296253 20375205 914579996 201608880 143081146 588099887 634397403 524961144 885973994 943743838 457681857 389201969 296548587 775930443 266797934 118597906 114179100 191181199 860994636 690512223 649120301 155770962 673801610 749605474 502058257 66548803 127410720 375243885 529030406 60834456 906399182 634729944 455717775 31668497 700581920 164832776 358168695 533670128 826091872 606619753 805793490 997191177 953196461 817121641 395277313 913790892 747207136 858254213 201283235 256864698 486448808 499519037 884005287 859387293 776468850 841749789 404769600 412262717 296144759 908860599 325759979 608374290 175780020 437924773 269492588 85689375 770505974 559245706 528004558 741747938 290010829 845627921 730554472 316079729 119861901 624209384 24423636 966526046 999099225 747753932 765447672 993644744 131877914 998874498 183206655 841361750 324159102 511124689 701913693 5684278 998350849 983507083 390412493 262477596 839967967 722861963 14919766 54665291 372330274 634595764 765720900 340786053 115238298 778604783 20536618 594341658 821937888 62062641 840597989 205195488 789630038 456070254 940241561 328969526 225607968 990397872 414822067 25555457 284200753 555074557 814845668 112146353 853541953 663493222 607782444 124639801 640308429 751758857 814759119 278136856 202333475 303750919 965195607 172247896 98049614 589355912 172734360 243452036 72909099 68086977 372541875 931920308 648574806 77716458 957076231 447345029 281440826 361055559 298454848 738005533 441074694 246047009 991911769 949046827 765748402 507614925 195218566 964816869 4281088 547444640 670953296 842207752 552162679 857345536 160852101 639389917 922804071 659399768 391688755 620598575 418908648 524134936 132253371 206169944 941788381 954891964 728221633 547434035 178008553 759950023 744544559 519824425 383881089 638366398 750007353 285538852 445253083 689481273 965886047 867878048 71377400 88801486 747539040 317949079 808727200 414204709 459668815 856417424 57527140 445093858 363051387 812759963 303178651 619698874 698648448 780157004 386094950 997059432 152312135 257492418 211831468 283459244 998765303 947362469 931872288 937384788 480941063 815924768 29742649 972349230 253378611 251847404 889809460 873207318 808439423 257907782 298767647 799909616 370852918 348411125 427096260 450277028 702673903 630779463 100918465 346771237 618691203 111672593 286667124 822777964 541594648 620539058 553529093 173313917 836751132 166709264 741980259 291636066 701960512 311004317 45346889 88885804 154779778 475192648 966044725 570244088 769735207 988737942 160538481 686572517 58424250 768441995 946072074 13017374 759410702 732980658 173095901 565676503 110228547 413960231 57940870 247986248 579746489 101852034 783246193 831349174 706369054 591226606 942570187 95709544 623839847 472949273 620737167 667801011 928605137 525454391 680547963 153874161 697265628 414107911 609605655 390061696 649800794 199482833 203934645 506325456 265165915 424308831 760590189 420365651 261368636 716752908 772531231 720409471 1295269 433433266 85654130 316624342 39048829 506577853 601149913 231633384 480971259 392163095 35975049 791353923 985691803 485829684 705648514 106032003 670436383 159270169 227507091 168557382 817994903 99594054 345602627 556055869 688466773 624178381 478194673 640469525 767692276 894171459 892142522 685212811 486171996 20406981 285820551 920870497 778020535 99647738 70687752 179828576 318485626 226186258 16176566 592373338 916239201 125272514 552062416 749757994 127508332 464346696 709031008 843807412 922380017 16025964 749756982 184380897 563936122 317926266 870109673 521539745 957787368 38185544 495909595 981131760 410546273 257927222 56261169 445689810 465473359 23520555 564888543 913691728 62909030 335094161 532532635 523440763 543076003 823344482 488090596 363299183 321465416 395176221 351833861 316941643 988901860 289045186 427879439 172297276 244768077 946775272 362212311 584715126 322239642 96647584 312919550 636391984 592523570 686291848 718713326 757802157 901573315 575255753 534637529 307022648 969745983 990528527 554240433 541720354 826958560 231730579 4800570 671136713 584850225 481415182 142368767 349395850 588279 795275723 631160906 956066002 773046091 636003735 257740857 816397586 858854279 935217097 469072297 82845126 970677841 176182588 173677123 267201904 143018387 29431896 323729526 21694616 253944451 721977870 860686972 440519381 520935580 67422419 866004823 219296189 243899045 676100512 325069259 919945201 539997607 594285827 731020650 421760031 773811190 475567622 760979855 179062776 340437040 245642049 98373719 14266166 780902458 326025679 12838315 349849756 320837184 440233561 516074041 493853426 706185140 302432270 372151934 911488526 994306133 914939299 41634743 7080391 116586277 50990164 860953837 685053697 638649713 739093740 86337008 347336869 322367439 419545270 662295128 769595558 672953623 679098504 833724552 178373375 85199730 377871811 26493604 958384304 239154505 501665098 440794016 510051013 436051027 859329679 341930547 667074385 687801481 621496451 350666203 310721645 313167666 869717672 864254946 767061304 707797464 813413380 544027226 830535396 439447890 776754726 570926873 272861084 869849787 143449122 134677695 676204447 688209524 561417111 568145335 125266988 62209839 99240364 328398637 726139537 725425372 497459727 578582556 205358874 298519483 866017268 552387141 46641704 737237325 330447132 100187439 732165402 749721436 72659663 413844776 138888538 510178051 558540503 330664525 135990620 412336025 975746699 628483963 534216089 696124869 883353548 740464987 330359699 354201715 804432892 16839516 282568914 783711700 850101519 917340346 827957742 762663528 676043894 498804594 804212094 275248114 900237362 65739084 110135075 258375294 822413256 272345306 679352971 398415201 460796745 692831348 314526307 434590260 551029318 200740666 384486763 863486945 639208673 739686933 735596895 237861777 90728128 708781235 831875086 109825974 963137041 412231821 597666891 742975763 386613897 459121125 819149546 465387428 779298921 722773185 383455700 469844410 477198195 666549235 408130290 333016811 241880057 111898641 48692019 80142607 544314832 113153663 504121237 730872138 412691287 472725603 855062037 910641932 190824562 126886826 704748227 858439430 694671250 966269460 546505903 170397241 657614508 688232475 507607282 750362339 591196734 292270600 204544433 463948692 279371343 275520751 866574098 76406816 803161450 867699619 864722508 620800674 168494508 856189895 737699991 992775296 940357036 281508548 725507637 64498020 84615062 678141128 28786542 581910085 469252629 115633103 962976666 840842330 581515102 183244951 486884881 876027950 20951093 215503269 65207603 434902155 189193947 957818447 96592746 627962243 998092831 642897833 173390381 913337717 798191190 75807125 857258225 595245569 767166053 198229946 298921019 575033624 602534571 484381325 632467605 294914028 629291544 358247486 178878353 87639034 201165090 502370261 300551881 201412102 903255244 908225046 267709662 841117469 453090711 140257939 544888957 293163410 853464209 453281443 463254871 454265856 546303061 525522534 942115108 664465488 293143034 842640326 942656683 287047337 835657263 243234163 876466354 439660675 217632283 650529253 217542415 988438934 877848696 450027609 281264024 50029292 762047618 24344028 88649011 586374604 492483330 596889660 385415366 229086927 546288964 195105554 606615112 309854413 747156512 576164541 760828336 542009322 159574771 725501798 741623810 586184854 609058467 48651262 95108681 907109508 378947743 82765116 321212565 907764655 668377564 96695970 194546433 587864413 587192795 636129142 282721966 292255000 183726497 687131082 316047560 109515702 166793912 168333684 602642306 551729747 775296575 54349593 299879188 705622354 473414091 544780059 429572290 754219873 762018953 223494831 437965270 653610099 443922979 175788746 868639907 842850501 474999762 193768750 568914816 956540891 874497365 380390756 977238483 826110849 187132908 524608956 791548677 543902411 425944430 519426125 836018565 164918038 106523946 3518454 278181842 34324743 665032964 662056292 278202221 630197127 761204830 339255811 563476958 812497103 497581352 780529933 152860090 407268695 700003032 693849728 923568026 411626725 713040237 839644712 795946785 73942916 924410475 406323858 559032822 81129613 185225699 218948633 747766481 591899030 457259882 74071002 732120680 57028487 623135516 155585216 312873087 755718027 728700069 447541885 187974878 50407956 886471215 380716674 647363675 266260964 597468526 495219990 257290189 231631611 154800806 385794110 911442711 241186215 611213723 799497934 280794147 248533882 37638297 391656282 722986469 524044370 977250680 691455298 301988694 921167699 541347991 79448499 678056057 836013544 598693853 51593881 241823575 408630472 346800565 193381807 735671554 30873838 16477718 60662641 365634199 361894558 332115328 932194861 430203956 432780901 181241336 833116909 80933382 465287700 466577934 784620687 345595713 825610699 266302937 678623920 848038172 408994029 543650290 615141560 95289819 375748388 464312963 607133914 356063687 349658474 499573306 441438989 306230323 192846583 133692749 874493968 829380217 790885966 105703034 748098669 815900922 772850751 381165064 272727411 567089189 812950746 654901958 288346168 872100199 962427008 818272519 473212064 844485690 276221139 919943084 650414164 917096230 275903 133211419 183232448 229437617 839011446 409877568 935670049 914028653 997658233 697006997 261458292 952667124 873520778 295714326 940471169 903529450 88440757 263573576 383767771 638274298 747007054 877017916 873089239 287150805 546835699 118252936 899736983 126342963 367736197 943398984 71562500 905510616 240298035 855229475 204515789 235887249 740365425 401709128 446717034 832872492 982287864 137177454 440606236 361586569 557717459 506613457 838168554 112726402 957780297 491896634 124511142 704902407 77411564 774367733 932230890 300085258 307225505 476428761 176780817 775714946 488939395 485968963 382320967 836768116 403890948 367614492 289777020 789454316 918460887 348786896 754374502 247127545 355968503 321844055 526184073 40843189 789051559 507969837 922097704 731262531 492549495 195212635 620419161 537562830 402616635 819818860 216470769 97985417 773677834 583531130 640988305 625496747 279208783 782393889 656616864 438614906 921860787 713945476 766112593 724594494 654434601 887391320 543238808 657707594 808194798 917559249 192534840 474968825 766553481 112680363 793302204 150333611 997165251 279197996 198304110 328266445 837059506 734741029 949128556 280729039 195047347 526685674 802451349 516573228 463179110 569368157 915215501 186914151 27849660 87509214 468369352 870185736 377826023 727380834 900342398 779468711 790060901 482457435 363451054 142362583 96964854 794869446 229652003 595508028 952005036 44713263 87866218 466030469 467164377 308348575 347260124 247396190 336425495 314741932 467608986 524005254 506060875 349107579 211029646 898281917 875620514 31051434 490389860 717278156 803511186 297071210 361433497 568145545 712132567 20204149 308229481 207275725 650746738 8302852 584195806 854311030 650717361 297795041 417579209 491445108 108955945 749387096 620354498 281064119 136786102 533144897 206822696 919881017 903195772 56070137 325451813 433302266 147747815 960465764 346323111 115731977 831527851 281435637 37708905 829422454 204696773 931960225 729038825 925248091 286069624 175189219 725246319 165953241 385290323 16443845 167512077 560721693 640544553 23995091 341706906 121995351 973753874 469474851 806888633 762253251 54408824 742639703 191426511 74917280 894504455 144624528 871612940 613242430 404724142 988586113 921528682 105164523 967945904 18672987 48894122 912089857 666545036 264916193 620627027 318929124 282544912 583245657 512015285 370133244 95377234 586442637 453140969 464623296 383627437 149145558 418038478 7733669 445997251 206682900 602720269 961394737 720436611 508352940 4369430 857629419 490811425 968426634 315647779 561773926 891522071 865081383 709019698 12723009 681829420 591819648 289807885 161693462 418675564 550688541 24714307 461281686 471065641 628389384 579142186 961894001 475890947 980350682 447530473 651200865 955348952 964668596 44046689 697926953 754918108 872582200 356745030 239248529 696878975 77523094 127767569 7201132 441296251 742591108 844913406 209186712 439199704 773859136 716877083 747574258 26644963 673714064 982031922 493226345 732258860 899114181 61706211 941284843 452279700 619281328 164030087 416278900 30806076 609864629 273806921 625679624 329243793 907066804 283741721 792837038 612423241 929050402 218427057 468651899 643345244 751033073 896133519 827241608 971592978 901288608 234717693 199162359 50028790 465038646 984272393 729745650 982222300 864394817 783953804 816199086 462370530 775627989 363130152 855881313 966157418 36741781 511827781 495768145 663648034 331373730 739010320 929415876 354221822 297199790 246325126 529285650 860595256 231020014 140770404 96687248 259308120 885196321 467218227 882463140 782451494 257831050 133501507 360554678 872763323 266415357 105563053 607052344 811110766 877727946 104286288 543133351 442365671 127956 520771286 529198467 998765331 197212032 750710447 667747925 450208289 66682298 37299985 507907504 902441106 590268413 746312189 157896242 19385898 305601088 410950463 697301881 948100851 952953361 453673315 460122417 308505155 944883066 674333889 819972109 226599350 229118480 630634108 842303684 901475889 645123575 18931066 257774874 740915933 957754574 667174254 986300636 593454128 279523017 588432335 203606744 255757032 611401114 42906842 370847213 986745609 549996930 500896924 65581046 952186589 68700744 596067301 426381028 974304249 393923126 203726666 596982696 705752123 921605417 698871852 959021371 237198532 50305400 735415733 135698845 513113349 863559437 3667925 716054237 514880429 170692183 458113090 325846025 653670331 599731019 313905535 161990718 553822069 341762149 491171282 532335006 553514851 758289839 91596364 320369747 280883546 995386294 415206854 416960908 52330362 472409743 971520481 561464457 310410535 797693147 746742787 861957512 988813320 139458236 537424990 880413909 509168916 976903397 988292329 500309443 883569034 61077896 551492709 765323177 298736106 898904936 729853786 133869 403269893 51518150 136697113 537265655 162497258 744449652 61930168 193368632 204086777 458838215 302504475 869740846 28715476 42623133 973100775 569806682 807353960 719127644 356252556 890516806 526506730 813463797 305569861 207585922 60289239 879678169 465375249 176819372 530653423 23168266 668810166 573272165 37275715 131687438 133073608 332809301 942111013 443760373 505323678 378361391 518622259 324136014 431910744 58043822 52976974 666736961 931033822 829472151 295000229 424990316 121383391 942383793 189015980 660816130 76139222 938760396 121698846 27015099 669566209 275445704 713401089 195510734 501278056 470710917 786566559 275651590 725759454 206012394 208632460 568854451 146711034 237377516 892311208 211340201 600294427 24345734 874753557 516561221 292081256 567385275 958268222 681698158 486096343 693707154 682428378 773196690 1296667 206399774 261553122 486669482 268958132 158419324 391653021 299447859 410476270 310457805 996832150 843304240 63576281 524999480 422656417 580679474 213001545 615483890 605079514 560911697 144909025 1661496 64564905 98229032 144943627 961317702 488505524 264879582 730357235 211773037 580595189 64079652 746229140 807710715 915596963 676601389 187699375 973898312 506092614 894276791 836289738 283718844 361104043 145324043 903473206 819337406 353503971 364997621 771337485 480437955 870483531 913575371 563241516 998129984 70041481 572925804 215472190 416856508 174762375 436738625 287893171 528506816 380436091 714905141 386434242 556240348 445704929 532781758 945912429 433984686 547669117 488301021 684714873 666462166 939130714 223554324 575399032 298310399 286065359 720877685 941686212 549215451 199007350 828526485 968537213 277497379 282196276 523913362 886588297 662609050 956573750 452555538 161800344 779427851 725351407 770518854 892066084 875533640 294689563 30002913 258317679 616401196 824558527 602947105 693960573 466899864 339433512 319846094 883909664 269779063 575330792 711494455 862398451 603001530 438660319 384659249 584488528 510875484 914914860 161970968 379108967 328663137 567470400 648084182 70791714 488447439 347223759 649371352 899180348 800194236 818409937 807243029 679284277 310562883 185266319 905284102 364608340 906038403 778732944 953798586 643661228 361094566 394966190 643139257 624402450 170958050 458848771 391346971 999802410 296388975 100465907 181023102 673137496 790507407 598924072 514898954 545117647 267519373 454636442 426533739 140740486 520452792 855432581 18088919 862803777 858417777 196097386 242014222 646287745 533352724 403822616 744428117 892554140 916869393 842614690 915575677 994515624 617143762 511548004 347937750 94042759 760163034 799117316 285042245 206521054 16851623 42760813 997787436 102939682 218929601 841806549 605106557 949389958 372951999 316006068 166095787 707984654 418290744 192983762 673463477 156159619 138490320 252466746 116119842 662560369 438924592 676421952 861232126 960661555 633249293 962488450 394212323 870969321 516162077 565034466 313036780 517843322 655793700 34531726 231447234 255872920 378875118 76733177 190127504 399248060 773404748 200063968 684962576 956788771 777372697 420677958 896549500 115988696 57977652 572261496 570413214 699336363 876493963 141939724 624796355 355765555 355643406 544761052 811612608 515160270 689293240 357367566 265510132 514615723 529814157 297397517 756538182 817027252 417114517 802050186 438004772 995463845 210391779 241313673 743765637 992725245 327241360 225285961 557170148 1780482 946218944 144283477 463369035 709393096 173737884 337749637 313944646 381883428 219084376 479867890 312349677 375094202 632111151 261848069 869640156 135583727 383293022 376017767 586878781 913462260 349906996 671002634 412792760 100435138 816156160 281077806 747568267 375322136 224038432 480009044 975670125 649559936 121366516 331703628 486462888 477723979 511745768 832371499 627651851 154531212 113817452 580697159 621085419 49898793 260345339 106056521 27854118 769548488 619750935 257292060 155250979 296353753 182423370 139705333 553630927 979200916 210657833 591808591 572920737 411636730 163032907 619783151 908458902 26750677 656894035 622468834 252919862 509977265 895213805 751489146 87373712 76183528 236273607 591606870 213269817 702045085 987750817 989986649 99472206 897472180 783905848 616299695 581554041 314284771 149242202 723693773 190968291 118093723 503521752 364521069 637316166 789255969 311614605 669005718 123734240 95707003 688302937 127145106 509247862 797258109 64835110 152612088 884389975 442980794 249179626 192871074 217397081 994353044 662733214 838935735 707289 291379255 94056770 748577438 665923774 101669775 538755298 17366289 435464057 410837334 484893072 841275144 95526653 716653067 242638439 922461897 441498059 495602169 603224455 4107489 613118436 667408938 602496797 492240675 533102556 705523071 442906201 351926700 934309831 713335187 534212724 747287007 977714243 566970828 32594357 214074219 220151158 650574433 880324194 593809216 193768464 183738180 972060625 380492959 59689541 739069754 536918361 334915081 440947413 887441096 249597278 844678731 972971012 570899777 736103496 3540347 867234467 156030393 952817548 573966321 428805894 814656019 825498277 170423636 45239823 80914424 106455569 278023059 279834655 273637847 992856669 192945119 787175974 265178601 237420827 19707315 133406365 857784622 167575525 62215125 700560511 25813101 464419676 920575314 546981972 423514424 242929711 101129341 861834026 909851366 882342922 846132211 907349910 537881497 642911915 408329113 319480505 845322041 951366357 88478104 114337078 502935666 279529806 839503719 76747327 280168387 324087789 373947586 95234181 333944934 481584265 640893612 443997514 851732838 182511108 438265973 901842261 550134420 455400780 377926316 171206642 102992266 899378257 728440881 271403513 472139426 667154699 785450791 76793029 974923274 167611521 695070713 111100224 131673779 636548537 144761948 622808279 998235983 426542790 195475534 979304574 640016227 664573380 208697618 491863478 526116405 875773396 295011893 921721735 417289687 384365602 371801737 270606202 663630368 270754014 655590189 635842216 478949298 124308549 266855043 258621617 848577269 608046484 546233654 113439416 677110550 759031834 762277697 950776942 879264529 544894504 942558937 760053001 653478562 882040344 313283461 526782533 432244057 640864078 814705936 178583400 349758845 343163696 662728849 563900483 556957485 778324020 680195938 159796266 309540678 46048468 709506091 616336126 190682224 814077587 648662480 505815587 28135454 217590007 499484814 828154246 921826694 945094293 112023772 35710114 637514921 884857863 195127939 564567408 128783182 719797999 355057032 269358970 890443784 134162681 327011143 425846477 260219692 40869077 683333463 707547389 447229916 49612095 595025567 969125418 390580995 609185270 685487688 172577788 150437963 366195915 613758666 122411168 906521904 494396552 103614174 728094156 225599474 290306060 174993548 50587582 474880666 326411064 450482207 387220540 566058999 200382456 396297000 468536727 937032867 723646781 228002694 707721121 145967098 710716417 780527711 378961593 923508009 650270788 854274332 72866504 63698461 98187798 414529650 569385019 357902992 851326596 164454751 538031367 611293954 816677547 786209316 309850540 528958906 837349546 490706256 637667889 420850123 301663920 642306742 203735329 539746314 429141485 369880181 844309651 679765530 521271195 595017197 936050470 271092578 178185725 143975116 367174914 226182675 964135771 719904262 166874325 246080546 549856520 725853401 177843411 452382805 945136225 773158854 784962491 105849135 608257991 55573407 391654354 299027971 928390050 603806321 851057131 756574697 125647206 309826716 408157270 522841281 52300431 448631750 115790327 201600560 69522330 526643160 424293167 173282477 948045590 186756615 535982321 867309163 679891606 104629712 63876527 192337005 474009520 553173496 593776234 96815993 156968715 309223816 50016166 699948832 416958794 383384793 679729270 692733115 348666920 158212226 923831146 951868523 803201881 728082541 64666023 430115349 967969698 871634112 369098189 310050412 163996620 688670964 344837899 387698152 172403629 829641925 768022043 233809353 501221657 894445877 898132024 484957975 995640052 550038417 307107372 730936225 282163756 142620268 164458304 237910274 240518322 131281573 204633169 130602905 123309180 86209630 465801908 30446988 904063122 108080134 437185881 551865807 523891707 965720399 229747623 822326553 980360906 395567669 463211672 889196776 308198169 988945917 174956968 456124040 576837131 911214132 876952544 719327239 73232073 780478381 150335183 506931516 389869445 840023940 668821380 876055755 252183674 478127646 453954470 783776536 969160427 578396201 971890263 105806166 883324450 13572501 26997060 51396734 931820656 448725667 723513254 565298766 141341744 638928594 788975931 862656079 335665351 460592116 872598855 929960144 777620379 168155928 176521115 807442413 62376734 27384222 152375178 552085123 519574479 650851371 13760246 390495035 494999853 692159910 602059077 730486661 449006784 611525705 645801057 815299737 651424032 948796556 349565381 993164918 47735010 742927924 657925995 997429994 794632109 374563152 475916509 993451649 775581479 15148339 302502438 581015441 959767555 942372726 457538272 455630654 406798588 748287747 583191849 779683950 664411607 429360896 397853859 409864916 47265881 801105896 211501438 613277159 954334039 997918834 839060851 903271911 816284588 318345893 215131836 444800728 916429626 514238666 457656099 396500882 744403946 308414072 991585012 641081002 411314350 241195403 316214281 500309375 698499203 302192424 422567098 931089720 984336745 281716408 856605936 370833867 127431529 587946741 524551964 590919915 448043416 350097621 131728177 363824921 151186702 169440926 353118126 5273759 838782448 721985758 443208858 257854603 573814887 945233259 515920514 783534518 863557026 450854492 165693310 111244739 80620768 676606232 546730028 173441046 705506403 758933324 840470704 948058853 401234545 605393388 257055675 172482592 675028064 569025587 878857601 98321551 495579528 119912102 646507201 867911863 306796110 86061584 366386627 369381862 267206938 802357896 851163986 22542136 257671520 748536424 234677191 151796365 483199641 107900759 63933950 557194122 914634055 700925244 412540513 631696546 969711090 760030545 170390488 334346764 84569139 702297871 71678177 753325258 544546204 530257210 505626741 563358114 88117463 326639328 603514650 983202342 560567433 430360661 161953248 365066670 853942372 256506418 17394527 105824859 399941161 400499296 710894770 933816850 795313809 679520523 453924481 331134341 368766573 353553315 101751288 474444078 147054987 984865767 607357393 203978826 457744328 322136282 572364104 636686309 366119431 142670283 346758435 30504908 272934702 342705485 45141680 44547994 528678194 492771386 208995528 965257644 970688017 457440953 758745799 455063598 409563332 664392501 359156113 963554828 666841183 628879200 372807832 885789698 184210670 344545595 468148947 694360974 554403469 252595721 128958396 160232443 613328479 745878354 869883996 731819351 263977357 508251632 265674817 16143736 75027018 962448124 242931841 391265539 297984721 384041690 8132795 106626655 978923106 633875513 964809747 799015608 453234249 922145035 114896952 807899916 43208408 666168204 299442789 980855576 822428266 641070914 675849297 847523942 176528990 878897142 401141063 811935045 155352101 771991745 610845971 708928973 972334633 781382909 223338762 314392798 592810729 799425355 226976527 895874339 115228646 150516892 642923141 516318728 421150381 197655843 768058715 327228618 298685898 395616602 765769478 174260071 617295838 292559112 2706308 364266404 837766792 918998073 146776673 302979607 377773938 618690623 845205923 661842196 228692817 357897910 902606564 33356222 630962907 251721350 824993348 734077693 713619925 772710107 301916519 98861182 769101833 551820327 666550909 370458044 546030150 456287524 720910136 102187769 508921709 105355739 182368218 514575417 121942875 284317332 166930987 79024718 93331451 640050409 55337077 867944914 46630976 82688177 155495568 374983714 827373348 517545232 169715419 694676586 271029930 898719607 808740154 252368025 274473180 676684436 968151581 95453797 651597515 790751595 4979578 890853967 180627347 813120056 994698193 300678816 16597845 10914190 967997220 928524906 581207098 301361983 353478662 767980674 257724280 294103908 405936778 376035469 782870086 286556519 673202001 677360621 990076649 309981422 858125949 169075415 701836201 874235635 868772033 173765951 528365529 417920174 670888526 339528683 947281107 442868388 130518504 797611868 299706617 907713445 597550545 478787818 521856181 328217024 464547545 554583464 59700603 408238934 969479511 389802873 79209667 643821065 968241702 723574787 777864464 593899458 518251952 524235193 160050414 589577147 853221090 81280718 586223085 815924589 784439346 28992584 103495081 547558300 142135454 45100782 59392707 900354903 588646573 648352334 780742119 640978160 247768940 76345795 877064387 891125507 312273267 610036075 874039574 32766838 392191455 862594863 821431712 987870322 838784341 53516222 268331306 746694001 717011207 300268437 615188874 897942568 279886759 588423148 531256984 394721698 52201591 413663701 111213878 451596071 583194683 283135769 372828238 633924429 995374145 453563731 921347028 681396463 133193056 325511392 878812611 416971824 295733494 107345903 422633240 381738369 204622314 588672875 423859939 399118994 110583723 212020236 368256305 845194083 370169133 244042070 317487137 7129394 710406126 971949710 419347666 322139539 886392054 616611783 718755954 60632405 71722965 150123732 251800879 431840148 11798429 116121180 581960518 264208056 86522863 228175043 986665977 942787434 795084273 171541306 698491024 127188896 79634254 807490234 482888545 513034135 202399042 824791810 14869699 502054608 594256775 95973789 562078744 550844187 760484709 206681816 606323917 739137417 625079464 370214605 43075923 271599993 340715690 17063003 215645218 986627468 627435334 470272045 195601600 146547376 548675556 23430574 845152951 60499229 767231604 978834460 444690070 764392264 947520105 470651253 16275707 784249594 145569217 207357313 164147588 766323262 129831939 366614223 537044448 270383210 444880191 510153656 219898047 638902040 234806537 942113118 622206681 587043117 139509632 58081961 8075250 332145109 641588301 978806088 925195734 332400002 198164376 983906483 409485655 136187639 66820383 599148331 836682573 761692209 549273369 388588217 862681498 26450305 483915601 320948778 459551788 933528184 593056789 544822810 800060915 980877045 312919862 552229351 217014246 768615449 91601179 541824187 402551820 744274259 672389538 632424580 174973039 371810646 317935423 932728574 735838238 289372960 90052581 164446373 757844534 410351349 363363858 465936837 557548761 910924127 272642512 886833001 805509168 461634610 213102506 10415215 412499822 189160332 125579702 307035765 518038988 989073619 962619028 160312545 894646673 417271215 60067946 485581798 943839488 240224025 138972132 485196156 487440753 900407880 414642492 473226341 378684987 960694724 655319343 201712932 959424448 520442969 377312768 490108686 850340973 60491800 89979521 208876857 139839923 158121314 487507718 261122949 78578956 352255960 980549231 840673692 914628347 178808168 649063203 711533549 659261448 254020933 138121229 367675056 875255752 748551915 71758756 742021352 143362516 820861728 121684201 827298137 248971984 709087471 499896929 226587543 232395107 582320301 650217753 802563319 564027201 300916469 258136998 898274202 413959204 741897130 805125930 789238125 631137998 632497917 87999050 812112153 915444747 898471006 933779509 999290650 361892267 466632586 214871964 735355057 667492232 313941897 475772357 947079907 295296646 182910882 452009840 267114884 753866641 504543852 519696881 28957227 293440151 36303554 980533270 7331639 366298005 753219785 679045447 151721168 220238219 209788654 413624419 113787368 749094788 410883300 73253084 729239862 510798228 700640936 727043495 113080892 269224405 410115455 538897472 60320833 574562153 863989489 812660659 991147860 656826230 503283160 627411848 813844305 803312692 77510989 682109657 25903829 872425949 437744564 356783938 943651401 69071790 556608956 269878253 803334877 305928438 67283286 39500421 263010185 512753160 87683264 540778559 306516493 274377531 646813566 453345500 964648948 308878321 257485663 709519779 499385738 846259606 844318577 180232801 145699052 946895516 666880276 816046698 536292600 436218749 972784877 677927329 611135572 914130365 384305126 172143462 634779765 769633507 802952758 109906861 938855567 433962882 529168471 491461609 977600163 986821175 197734413 536496154 648828539 96594595 505936231 35590087 888053414 657501804 833954230 155647738 319640957 783828556 254599832 349442892 509784606 566904055 856373489 216703709 332188534 166655538 683329517 456951632 985265969 366143430 598522880 830332630 865692361 274359942 115420137 341623077 474684028 665771340 474203560 695640184 376563286 587782652 186581899 71692952 773582116 85301884 830041383 671524819 664646019 311222723 975594073 716785150 30649037 444201161 999760450 152674171 593448493 749296016 756172368 525148717 250463123 442339875 702499129 586451584 478860473 743255443 410026998 321950830 730994716 543487738 753998543 919349878 558178823 766841982 685342796 940248219 213179784 314148423 806434375 904870765 872743290 924494212 85123285 66880259 893255037 522671986 259215198 914239992 526770934 391382614 392773520 300193911 871197208 243143798 807359068 646645546 656931034 937700135 414506243 364664907 911458814 915273667 792985091 671208085 914878986 427025065 375861802 230772815 71618129 978347591 789142417 190458440 147454953 883873293 448610446 776133846 254654131 928387958 618902729 815237336 3575893 246552324 779937324 235103923 689693506 705794884 500148206 173534551 348882866 291092933 453751690 487522615 240635559 703693345 195393987 264574290 150358244 304187133 741308326 243665459 303666686 799027968 363545992 833793250 185304907 879792607 785321476 426121723 800543981 135583571 914605311 590877847 541175497 808083997 569177767 7860575 304932243 760599819 30637676 176492928 490840000 369033707 178973710 304703922 618528914 122556056 500912782 875487027 315128083 230736888 283174205 31795913 847549710 446203634 560665258 717447615 202516515 767868792 538131383 226490607 160742058 939432839 464940675 774021047 657443537 856134685 355867002 69200636 501194117 984506441 750756950 554192940 252421505 957749784 253964559 841082944 410243650 408952233 299778280 95173811 89152276 307662877 254987633 168834189 817889285 745512605 632849277 973322074 996974317 251782491 899058725 894000693 21809772 394799763 835134930 389895863 635550445 531856263 536197932 538980873 439497116 380799 972242477 666294232 352381302 821672143 258622219 613734237 381484600 945504722 368957263 535013460 903926635 711683561 729889985 179816963 120764254 790677119 131964024 789937208 834216492 902683143 597691344 962721867 255090357 49337080 9086317 694236696 62401950 807401686 757093949 60366599 189808730 571660079 357868655 225357062 939194400 720446607 533109381 747815818 306218227 737220499 714049088 357957780 526725782 445157854 395839918 117557161 26592670 830554906 32769571 824372436 529597536 129504761 445240120 844183472 8244737 321540917 782236631 616720472 170370914 807075472 222400806 431087222 790815290 791634388 647429022 190880821 322787326 536524246 573670394 874306378 195632881 959757676 418917951 554768886 513182487 993492093 390868663 543981054 594158401 378586862 813233399 440711602 835611659 527095733 527004892 509359335 213228752 353910219 24013194 759425018 986758844 339717427 214211695 575116500 61419456 428496884 839859258 288541154 125371795 23699751 385384429 568237336 773245618 106664926 787011530 564931833 778596714 155503682 948541021 658195846 982283976 144150139 447127416 390454609 262845862 269537723 922397501 716636271 477758885 190931258 731162893 820065148 5140010 188839741 447260818 153727140 423400810 643069966 359409859 925316753 425365849 452333823 709276381 377210233 803278521 549698922 569157984 412186651 924872722 270561712 115718942 786420927 937121972 849432129 864280617 680948783 77438905 676421254 329448666 244569799 724956927 233334785 100049114 20717409 484566062 463903537 730953747 17764453 239583161 704756895 677073337 29300927 965467093 660390369 184925000 306943209 629030277 433891981 846336901 115445726 339385230 898320200 916541821 189480999 911908229 950788284 963377026 917150414 120796350 926739100 934574133 739913327 722064733 123506848 258524021 312023077 201363271 423150989 395176302 397472405 197190954 121458728 815407003 294440686 889521030 207253066 394692016 33557481 377735572 798565321 218312374 205152449 560193121 237778312 348588025 573825599 243603899 227545202 240914442 498781103 269567291 175932538 476385738 749416423 211494719 731553688 760341339 579516487 119238642 922523345 950199592 537649077 238076483 501018411 323673321 939007903 929506026 943281852 540062356 975158523 211500905 14129564 484559218 984455492 438170374 35084529 148840208 348251528 634512340 280074721 465352255 342915919 584971689 26650784 606863388 409073072 580249892 592370537 366117646 309458509 609269426 398161276 703521214 54404167 451557758 373851687 590743074 133220174 80024197 277221302 714831476 585462939 530038659 830795403 753330236 794282987 600748547 962545666 220113220 156010625 896880210 931815305 327158432 230882863 848012 949183374 3367852 446681163 559820688 598245522 736928014 236243632 421620742 198718481 619840432 881851081 351446367 666301337 628316105 814951552 778373842 553837498 320235986 897822540 343345249 795173134 783932307 995231535 934622160 318210362 975790869 41153963 586032052 655930856 390468012 210276561 143368292 123121095 801228024 439049781 275544320 268109715 536729051 314632182 64316016 854410510 576923009 69055931 12019301 119227909 106313820 948647345 498587221 659976518 68780844 876090769 393982082 190529452 313939445 562252693 208272116 254247709 616510723 909224327 644668028 597392766 64591847 492628403 261332402 881889222 454469248 74881006 27842036 778791149 385389555 111085724 924697710 389127413 937253291 535697308 715948302 712274921 695021149 671534434 629891469 824317146 780196612 339473379 48273000 73447651 482809316 447368602 164806636 754928678 324270476 115716240 665097001 849008337 705418188 885546325 273954034 760503823 351282372 563494906 730555631 356007200 1164761 294518563 250182784 754288708 142549171 700309233 506362332 925453253 642211912 189785108 431722743 672658679 354253270 761736902 301093524 192996146 548073441 254811584 696142649 126214362 141985075 205166413 384678457 265282137 846356449 19997238 970515112 398372129 30590535 626576599 251993195 944642218 892517386 66797065 248635175 214496635 246250265 763498036 837789519 20926490 362324642 558963785 293013782 47874588 256068134 429268155 945466242 347963161 150172777 891175560 905720667 874321333 113366133 50384440 27621421 827048091 150882974 50919643 470342482 635250555 809568644 286840579 703522541 99296271 862455560 503748049 577715426 25412379 897010008 698936297 277962724 533553512 305274343 347869308 316306540 524354762 962249843 519567934 377279926 976412953 67811837 962157681 219421392 234473784 686136277 502052308 890804615 793980949 442527371 547630526 540841331 955777949 21298431 669632767 691126002 444567499 699115860 835915001 817041970 28517282 611748854 136790158 258177568 306527279 286193304 37267760 786147701 598860672 792119611 76428756 16169393 450543024 812406558 964442617 981862938 10304998 720241103 336035490 904608452 123455302 747796515 933228386 478700421 564345350 911648055 802757964 693484799 877137503 621087082 31813121 278115223 708928402 180374896 781616290 504850561 107559660 153285432 457438436 244607154 405037758 95307520 621123576 798697965 949776227 804666954 89496993 416687033 441259578 110096615 615546657 939449958 689334449 235782633 242445382 65174540 901931833 104998056 917638250 582893965 184834637 597979086 674645353 583158161 119772013 636338247 648615081 469302660 36309028 668337731 824155673 569809061 353499910 324333121 337578798 329877230 154520237 68461062 156018664 810665516 601803449 855178652 405247950 55965421 591488213 452119641 325716205 810928008 67774901 512284120 7781080 375135521 877817872 13892351 857094066 359323292 20452270 93392632 570131231 831620014 142690388 522262587 786370382 980035019 877355221 730795902 901708791 696923957 697143820 216365261 56118099 997643765 211586527 670219885 587781932 173408984 585464368 658380790 732672465 290369146 578452985 569539397 961231639 968539193 229755951 898495868 950470492 994389822 181851353 865005577 241761926 38891386 611019260 858883487 415764741 423791782 741790895 888072507 798256332 248991039 217600009 734700830 924876381 718616464 562209837 487840219 474207165 136953513 661366596 463162689 568523641 324116319 18514052 741897070 918970790 315971415 377484071 994536901 666437863 401498612 632164715 211629044 860524895 778055533 149363612 979827951 438553531 152760756 67996943 587577328 120888373 483227022 904780570 710536574 607614857 708543360 117392930 696067685 760347132 228195548 74623634 35840697 637873758 34934456 219899355 432520403 377241350 520621814 33458037 362832986 36156112 907404097 384217061 900301116 139953190 176375813 434897332 385057964 758621171 712963449 946137206 861903396 175584941 744053923 111060422 872704106 200354642 795215428 571408451 372496013 11583597 13423093 623255703 495406298 58855684 511681798 542557815 370000885 806268342 360818077 2388892 393429438 184569245 194065825 411050185 151986787 466782559 13077951 21771463 772111189 61111849 806034034 556914536 841031764 583233717 206868219 814086281 442317412 736119358 896579678 617068299 542893774 994006924 919510642 229414356 33844266 580791789 743504074 433809117 633892690 561552950 945620937 758129693 610661485 477368776 926578069 952897684 540717026 458666375 259362079 36864848 14253930 750769889 171930911 243696226 884813569 264732878 820452630 900821478 452186089 814885578 20189260 426274043 974283182 41717724 786600659 416719053 976245031 563204501 902954625 190438796 713385839 172980488 168223734 597559157 921420520 615855572 978297244 281890250 739084865 919018273 891138210 579061205 759932782 918280858 950652929 396970470 509707434 759956855 108682616 710675035 788367226 840656247 258402960 945560210 431423915 187907039 174638489 331988475 763476560 467320958 572762284 713880835 492789445 557725867 502252714 197267495 524770224 624235073 816524856 780959462 701807610 365488299 228080843 591856335 561557980 599186387 151872918 325514352 210612177 833807152 543204508 538579561 558667673 971985604 99371942 309480020 53801282 382414865 441836356 321993186 212366885 565723430 446816717 896624066 879938521 496143260 65302115 369425070 926116676 744408975 426023402 6791276 768835987 784735396 307060247 35451587 993474360 179529485 360441953 848276612 699140850 397163131 476809479 737041548 33892547 808281904 612384274 825499326 770003704 942497525 372670034 35640066 837026086 568534032 577137250 947128394 932382504 487945822 574902686 145138064 578351653 813134909 268683568 779005659 647071623 650534798 831332616 719309870 603000832 113923782 774869217 518371489 694440080 671854039 513986358 761839437 337809275 909178687 628071506 633528913 423426378 349157639 780000070 920271834 812555221 129095098 86021355 543022363 694900022 796941682 423219935 874105164 796606675 775991499 383896714 614898864 405909591 230208491 763004447 472123795 947948212 702100353 320766354 65218375 510039339 989867458 464496553 91192099 196476478 363345775 655280359 66857866 600614072 838616778 908010143 984314090 63159471 288159399 153578473 807444146 526644862 935424855 911420580 56688735 668756429 845504953 848665721 756245617 968437378 738299959 882358232 166291312 194832855 647308731 170808059 915009266 317113154 500054206 854632160 394086546 221155214 66501180 729892433 147767022 753064899 841032382 56303836 214009012 186693175 607781712 316800474 655046037 37189508 21335179 364421999 621315402 650485650 46127497 548365180 684494488 7561354 839174899 812357816 206683718 99154914 480925174 399909272 678037545 291138903 158369099 731935069 87582744 414503915 609909293 860140303 499233018 696848107 118490467 694519933 904908726 383104746 106914876 578837826 295005246 905076934 61691790 537328060 398934158 564396196 940323000 348529173 90330536 246173425 277038752 334840122 596059797 495158108 653548722 41780713 614938470 632912359 302908391 154479517 286108218 953933267 929294269 219215265 681760814 745570990 95268665 724565507 218426993 249088843 475754473 960241820 367033137 83224263 141047013 916960271 11439787 747619205 793606089 993028288 874251296 562385458 957308861 956753379 494361819 70899907 288334446 917062766 264723246 957452149 923435796 25717282 798954354 479655368 951978861 578532998 631757581 797805967 956665023 44460525 175569765 436283862 50498772 264452716 636305644 218572289 251439883 660988646 112922144 849077424 82481979 415675395 478880385 241494225 459140299 607175472 281117083 312378518 721318829 908914089 623583741 363217023 127966034 255035245 897576516 267015754 667026366 539505219 403292688 131407371 326948980 222761660 381305614 295293712 647754115 690532145 398832624 744784632 473937536 629215427 418794862 297671849 508855179 101807703 310772042 1649997 257503305 721184161 717606226 607328087 455710441 718842903 710549077 653191557 552996129 861960699 605664046 64425946 332187952 808024403 543206847 202615461 319988442 171748078 628431859 334702455 661037169 30692203 566252732 244657711 719097799 851150371 710823188 429156335 976161596 766543424 129964284 223845922 933210296 419243446 140044931 639462275 432855206 376391738 365463733 383015175 407973121 686602316 625221297 785102069 454553666 156875319 922363029 756697049 127709810 799869703 763537550 175745416 851765790 229688215 689488849 572058655 784993630 627822471 691521426 804581119 15967950 197844542 442544665 938422743 75306135 739929585 798608810 171695002 614738278 922666129 928235934 420717957 206099825 773140706 486819658 706861084 336149877 627917167 593123604 969062957 349123001 217628035 799463780 460553159 498213644 524220985 407181228 374003532 981958598 490761073 370007400 187424348 983136963 853433042 541628187 385557734 673089639 98602702 122030413 640454175 276037540 549117853 523083663 66264961 829890800 512310334 845692799 22266833 964212039 746666876 898999227 246146586 69300017 729561826 981336818 675155122 276879292 613352398 876395731 122217013 426832766 241430110 920299800 652040327 512552853 485707899 298825350 781849044 416518824 951286480 557955045 549925265 976489957 933385694 499787016 931866488 410833921 932737246 551535563 967898257 748701755 634103004 952186634 635881509 688843611 137769385 169275830 120101066 528932524 694240987 360874945 955785053 909954823 792717520 3020576 10907647 914356681 478338999 14187738 169127711 409694169 683606137 516076024 875332718 873146021 126794194 697733259 681583084 545576736 405004099 804781230 376620767 82967247 269450770 114119044 399621837 42029747 387093586 574813751 413777551 835184732 556355033 84749558 383102270 629599456 427402566 662856192 311167296 550218717 569712903 439997590 722774852 739736699 323757125 187402242 477384504 72675428 39937533 336398485 438305630 435910354 262600172 117946539 684224825 548565380 314550175 263008677 601250960 7243196 266659169 53226732 40913534 279522637 315596621 338421494 942530143 816722827 37660226 695449147 514042577 69792851 210615019 329101884 340211398 151107340 562223285 209882756 655296624 582645156 710117595 110686632 627914317 843746196 723244891 458971201 775158303 907075800 765618172 152654831 459181555 535629046 24931666 179492445 346415389 823808510 598005685 71952957 478328633 642356612 206671938 611136588 952213295 56349094 727866853 9472587 678967845 534919183 692816459 37557761 933026453 136268007 748651245 499276357 263629111 441982438 25344524 175173615 46404625 675824462 406715312 580570336 836935535 419421921 383678634 141717253 215539942 934064881 405551507 491468108 516891218 549779791 556583878 560763062 296671447 311429725 61947507 22031681 485738976 563205633 694772101 723674868 420377637 720677545 766202036 382729960 60416157 259112011 595462275 525567540 932640657 809048420 12278585 680512250 352897417 241031677 208493543 956912484 996314205 582698659 698739043 683555495 804773415 703645547 30187856 243066873 634156108 443242227 688384276 914244511 972216441 636499813 854101730 541124578 578145184 133203818 610979503 159920660 379800832 701364030 504462142 684383635 442557723 584268698 410723604 14055100 583458494 724394697 927684486 482800637 628937726 426343828 171134888 881170118 805782841 531261014 798688093 477666963 667217935 301058538 520180299 710126052 667800684 770274488 372358372 187672391 352036744 659391407 934776158 286575691 955296991 934934339 706394300 963624074 963304755 451273843 197346247 777881257 681364370 390598597 430869003 115072334 100897359 967753801 564388067 187451952 697274887 971644050 343311982 653294854 498193052 510268353 415239830 793325205 802346046 391891068 571011083 522998693 137887839 640438256 538733380 651138569 314450106 329355478 295456128 537298842 66169432 571692136 476463052 465087804 327574656 409677169 115186676 990224857 153366475 111808827 231873427 811501922 78125328 88218271 484819205 792187347 670486647 591341817 127884919 895650348 460484202 446072624 669803734 85467514 212056736 29471412 592577757 595680207 856205076 100936826 13350411 223788867 49811721 535420416 176297894 889595128 712361485 737715791 778756035 620441627 528099059 409636079 313007157 232391901 113881814 75623164 523239329 5230966 213756446 373140499 22376042 940989743 3533173 802875735 249677254 329610056 25806 389252219 368476842 768103964 3589225 564214960 305288919 548732418 348817351 110191546 839324116 200279644 55128244 948445404 433678324 66304663 53768262 935191524 267651405 327374112 597562330 183945770 186040511 207779445 22959122 339063691 757193973 814803991 954460634 33551212 992851802 222459280 595400042 170054079 560578861 905948021 859851578 436743671 250353769 949504093 635852560 491585555 17604312 544405995 657810680 408624538 939172106 105256393 41716296 225993881 489733977 541029035 802232987 805983913 402103523 347614538 274435283 854464996 11498129 376752489 500246046 917044722 774847508 761205969 939017457 64980740 748621026 137819732 390384648 908549837 725067583 817012943 748736871 287931277 374669104 691008032 20655450 121683721 277094791 981308981 813371767 283223438 282731738 856468478 101614999 979362039 486999179 366910073 656100062 22280093 582486467 190134691 733569726 946497386 494057584 478267785 727812068 699147467 618053198 576165693 911044946 479618485 995104729 269027800 514199883 671788711 18479453 656044414 78503000 532205990 63334886 372548698 586518096 841180996 502529102 896431514 124273999 854621078 485808697 450393726 632897720 376860985 767178506 34960196 191326264 686890576 184857331 150864952 682527943 836143504 164211181 100186797 848846235 8260397 807446200 503512059 404706619 557657569 24533980 425195652 327729267 869127671 453319339 163708087 170529622 775326781 272579128 150559232 354026053 489907974 882058347 350062044 375380703 453055282 890928869 608151248 50237203 79701801 406985755 945112931 649389074 885218774 609941569 628033831 908818268 817957301 53506141 242336695 701751734 689307581 859209523 976147381 410216489 261755510 714008659 962666444 984307467 416041203 878046486 917709743 143421686 376305095 826947998 971105044 507532241 919344654 881129940 885982404 448105926 181376112 628014692 246453125 196538445 67695135 672152523 759904553 478861596 886434764 600964420 414227338 292502846 658706104 522929114 115866508 680486397 29627817 289072480 912185882 712351722 843071978 879870826 253947684 523259876 271683670 560850010 897578660 293893136 467498570 783674968 803194785 460397273 258874027 822725717 391554847 593078258 176324839 620143878 618198322 692052314 130251253 56309232 56744438 153669205 997248341 541461593 610451085 529348717 773543432 359721553 716780576 620058230 519869346 157765553 996199650 407991695 438597433 321963289 368193806 317743643 892373094 698524400 227345892 828545222 386550356 337059944 151058097 390445956 669399214 898883704 844326340 483808914 439340719 547580643 70645626 939037044 158533648 951195948 573177143 663598584 501504026 723101609 524980831 621981486 940859036 797097581 887100264 375108214 216926443 594855517 190078670 808048243 845997283 404622876 316462096 529479697 562790383 175958305 860377788 467731845 511447544 899902623 307198816 274257736 576524408 14470295 82701976 261493538 303197037 370894035 633512454 177493280 869486173 221457890 926076246 686622356 742120276 641367581 149418297 918745883 822466541 575025829 588925545 688539031 145442881 384956510 403897511 832659254 996239353 87231740 692451262 513639023 527668033 203743737 27732613 585208314 541665747 515609488 188897231 680351711 861344235 44204494 175420288 282566246 462264654 747058561 1085831 723583782 198915662 276731203 83345617 770807290 308550334 202313840 138703450 123693577 334991103 513847348 146878500 389004475 12443378 39546495 449892410 74813639 523024651 970917640 720406961 410982184 266324798 224320593 487631772 455817252 516566024 854175902 57143843 339052615 777762162 296557828 852196206 49848677 878989320 495875674 929246385 723412886 104314339 535971392 93285668 537692228 818033052 79885343 688873227 948393243 932138847 498213924 595492528 251699981 606552022 454599754 148037477 667569492 284311867 517759314 442095235 915365497 429723207 335644610 708804718 625754437 201473862 715597037 991494545 427566030 859924226 473573353 263988571 201306224 568379860 72494743 986550088 951288014 816364186 844124317 940690906 289813207 353582010 721181294 65462685 403433404 612951073 872178755 490375202 423639805 764992071 343567642 965128450 925559641 820695335 935894460 292378848 314226656 911251274 297913274 729701481 226942694 518895038 748190315 4398411 893273351 824481051 955002865 122787650 670264359 472845947 613784624 302659858 697497713 23925895 953481183 731088259 919897947 286188653 796211569 240613479 575995041 125712099 136059430 470059418 491636549 765262630 532626187 958075901 543266454 880078335 924942827 987907195 707163432 333047483 640373858 54876420 943721432 847840814 304007375 197890967 432159944 969481147 177819481 454320946 440961637 953731138 417710832 430117089 956745317 348267320 56097872 944888502 75442368 197659535 416082167 146597578 189273790 253197510 161922093 527972416 277382123 820906468 294915584 434132548 278698778 339638903 222510668 469632777 467493734 629523860 157430705 880140996 524992825 402004698 712798868 926862523 101394230 782761329 583796777 937895481 500026202 966360837 762384230 387109260 419365340 263418061 916310541 530189074 172115524 518728838 463912867 528220207 120072794 920070520 929016443 845835849 103024950 413647731 656073901 310298578 877015603 551135688 319008025 810447688 784242164 278785626 739564134 102809133 492773734 847179406 221851655 992731142 278065852 759206481 3230513 99499883 137919095 764559642 289562086 379896052 505010774 316779240 165482990 243580996 280751209 433548609 652651482 175058692 27094016 489918000 104729089 307717607 89823419 312066897 250103685 992104359 289456509 742218428 415520075 731216901 966284657 597795357 163344647 32933071 616987405 764684191 563202607 587480787 248324877 522081528 485375237 447822063 970581877 351958120 173111695 342582017 31297680 547794871 162305181 272796407 50499061 162230575 658603211 441159619 836396927 762459302 247725428 624096860 415462481 559030910 194815941 883060425 642969048 93278364 78572972 13066511 74189512 268465005 128333027 828160579 266847774 910416105 128712678 833334144 953233441 498446731 24564995 818458856 10745687 346013533 586372421 224391332 810715032 81416941 549002119 938762215 984292607 320968782 127232873 998564842 705829618 712577056 578017364 187142898 877811997 380127883 264058486 171118918 82987120 68951099 581910473 318360636 718205487 647601510 345768716 566593835 575333078 396809935 994674379 566109303 21373240 331228853 289124433 171544712 302435687 737312234 992226488 527131860 719446460 548296388 567283170 723975378 363383265 551925795 803300726 540223749 152855485 696675435 827959269 727263225 3954311 156181131 504776037 901831997 305439674 13593335 942602489 412008559 832504860 933316272 534978409 643610670 114355382 251853885 776216130 609433383 589998050 647761066 93639902 631855881 679275063 483610766 684972897 934120848 606037403 405242118 248437166 546898816 879934008 851817659 354836600 957422498 643035528 116588250 757661238 396051398 287657282 125815832 541594664 970281930 957880940 517062580 450916697 256226446 585925715 543420023 366097302 427754748 667424648 555773864 822264955 786771719 642572524 118663206 572703331 319372969 76854433 648422731 717059451 232740580 503783699 568836093 203771054 903196356 521034230 465104809 172516538 841554009 602587462 408758088 970075935 792514495 406764617 931082841 449038110 140553239 572510347 825420767 494422225 910482571 892450012 834553194 355042824 94801230 734914142 414522897 229160810 57282715 118537588 167846766 733966683 94313905 666641608 876180652 213180683 56448478 251906129 236702075 824200052 406240117 402216520 111771914 614929495 512380106 745426483 177431837 685983547 219802438 768491487 142083833 88987246 723572304 64708703 691562602 321676812 837290077 576820495 866070217 587587828 284025827 974382740 519389685 82675663 270583398 650004954 798977359 687400459 347630963 311804182 466463434 572062946 947131798 547133637 486094301 883522133 921062769 720120489 110148227 457286697 454364832 248525006 189854786 280305904 175039184 10392202 532614442 315823365 255416501 338530683 657662676 877917060 12952324 262840960 2196825 506891097 315418500 209618123 830264930 52411441 842422270 668656331 697658396 882408836 123787587 181329727 83612222 699011990 626990127 488780844 277325576 843111021 218694307 557092828 468678204 38643416 615741577 869544932 428035629 424358771 677162708 131300387 97735343 675243416 737699454 98017209 556487711 330284663 286773131 987105813 233525348 523620346 888832514 120056810 306934766 750018524 229419255 614633015 663637683 77884060 244362117 601434426 796322095 248194692 652316109 21339015 239233897 904792740 56184825 862715626 216433134 77220306 901595964 469227913 76078296 610533298 441119440 405451966 116614853 468614569 79886585 854441532 133093848 168641513 792753150 372960502 511948992 808932454 505263924 311473192 421144501 756925417 989619699 58053718 567620468 788152560 65949342 708954700 782671940 246282452 647757731 677669407 708762866 624874664 175209581 391192104 955816917 798148686 937182844 440634897 391376333 977202031 426972241 995968451 847702845 337080442 396215923 682298481 339832597 725531046 890360441 890808729 375024073 192876534 361379322 351346687 575166043 780332083 613976987 232420015 318685009 668465640 892483587 164623868 275350453 28490867 983256806 824149638 182207009 199755761 730163199 485613102 794958771 435726922 190367247 334208291 668467985 873946161 474544608 270209750 743276390 819685917 7196487 305036037 95878510 665749325 997223963 545697971 203893347 187354824 79620414 906959150 977807628 309891683 770543516 974245640 107199672 689580467 730505512 752387361 466301502 160302870 926274010 489247131 557749499 934121147 761123513 410037473 25500629 727178637 721666758 704334505 957974074 675985989 991938077 110164204 852917027 110659684 622997714 667646709 879601674 940153650 775480330 201956425 785765883 34362049 330854126 51041728 814176380 769268964 271362482 763701368 810723499 910859842 813568144 61180113 248452131 386836287 723946184 87781243 774488075 793522956 398549926 866929255 169477135 486490787 279119229 93953490 103753064 71402432 939722914 745663810 835710930 231771121 451340929 3465347 766556822 507268994 411538042 45059751 57218434 175829645 366457094 206598922 192889321 555599856 854915229 183509076 891811245 880600664 53939904 268458353 641703985 533856561 59078396 815528081 601278308 101260724 720194530 18532915 758792382 101130210 132703244 530242077 3534397 727692164 165472028 353060439 178969957 506030376 526087870 452453430 324263495 66836777 488150947 227883355 705260662 484260516 794570883 423787172 365085716 616898180 222626082 512647490 163787974 890478715 158438220 707755945 741475002 701609979 421568466 955965073 623715748 156119881 779529103 715667971 168899014 22674029 478981730 108361286 548251364 545424436 416905275 816300276 804705612 294966587 366612487 848515558 294919894 10550493 192886977 768437315 392256478 460682823 244946028 143596402 820332109 213087078 356878101 185647148 59951249 110959094 312377291 640999277 932339868 547222131 47644072 717351284 901582065 950495016 278916817 317008085 461546386 311541540 441021295 520366431 203599635 631752511 161090226 321773360 173182341 373307163 614221270 234656684 791644040 443553311 643685663 1755774 954346820 593045113 551097557 509566620 435111271 335533093 500150347 109135170 469412898 962726371 853634779 265385717 253664314 628593720 354329321 592762495 680904179 773386872 462285531 277360119 517589017 440569785 419065383 230201269 208370948 643376092 158635078 42480481 370700181 709595273 99350971 116734694 606599213 492885041 396153614 290216314 883111868 118348040 30511573 37325463 533741755 910328855 169251238 851378944 418719270 760017950 666831655 851346887 849229443 249294001 787857153 123653945 367629536 562627878 789257957 190570487 493322196 137846688 232824974 809708516 563489918 841699336 171458750 270802220 512281476 188141834 348012097 86848835 221704725 150296866 572453095 200045030 639759076 949992847 482308234 490719259 78227761 68815703 437031951 955905321 811507651 28896334 431295582 287477672 256397801 890539018 226038634 236139124 778211959 426347756 550012718 311778227 474339019 736875292 969500331 912202189 587661262 288402314 123964138 785560696 810631916 998937326 548938241 554809267 373083932 806304458 603149319 282997438 952313309 128653925 836317727 13538600 882339892 215369678 618785140 563579844 469861297 712577761 706334777 6105520 177879398 792597563 40694951 636640078 725311224 730725445 66151935 500509003 818296198 468349487 945247628 919107996 886743237 525673201 621217698 686192765 480178663 580244557 892339357 350242672 346226858 910913992 932585944 290125380 376276054 483321783 329736388 91929615 65326776 196758572 403028945 600311335 26768681 423581199 224321911 325457206 213307268 134995969 814525244 735378983 632979761 118704502 50803368 255194922 463172638 212557223 578073166 828970179 122811840 431278224 60216009 649516206 561264151 833230847 832143291 526170877 6129833 417227905 755696330 250897666 692557186 704969324 321411759 970539610 3230779 439946982 988379680 548569067 662306547 829355218 964904161 834741469 282474315 647004643 835342525 325397415 214338935 636711825 43417219 734250756 730606378 602344986 14642959 180507385 359910052 55416714 525132866 865453010 812214187 938820783 981655050 736682276 252207757 767567394 161931094 651700939 106207518 345506115 90849058 653243882 744104383 971901753 730710895 485152241 234545239 209885684 914760777 94792078 133762896 270462256 242907327 943903682 184974502 177263467 957922285 67487440 868161747 641592043 187102711 485420356 651034590 759118018 21952771 608007922 856760919 847629771 608069705 165181944 229650000 857558947 467732221 881375160 429596271 40171954 333827430 75682784 991998163 24135722 745686476 340249442 762855979 565892866 982680451 764259197 649690288 348855549 527121380 590048949 130164000 162507935 45520721 808486867 426136003 282154810 583814196 583697134 469648736 635236329 929659393 789195361 177479252 565502601 958795312 998574547 378875260 419905729 363135301 642248492 707633470 244470020 19619787 488768933 127135367 692602763 195159376 861108405 945856973 246879060 809644914 630823204 698995729 448849704 291478740 872994813 454166487 248930968 952625180 448345493 134660652 320314106 327110915 333030022 761661865 712955506 852203836 178799800 963791213 97478884 957973388 978868308 722998298 771128581 741635262 648084177 560972514 232397640 367903910 605193192 773231227 102485232 403995931 68083360 365149217 985338630 284857600 763542596 237457050 901465944 315275582 168786281 55257401 79727491 699534285 57144040 362803406 674370529 340905120 525881066 96465085 278794908 266093756 823352283 521991143 243368104 516067119 833975146 790538686 49600184 281336837 124585880 54177079 480191569 976193370 64680874 334238673 951471288 25839700 753876776 929501326 554443263 564982811 380218601 887243525 139239933 815124702 256382473 330722882 749209939 557782236 237434090 463618028 831320169 499702612 589509181 631477540 237811310 425141652 920420339 474130330 964653663 775357930 311529031 484602500 489653750 668221109 578140350 875026337 377625279 372124497 93058344 376895541 421502728 406488877 864535701 823219216 267516653 151585465 961037412 684864136 496965963 421900913 795886903 743175548 982541514 92691927 268410875 922582610 383681245 643387506 528258788 545436919 602456760 286999770 265566832 470860515 98978913 436299684 942169696 388677137 475008923 669222007 681937093 877391883 96506617 839422200 512795886 898190558 532574928 626322397 890967162 33389599 981452359 403416031 222771279 320077294 373024318 103481025 186826135 642974192 738007149 756459594 271815876 175982164 328064070 508587859 738801815 617421008 77137422 889601711 433994513 197490083 949660619 937542212 188930175 228750995 659117131 371948541 216628852 983643115 953680426 714377417 274148049 746921862 116988102 59169189 389300 432353217 444220745 416550034 983800205 89056894 973161378 217655706 632502289 867107379 465035146 554494931 139722041 173253327 944525185 506781265 448815434 772933844 847017934 472562490 524651732 37566024 876777346 378490553 270898086 312185272 716951927 132195836 273236448 454634300 841273674 800607811 355343588 317199730 101663336 733090765 611335264 944653950 652649212 234699493 793249097 981259025 979850496 239361755 718135511 43155294 627939639 296945420 285288338 333345830 812577318 651977688 150498374 249595825 229835550 250113965 561580804 63681736 779055928 224032762 912574511 206829508 952980564 835548218 639358306 686668165 542964763 912358129 940068496 586550382 987492090 555869349 720327404 965639536 901218093 624790764 760029682 401954559 100492723 424123742 709846119 433831450 915374932 856442017 140200788 797239112 562755488 971280218 492087568 187257750 932180975 103987520 234504758 554939292 483810403 266594314 265121452 553166457 960175330 223530619 909695646 283356878 930022942 258252638 599768446 143817166 444680846 677506182 162370314 274683950 826591603 188814282 813594183 653454126 13200341 246593041 139833984 220245905 291235204 332610113 99726921 998595750 337204251 45422670 59444350 162445127 64528885 966623283 945513285 307132620 858301246 896169711 26195209 318171169 753412837 742982544 189430653 107195566 530451874 307453481 846106784 213160304 610959608 663616207 564581813 104681443 642354731 3480744 981026887 273140491 922637135 229238495 371002156 433093238 207839288 851069349 617655169 863789887 111130509 212911922 88603049 710355200 728423343 931888845 859939918 789426913 345536464 314384315 344910694 288477839 679951084 433012306 462638384 454931266 424443585 423491309 967196462 150701238 942673110 265259752 57950507 696563253 891318140 838313911 771153980 341547913 286563020 492843459 782648257 246946824 366841766 54028170 979637847 344548245 275837107 445704848 196120305 703429011 307018080 145086046 871166910 792440305 402860267 262229894 136431934 329606692 94253903 271774881 602384693 635582508 310173780 558650707 711569325 923222415 431885454 500375365 86127098 643899480 517600340 743160619 152183228 450234402 690270919 485690301 523727317 445890827 722269900 37515454 888694639 155141812 463242774 552666106 557911810 870867795 192188445 455675456 782510920 618762902 536824609 59928175 347742278 171325120 259703080 74282597 978418249 339754393 173167366 789285389 453443812 355554667 270679378 641795675 970136052 526739471 397341035 745355846 797846684 61028321 294343291 761661908 363638347 700009672 16629361 548673295 342772146 630697781 144535812 489014022 126583758 531120409 639973046 484964564 988263142 826287863 107710929 529307806 92345730 433754325 399559010 939239565 624511867 848695612 616001090 520425426 39679721 451127368 267585557 48776616 474721586 302840470 606243389 852119635 853720579 785142347 397291758 812775450 187013198 69651479 12398622 915276883 164125522 322770476 515960979 368356437 275079569 354111310 906310863 523197571 294780888 665771966 358444579 685741383 454652477 412187217 799279016 477287956 923549978 992659285 769476928 854461540 395032084 997848492 708878997 808665275 779123990 143111103 701860369 861840288 416442710 956447352 904886254 448150184 722239057 293441105 953387827 832513386 148121289 613673029 464705694 987278989 86079436 903778011 370912710 885418681 767393196 970265378 113555970 293271452 879201545 734052785 174288755 611394809 439639491 100764068 330959359 332062602 532992008 279486373 828566615 86461471 557971276 795016924 241497332 853343877 154958157 795700740 759742742 71094939 653263118 813073500 534532037 534505281 5664730 888107177 726987984 584182114 541109832 663532599 836761555 646251247 976846130 231934943 811550505 491690980 442215100 560042237 848586495 643438403 933463893 878684280 615340098 465672212 171034798 53293505 800524717 292202602 677925063 271275466 12340414 214839394 185184990 563827733 819235518 197315868 963826823 243808677 876799423 487298500 966126225 658024459 972748693 134745227 124986905 937174106 443231973 730373033 283863429 685115957 818019346 757231202 578068350 551826622 182226514 947259394 995691516 760777124 905153179 243200731 162222395 210276384 524390058 942208325 315915964 504790509 941269516 336327843 180644430 86294610 88703249 868768351 471687941 833771806 937566668 6870252 29675580 956430761 839772451 406229191 112149656 613046733 422496189 259721581 925744389 171172084 451198727 132351082 431218616 443862282 700822589 55548497 969494317 107950982 742218077 84893116 25643815 243643495 831409713 39545935 299638194 865871665 536784710 80563122 379021862 886440949 532819193 670265496 29014557 970363974 612532326 230820283 157324921 290681927 726600825 183078620 431314536 40092059 970055393 712970184 764662369 814668398 661012755 650766673 277586203 293130365 992303955 799155278 542422172 162814976 384416168 420918436 835286836 159283902 781236962 252007487 333237364 576591626 450830235 791063052 773128760 605317814 73358128 963573000 842899877 385747488 262902986 104464694 957117993 906040113 129733213 58093217 781102194 468371541 235508126 604737112 52120452 125452675 340226316 790506360 253292961 630327098 159884532 409411620 547002707 466042751 536175714 598946434 884083311 598108385 396857902 457010633 38466832 833895797 253815805 976616240 489165471 908028891 326375730 59245819 398889669 129289784 839349758 833198451 100654709 979087676 644505693 773962219 185354477 564375323 706031373 514287036 292709040 775589525 367520404 426617674 267474573 302468591 976174150 734150400 7340180 539135479 135993144 273429580 257142567 625045253 913611599 700000431 15826405 270206967 392329772 540680357 596949693 509122352 233146951 53629626 440162529 928591266 358173648 511408258 805519313 696010690 213697488 602191767 515146829 260942478 657481483 777814171 24471394 773849742 429649679 585730612 997113704 241914063 825368887 196725274 71801080 272329189 724631459 239873543 804302839 398670065 127295036 853320889 959957136 800252568 855902641 794522364 238521402 371325450 41389690 665440933 576233136 810732538 636115928 972469643 483318516 137903531 836291794 258156691 1739863 140926943 672461116 816885410 915811689 410891238 219839659 361872305 774582023 448938135 405891454 180426166 960172374 493625677 389977056 709550004 308934851 38572784 30336705 614182070 709261057 465105651 302659798 968625359 887460876 881809989 484233125 525809175 129248043 76090470 627057776 403033011 510177767 712626785 79562573 534320328 976956180 265130943 384130064 115107726 472121296 772183446 987143005 453351999 67905153 731972489 931489176 557994008 669729232 539946682 501677044 175406698 826848691 113873626 317394793 572369282 382998628 733392158 223960502 995216829 633142122 121826626 604415588 336502394 57185427 289916562 273201093 540175656 734837996 75007703 739733484 770000950 736284121 819345256 256247232 870432801 49265656 416389159 895865317 407242343 436722235 43958901 124752844 339252373 906826963 550199363 69122222 927128893 172521531 806577929 183322250 82093304 996749883 647778496 26162475 300047725 979188955 771101941 689773854 618330687 69313907 554295216 867438780 362636326 155482012 413767819 231888169 160817624 971387452 478136227 370549063 374181660 665734787 544002718 948752073 372390840 553840860 486629292 71291689 646664321 277727756 380740226 149304485 728227918 549557781 177838431 618460998 711010054 480865601 164528135 921627103 465756815 303158565 288406217 592505602 975642078 828399516 287881598 8962069 275536874 594525646 835252865 797415484 108812987 677930277 188783034 566551915 925157972 552425044 898258327 99005272 99922380 465334363 405873165 517249669 718292541 381443962 860419484 644579127 181859272 487587392 873303112 172096128 931507352 995829378 594673316 936934202 214974943 305175640 312059072 773910789 515159767 38539051 87278399 621788998 970796993 433171109 705351237 416734768 576674024 33176506 495539841 411266491 374708130 164776870 427442729 825328295 734577476 742193903 622950394 563564925 958567987 164352609 79787581 156225416 285833433 114158093 252200383 456812520 282664614 828071506 145586388 559732859 813220120 283328212 732743775 904422631 586825904 112833920 229192897 832194458 244045815 804620682 965124845 290791123 737900158 657930862 287066453 454704014 638023650 632048366 223054586 497888916 749737159 338850330 359043169 420241271 70196691 925531717 451634331 993628555 123986104 36430345 486607416 69397237 953364789 721725772 671973469 451996568 835249159 892068410 696249261 625688106 57099260 788744264 33844567 799838496 140855012 489104690 316724241 654523834 433467546 590196219 354843416 110264578 534984195 409369072 623130935 277185223 45810692 745580968 223404981 691042978 881030803 666499578 453735279 572446962 763288488 832891151 667710909 315505633 73833030 456335185 45681034 766653535 805858170 944921202 809852994 606570785 838403411 203757170 290722526 640985515 341565419 49100949 38745305 903471940 184073319 659407460 175638330 298456060 82817518 493598393 210640272 716075436 78155445 943966888 473245427 518417653 763035892 714999967 5814012 274470973 223802353 881231169 538699993 135467191 999045873 762685064 474820656 181075798 855090760 379438255 539451964 463546848 921931860 428504891 209279675 597621723 955541619 863971317 514385137 450400662 172093969 521567221 204972718 767282988 557921185 757112469 723951945 394277245 457465243 87363707 986006686 143407918 760491392 787163792 743186966 161097651 127794913 395650317 885399453 395429953 744878665 154511464 51094699 423680218 37497429 861544557 84685115 777666887 15526056 214319906 817104086 35085334 720593644 506455006 889328523 14979488 313716690 986967612 423302894 104635657 365377046 152731426 14615328 645014834 983279994 853412795 113733060 117096402 976320456 276914299 918615819 775186014 995007952 136464927 495003817 929918745 915269743 460824235 553735900 41708551 805609350 296051818 714908012 285153785 934941952 660956402 925392041 168335242 888214990 110733345 480477285 771944984 571412716 21525270 791934209 669326541 308743261 680230723 82936931 617658776 265569321 462086486 728660216 111486515 608843617 804991571 985647798 278474522 352937762 821247606 634861087 89586330 444155277 752641616 636377909 17162688 608184012 645987766 426147463 598478182 734440981 723858624 375427628 207087404 205299868 502726872 407974597 475628157 800909990 143236518 73486962 792759683 361908353 403471390 95292903 333499448 557052280 246456193 803491159 487196512 117395692 888076367 525198208 509320579 151394108 432231762 500576940 246640621 679348946 50790053 271414183 403468217 464485153 790633118 349459141 227207367 254073250 368444647 398162663 810903230 691595995 235315046 891070067 25573905 933711184 332261716 530890325 918686965 630694555 979091501 658495238 115352684 583388240 248879282 158241157 577379649 732098323 942715377 13824085 429232895 434163087 866119233 412569732 559749887 512182647 998446649 345762476 898228581 591203459 654281665 228953067 492574231 34179447 31146243 162469603 737747396 757688091 805537654 35903685 146067687 835162948 247273684 953619015 879442108 341142475 631576611 992571560 973706833 850037651 160391853 280480428 976344434 33600901 933335815 397193124 641213370 849131924 507938319 699549284 192223623 889121210 374019558 365577294 386245379 142593786 319996669 841178691 526607130 756299357 998081796 739487668 955714698 129682423 835555320 667493272 202729683 214952417 438635806 350473581 414168886 711612218 989906949 610091574 116345292 532603698 798421885 773203845 949558888 958910459 466036898 777860719 669235119 797201867 641355226 25242771 409671683 113435622 318964179 805166356 928456854 585052057 57458815 591694245 854329957 243364144 304814106 956571513 699390762 560161548 481337384 826725969 952504946 370433677 677088889 738309487 892581515 541185307 481645084 224528036 459654029 112901930 67646576 491959113 215098456 985957173 742197786 346071863 909404055 747325629 26484228 32878551 259313334 667788106 965564004 356927255 352626419 554524021 214225847 597612651 694807113 472779731 55703487 325605333 813732481 168711684 308566153 594871003 250876973 792146875 199020906 815569287 193919396 545469345 458551805 224572274 524080136 553090677 669483302 929418429 985332800 800769017 906335765 820177672 836469245 256423926 246528825 234720903 320131765 725629249 498118480 412975342 11323051 577871534 339000931 121102971 869052900 154539558 592795831 803804917 239388980 141719955 564017635 55459497 487373107 887675872 595258308 243756397 975631165 668787214 602524545 730408866 187019902 614942750 528583294 415498029 808066278 44122651 696601976 653124217 195386925 654032148 759360361 950209408 716612305 954749990 181246609 915016384 175796508 221669234 11106176 129948734 937329185 47790371 260816905 712263306 760031411 193602152 220200522 258351544 336945783 473174146 112213413 289609321 577920209 481147822 435577287 768593086 735634420 545608246 591611300 319745901 728839638 366351729 464219770 346654372 649111868 499349173 375181005 323181862 372762282 27240549 817758055 1131322 761498481 471125227 191791708 100512684 572845224 445482426 120484875 315099860 890999346 778850381 352934935 421721998 983371704 897807652 634040428 145489986 505005479 431052493 97157695 574947295 302384184 428361943 897103115 63257817 578579564 599020765 846675861 628054574 811335434 561822592 451309801 145721958 758646180 571742573 522555739 610988176 480553874 636374101 303167368 571359553 817645300 269959153 684747604 409863062 512196531 984122117 328513260 95382582 76671101 887075418 686072261 183452242 75407820 381106117 555484566 234554524 429916384 312024858 844254568 713283159 700430016 396755269 846215305 992183365 139188542 931600166 421501319 370929589 237364723 629894327 633936195 582087548 601825594 184516077 867422688 893441791 876106562 680713676 503818699 608206109 717270777 278469985 660427446 237423431 720421140 839248571 282388127 303956083 293980952 95666165 370859210 684622367 198442570 394895920 901428420 566943056 981758652 971679896 512788830 614149016 159288388 128410464 332963770 545883658 656027015 423103680 841405494 632172103 232766182 492006396 559978885 170133873 812327320 309132382 56149397 466591547 231341715 367380536 953890980 255350998 391089557 384687077 191376440 706866182 425639977 416228036 794126364 975286798 235117215 923392068 65113956 28817596 511812877 176050899 353267053 827307369 596824149 671390958 661532379 82415087 262063904 555204630 854628506 679792567 513825501 627434454 766126814 383578286 329512132 649787073 650769445 887417933 743180502 648128879 695558195 353625744 108658396 741172099 847216400 798786301 982510948 45589671 686056469 620758946 689357001 166059407 35340509 96242711 68293161 479589108 59846221 274782329 311673964 933442712 626254732 147033198 514670919 632553543 465024278 273451045 858905642 65141457 786193828 453165909 945394525 629962000 935673656 254117433 792073957 994340072 283250721 16384155 197436816 85603906 550898674 48298185 883117051 811998227 617183881 8995989 278877059 63509330 307010825 857783395 272370511 646487042 386867420 476591636 58132307 862586414 892059323 345958427 647398727 116594408 127631263 857157738 219065767 923579211 159817675 924421507 231617216 257196919 103096271 970667883 493381024 647776150 357296509 906783918 764327198 428713183 789519090 77413220 983580382 235162761 17373074 414733357 592809030 711714005 147737864 396705068 529418629 471266830 257296458 571441936 17693847 317117832 912490133 165157394 605418038 754158748 178287723 281715438 618681584 993940397 657855129 310043114 319774741 314956069 292888373 864254420 988187321 620000884 93113495 422280452 281156801 113440023 648513641 341356119 557993425 785834896 688552080 225047605 546461789 303655529 572625993 557686152 458447003 599393075 472007945 738088651 374394251 943021960 997195671 327564025 481244662 143961613 18940161 395199130 5194093 723572585 559699862 565132989 207622982 120269648 185673720 938914804 317905830 674771838 156566027 688474467 199503472 116382898 436348918 35342764 872068183 464123321 207801137 485246463 368399315 197218 717797240 914639123 281617443 138338445 426204112 672428580 708306510 35674389 989299587 749876218 932227627 108135143 994064679 555898850 679992651 834145270 960770967 541083316 192427024 374317631 507817721 940197327 116582053 341331646 372809655 743873557 122987510 283587205 882766727 600460022 755856062 971762591 532524644 424504173 546066559 31655464 990536084 696187120 131123837 720335173 614197922 249185420 927476940 576374814 698595939 468067788 417302336 417809639 121133554 330493895 920626303 974136790 441595829 990051867 226694381 93781557 62051925 886230511 953199034 704611654 774467018 244164337 581439969 45074785 549917774 570547284 496014624 387645660 988828007 655665629 669390592 755979548 881791198 549287629 149875667 51760524 863064525 314764533 274393516 625005212 599183752 947393449 821950835 528015561 131611325 205719238 566414280 388500368 801053264 554078649 843433507 910881920 815573112 987982441 739331511 332264492 823842228 492300879 20034692 50641195 757077957 654125931 900421719 381573918 604809401 74755902 519854013 970756021 127010273 454670301 700255500 223123869 713352412 438447323 130682219 58120595 721661073 425367636 730446778 837632343 225329190 801004018 194081198 912375476 24574484 623877603 30008000 538480766 356136727 857608155 449159470 23470481 494177071 718670872 835319555 629677001 39791277 811005539 917419788 923724565 609728291 997049094 524601826 87039588 862763117 481695196 915753702 948653236 554931120 224232770 43415872 569046533 650389082 789275933 743812320 651178080 424567069 546585053 950451585 894549210 60038388 308118388 89227678 476117647 546058790 149671527 29003138 421025691 808817982 758961332 360925759 22573613 422623248 154672368 559439531 873837941 847465658 2258736 321141862 813535406 578918558 889862673 130554587 90107418 16064363 137566648 332872758 981657606 431471632 36627670 737416308 821157313 865902030 908682144 114206800 33667236 362897707 287523028 497079897 39060247 640490221 619033784 65332696 962888060 550339885 172502556 636930024 400184654 574283332 744985429 173259885 380582401 697364441 238581568 916536075 354879003 309304791 236419652 403044912 474668578 193163123 483079505 257052189 757845932 773229094 42075868 206993352 672259156 71581882 274262499 823749632 100993209 40377398 515146476 331766357 99001222 32617714 37343495 19038746 913902191 752735112 875093192 164996983 408277804 623517663 750402895 968092749 750525058 477493278 984946497 739855184 675236664 418767807 673493965 170801912 110730531 628549243 852371881 653693061 812101149 324457814 766985234 909970175 275468549 241990047 359025105 234879028 509140681 953875430 727098419 466409410 652445529 593970445 608053772 400734213 170156721 110325554 747356863 822459684 905078226 411937988 657065774 301259797 319841223 47404921 857886408 661106057 429180577 26818891 546715783 884117764 629514365 670845312 762727394 43084753 292794489 777812898 723967974 612709883 459476418 448209030 632097310 8990044 163567756 545855307 737934755 650911894 462846221 967616593 106287630 189288464 199622794 591827015 359801994 382855421 522684493 336918817 681936580 308976719 392704681 828980505 518121970 855275979 230398964 924301748 341120978 61078262 950038423 68413634 648439212 63808549 756702455 266860372 322874188 832912748 46677638 542677702 371836936 398376367 957893827 930427324 347689920 281215890 109646124 225614116 887474136 793365640 502455629 863120179 215707203 361435592 390782902 803038818 318526065 243294548 25544454 827597943 76198500 374002931 276140763 646675326 462524835 138052916 975863521 822379212 420723769 952590961 840576971 378370045 746559422 790448587 410765392 603882484 188837969 193521703 396646964 36565985 620186007 612798776 830977348 218653746 760316864 316513910 567878735 812007848 981650561 336390690 509092912 117483591 594040855 610602563 893735625 844546649 588513353 852292006 731596292 989300594 727342438 836389611 994663638 27629939 480668997 46247275 725237815 565618043 142990915 93992017 317819431 424348919 518720070 355883919 736966837 461468831 334925756 732423387 893789934 716196714 607080095 265957556 507319794 279154081 980682089 636725607 882653150 927783374 337225760 952579071 474802401 34715077 255053141 570128214 979952683 150810018 384252700 500023055 799645940 118741707 92722708 586626704 410608515 879674603 933536870 940224008 146461725 663943926 924487357 740253554 7703064 719050283 449918287 620251021 587082957 674280712 130649306 872337118 757013663 52946016 301543336 708212410 94389239 900426819 965694595 512877112 496500807 370736913 469627845 97972536 929925386 672653928 526376521 336556387 740670660 535751228 108263030 31726375 366520318 903090109 737775930 736538302 387960393 640336485 27632911 116554022 1217344 292464892 287422190 450637101 234101126 21314702 901453152 886532701 5629381 565564782 250962802 756934158 136085420 70174778 910837692 530176103 889955578 388441811 175546715 487089482 684303985 754998633 949526774 710257002 975017176 226653549 991733178 63771967 719771650 533121693 549250142 22943750 791472588 268245500 378147873 625450701 753190165 777619675 926431689 194137953 339710666 445345222 641174179 708305754 550465242 400171424 876617604 58798872 492496195 820022411 49688527 314755271 409617669 637084915 449992806 606850384 843880747 875640458 232760507 672849779 181585349 104926546 1111489 740077741 432296176 96845450 166010613 429902916 854555087 502606272 949710176 41685579 643118472 474397643 126826130 816043673 392457296 954004931 556168095 20042704 648441954 676141071 130839586 413142102 509219073 138336601 69220680 7780701 911397236 529704852 449790650 184410588 22795792 485331714 177165745 585712021 981085485 488941861 564745707 62720527 917329967 81639365 574184619 859465113 497452159 757699067 625113538 228041292 214837392 598673186 313582728 169979147 359800028 934844892 103605464 691728506 298501351 479471899 665293850 304195599 202435641 449220364 315126845 400646906 502426466 308483633 684272818 775389506 366132482 944025675 31481214 268508845 149540537 398225766 824705573 817011147 797578798 172419288 363866805 445942517 671739417 206967358 826325699 70784330 936838446 225541754 635915887 616960948 160894773 922997433 126962525 433950179 272026610 30430065 907649981 977670477 44721215 579229019 182490951 944861237 54507761 828455548 631742005 814431905 705903594 601661218 443077200 330595682 852930327 918551779 447484391 198196498 686915945 679106455 176394956 594465550 362852312 50153059 770360163 692565635 724412011 404225205 413726606 241749852 835723046 149363008 804801982 106028372 378785058 906251008 889936872 922554090 309879159 89522749 9288331 507738217 707984964 481005949 651248555 393863903 464699831 750744729 689212889 835531555 847057153 415375786 148468008 375373528 1830746 768045080 74163258 150742884 567875849 125787533 968945458 421427962 713622613 816400124 595797696 954110353 484180111 217573285 595002141 853089767 351801620 939389959 923562752 324753031 929957959 763745010 945868982 123603135 177769104 899833466 908606730 173883817 156973409 238345468 434656853 571238692 131041847 86541850 982319472 180307165 787328913 868966849 2167495 955654460 199518712 267131684 671109445 157632640 650113285 374522819 219340129 197823399 781354572 571281502 720859673 459417462 421633651 537078279 523716594 761653634 37330464 94676235 313691646 979362082 743563531 904672779 99585232 560942710 559208680 946440424 575779721 790838119 262069886 351101906 456910538 559544482 865105047 380701754 807981513 403750564 441233154 386790367 799068981 938815658 84219805 445407173 858834513 567997884 122804039 608958261 722540510 600616876 681146090 541813447 188288819 293544467 213869693 255391572 944811805 694391628 419416564 461753090 143618305 800348551 190937175 663447103 807610817 397877679 880924844 580520637 570050252 831051388 206934280 757033081 60696345 659824499 541699461 693615796 578630697 752234967 906613571 909179136 928857340 383781306 136221036 819886638 244052263 855178485 337070135 762091355 326733242 145168424 29535707 383994091 536091737 496703419 88984984 648779657 125932068 11074782 227628221 999550250 120929488 532326539 837158806 444650509 790412175 799366270 386105989 983203250 680673313 142703172 3757286 419260904 159498699 584543789 479908904 677303234 158049883 396238925 921053371 574427294 338125609 675469192 511284503 983794975 981102609 577973380 533762241 222654511 36495483 80618674 720447811 102618630 276142677 795783501 352153903 941027103 200905493 83646032 673503519 473223996 364614841 279087497 144381109 174636140 16722121 623453570 348261786 667220485 83581776 126005401 805947525 555930527 347649510 141955051 672627756 485952542 800009386 623708770 790199891 697671858 85687617 16380845 346098371 343998414 245293018 887103298 176792654 23312941 460325419 427680103 495450065 371900370 136796275 397956641 625554218 183371023 411351158 6928447 277448774 186569586 430007941 655331418 452371480 172737242 152152693 170310101 817872283 58610794 594104485 712944083 389071053 525960595 745592057 162233929 701217723 716531459 363421153 840535791 921363831 850754487 386935635 328175171 273854747 396390390 970767309 631045260 620988104 739001421 589301590 837759710 20186284 329185420 251824250 419231759 2128887 48805587 153424212 8781248 497510368 278434949 189382271 839119706 612060334 902731087 752671263 901010187 478122154 909650979 955804902 621783758 216588583 176742463 912685323 67149664 832902013 563405862 211734855 510285645 347925008 10528934 561260516 711581666 88113993 845264850 158383027 414369849 296725659 934210569 572874500 624852019 639777153 652488426 364750008 645578100 877417083 170108519 482599734 812799602 891196949 230294959 185921391 778392930 53331424 295399490 425037779 521790788 303157112 430834403 910039907 501727459 378982270 43720349 722159780 76746186 217968287 775463366 75645097 489977686 479796873 502607610 27191812 168917928 621068534 771870237 5016532 349079716 366617262 39859035 139202752 578950908 995720310 909784104 582483956 572509994 657668130 205426242 218490923 268659821 113924493 885344939 705405086 47164362 456214934 859697841 780411414 350712600 114028333 918947558 281542625 364628458 585357886 497271336 302830805 530114723 956419782 711849628 690172496 870301544 823094731 516629677 357360440 179533613 102203472 534216719 447212797 652360870 80993900 23994047 520969363 995534169 277292601 335808000 738295674 656974986 686355670 408924000 546087094 674037322 45956978 258383794 110491608 808702576 468956220 627087890 353784822 589998497 220180336 237955815 817365677 763378240 244293198 182164699 993931555 39585665 336573986 201603553 641306885 214247512 105217343 222893622 72761741 524272266 709217276 668719970 195517047 793855900 213284801 980441389 580868361 41826784 298673136 747677866 539525394 469240685 665282819 867474746 533454313 388509476 288150384 75332479 501717865 795629997 360710330 466233445 570989308 924076665 412128879 194509344 213134990 612535999 992536859 900835117 702796183 211492479 56186715 683870033 772346388 466106243 600051920 162770068 485782410 687712859 560197417 537780816 650560523 14133085 562457875 662771742 332984107 528282541 973832523 904832227 36950279 290181678 321037200 584046028 64619846 884085398 782665137 913016651 744516120 514740824 650069630 930105887 688544561 94067640 765020368 900908619 437163216 259329215 407955082 153731098 813249212 69813307 424864152 313424675 417487684 867481795 827601130 726717246 974995516 779915193 785187709 261469589 586205189 744854596 869590862 144944015 608480384 974906454 253877358 259931618 629835298 439210409 990650859 720276365 980359388 738145976 887558367 152273 922819886 379833295 294139244 963590715 622402849 261619708 378014145 38334881 299217727 861496859 40272138 307216666 259490208 885180360 769994886 72248339 544142563 863249007 241449078 829493807 284722988 429411389 443774242 465293929 411160876 411542317 427075039 702620665 734334744 612716538 103145988 33192293 743443887 809850676 159521784 13206907 910545204 677635622 858127907 944278091 844778104 523516393 419652085 445973044 68091349 874858591 210229482 234040027 796608032 305303342 829514117 719779371 637407688 46543047 807154255 598112088 156776374 61189989 723413724 474649056 164854372 693370883 613701316 14329989 263692492 996338029 770048172 357374548 221806969 724586803 286707514 323589026 588857716 946935978 17792550 571980554 571811161 20806648 309529380 618716274 881772096 877157632 469511933 545341956 459526357 764466294 824887412 342671671 627591747 317041872 58990435 894664132 647186240 63052111 973392797 897089203 316652812 28170491 773837318 313098058 476616300 17577890 505211276 420576806 926263472 199971042 145185825 542122013 672914604 723523350 86756281 225898837 681839040 772231272 778330972 453664315 9942225 101514699 488432658 959499904 455605070 198516721 567274480 136802340 350997549 503766111 415747852 988794987 363474668 575339613 660200077 123128031 38626962 2063864 457247639 312655447 534134957 203498764 446521954 735993322 934288979 263260728 25185062 775013892 553172768 911716837 477297956 97329485 591305791 426842434 919386027 483789750 519421786 945308998 633952007 815716227 792178603 912323509 892438421 316950577 279089389 755498002 377882296 503780750 957265000 379114674 415514587 191614643 231337960 603225517 485039981 14273270 280742600 528808928 852473323 357598465 338580193 984700406 443080918 392454586 413281181 749946206 362592184 724641115 222132456 700917584 894086950 739117147 786932280 127385038 371150774 593699459 504930190 453983903 145227534 328675805 373306990 476102227 822774487 155259324 799581415 925926721 46355904 313991615 677977231 439882380 952742024 221274312 785760131 749491484 207821552 336489477 472960874 316142239 938247361 751807977 49713780 64507023 158403276 85797169 733350487 418393388 304637425 349880801 832525648 859866239 697518604 736364101 440852261 154333012 531731210 918946803 378518565 910768714 886732764 757529282 564526629 543349949 596661631 580835292 861198213 582337493 731640306 778700972 439180330 702486917 972773696 308017636 66164867 591554435 944028287 266625669 725171846 350895182 796919490 261355212 876794546 244236339 647023666 495265610 864568586 38142524 651142902 526773205 971427363 427552582 384596544 548610693 970033164 166260978 211940173 252478142 249068903 809767077 93801052 705276465 9275480 452417678 71496633 265591758 922024849 76350634 687323318 261352147 503745863 65477558 803865773 805830084 589391925 919256122 649884673 79396716 809613987 812392328 779673883 153488866 530549600 985779897 807325551 720327553 848657605 563733418 873731700 554380781 962491306 38271495 742446254 149626129 675905656 805022781 289963 265949219 361559585 73735303 715705848 472690334 762822934 284682721 789026353 504481608 453605974 865819417 257569272 704582957 340353643 574194107 472068089 245951134 449833569 544442654 6180834 129659963 536005837 520321896 426268531 603170278 485705420 524924542 178849130 720620495 694833928 788836625 87865492 188277605 39359664 870061462 642474688 830799463 747692663 229193553 383366092 879504344 234812827 40288072 702932632 563854599 309193444 897197902 400698382 792344709 90464673 341663483 912053792 558326065 881581220 408414890 182377677 270853420 364239697 837563531 15229198 740963559 28606603 658535814 196909047 640180242 688876992 505374298 796899218 967055531 452407270 807629958 292382720 58484213 16592510 74455889 961664608 713028990 926964365 203517128 972370397 287665179 636359073 633070281 227383977 626850021 708723918 469028338 24024828 783783489 694775221 356189355 109121053 52941021 206766972 270495778 746430801 302830764 406327761 156566356 717573359 569817068 188793832 91655679 865462092 720784927 124140418 850757547 987580881 958418195 630667750 190767783 30717410 271412187 777587937 550675212 735124982 772782035 474620361 190777277 95805573 180034465 777690747 382376799 812222224 612047918 769091166 800546660 814568741 73932211 233194336 876020483 894928720 118004904 992785658 85433405 512477747 550403285 894923048 154918105 965102443 458875459 172378992 491429227 153317027 521143881 946697699 793934916 661937294 107526783 459995155 201692300 169711591 186765772 508398111 39576872 853477486 538883423 395162033 277423560 217291249 905164710 947835122 396880868 754219836 866853731 993364380 639148478 3786033 43424920 286652910 727504732 975700396 326067088 139304875 950140305 231456410 183117281 561942819 356074739 652403950 963409766 22067757 506598625 203054496 338059078 565594917 915222151 198062260 903810795 737469426 541881810 144782900 959320327 337337093 601448573 27135792 960543899 729400400 632429316 386382022 451398118 125174357 98570676 257287959 776402299 12561175 295110557 341233227 414184744 311807782 347703698 715245463 20753164 371166361 948666171 852975154 81241227 635668490 340081145 132311651 219043667 972212646 60319745 680338544 372435538 411241495 76055369 65285038 959685836 478543764 585372304 203441527 728607554 124629210 720547426 343108137 199497345 956590131 522982924 30747188 441906331 91841128 420639913 278875912 404825580 24642002 808652311 570962463 478630429 40252755 567845888 100728314 561956119 321751371 23711955 202652967 219893773 71411371 9725640 991886642 422144124 724695016 701256929 952209852 635116331 893095938 449175522 820682085 492099875 456709502 300884832 690757333 618636986 706155370 261913267 783904705 543557770 843804769 835298297 170702307 779389562 580692856 988208923 760785403 641153207 935020382 329050825 258428114 87525555 166976316 668597116 344867392 450722856 585424845 908724341 1045020 723203615 153712712 499540152 689729865 636034531 700589946 72892955 33793199 409336325 996180655 619575858 41191490 663394660 107011260 363091294 311573503 272790055 835989760 344727499 841909987 415086772 959863907 441171044 353639928 159453380 682719312 16184804 139062103 755470416 489440192 104562637 939739924 391317664 632824880 36343139 732141652 770917695 784650408 749520056 452761666 767117565 810637490 895233444 615239949 437015805 679155562 916645066 926678770 101424541 235335785 936737422 538048818 759223694 394211545 704690725 216010009 615347906 437295718 235116163 479184631 601154422 306643014 176571753 535729447 422171438 605582395 559317600 959389450 853443511 646306181 364950459 152370188 689903650 805565433 29150605 229567137 81172431 440595174 514356411 436093247 991841121 769137203 728763369 207870827 967169988 538351934 971739784 66865838 534153004 507841531 659818964 251126685 958170136 262705116 683878347 652371662 333169225 58585315 933691444 123203558 640607691 489397397 949408672 206122128 427270130 282628349 174122600 360092540 231591519 390364599 704826796 923610981 541086195 219443418 633773143 908038156 716087254 466169365 557175314 531673918 927703684 189402001 797812827 626474957 539506359 740401922 612215152 499503249 746683503 975158957 995522396 851447661 737083389 806815314 722102509 827557965 16900336 530875970 80136890 984295456 882031914 723162709 761177639 832361442 124195278 99927780 739192406 560713622 826364487 165880796 136557377 214398790 222335304 601534375 249459351 92460036 914264528 803435579 392885981 386914539 881186851 195500566 832558680 710453275 678748360 345889089 795772956 628208064 598994842 515306057 37605119 301133580 921425589 422197573 485150370 871308601 252151161 49348304 841443439 489844363 829906834 852491538 440154769 516770633 48129528 355162812 374302471 627748551 804059622 918202880 129600650 848375391 619029984 954126240 419700136 600329842 622447794 512725985 639884720 688763757 417018995 35744144 523234232 200915136 198575992 698924803 772323236 708742121 910528366 486683 573431065 977646437 478522938 890386490 480533129 432564673 66436887 819643730 327423018 581761679 833788282 609285849 555062527 973881705 300072492 119956940 229471183 506649840 837461563 874193072 283845160 145755090 428585973 299688599 693141863 785147327 181928954 62235157 598205867 540126321 274177073 201820231 978245337 779800232 400817344 691820498 217321890 447321906 729883937 640764907 566110851 538930657 140453642 938085698 629592246 152854669 657793414 891659033 966010694 736977944 374178780 144392243 571974151 94903153 317367460 837169118 137181322 267562117 95686329 111018740 701835061 742427473 38955071 278006993 195568684 242630868 803384738 301746780 855330403 191923228 310853271 337423107 917232783 920504635 674704150 299018683 237392947 68624456 753627243 949126661 58940567 591215722 198839324 67468514 815065032 405868743 545055488 805118950 33406881 583455634 535275060 540975143 10286274 379585289 766397466 462440255 57354132 649597545 235268959 898292308 387572550 943407870 109832697 908226843 412629712 109128477 197748256 791470788 864739828 378364703 993527644 31330576 385305145 859340386 979700088 461324612 296638958 365282390 60774283 274022190 121431853 347953515 717052652 819685927 975468758 439862297 262763074 354347531 701929872 446927846 180703354 733424702 135629519 318598747 966263239 210915509 78086599 406489097 282168999 942803679 207641720 231233419 641074906 213442748 622734510 290792068 721332850 803955670 863015673 14262940 55681215 509423160 509205932 970931848 123902302 182261627 715101166 740217602 585054006 906085817 190765730 569018829 222472048 944964250 690689404 882487471 634707075 316790348 996800496 32251004 721029416 829024905 496317508 885930001 964819812 556987787 522154618 232917839 24120711 163571993 361515881 149060637 550636320 640287619 984136098 280532336 982122000 695391389 854200970 340512836 312495479 66648775 74376009 298307739 484907204 799749604 474998220 664115835 376148651 159493734 460214224 641511161 10167846 691114564 497860050 968513838 482030973 836196856 461907994 189849921 5104441 487572876 639359418 149094228 291508526 680189836 938242954 948732578 858817916 24919056 211692843 312318558 558580613 328770484 775877123 726240465 278730996 322768033 422577218 446160958 645699262 441098114 240592357 219180541 851581472 425709711 188400548 382535015 214492577 498808454 399889424 731197147 878940678 991823793 370844788 947467974 827363690 344529622 704620520 648443546 879358503 907832915 192668753 842470866 904787422 476986626 168940883 274492142 951992960 279998797 390930780 917178493 202417472 522244637 21140141 933076491 320285081 318922730 333656636 163700021 303153232 883828150 706064601 71124126 148108400 838607365 418110992 769517809 573589584 263639011 138804539 724339165 183175306 511901671 768457339 519509791 432824580 928642866 170460085 407220086 965178344 990425192 451899293 683677106 535804077 745210041 381143720 305814945 688269069 626516697 923987993 862445341 763480076 667709959 476469494 666393355 383937273 117960456 987929362 363650643 832844388 9994543 764199938 292714215 102940462 186949452 114143273 508651203 346811769 535295682 289263020 131196135 473672622 937089141 361493888 973132384 89214343 354171348 632254553 176356671 367187198 121829332 375005112 907197340 181448023 297249271 645014249 576411294 949509148 874200383 372404727 547970924 26887716 358638395 765639868 721281592 239540877 452702976 780556251 887314238 967248822 124678194 478214073 918054849 551725649 97622515 954416009 112478983 864096846 709818865 406501950 755295076 785654250 502991715 661013406 26997047 627674794 842817030 609019182 389995483 35870813 286444835 854482752 812908734 737730067 856123526 575891948 750118484 149849897 393340806 53392403 531770131 511977026 418705411 312914011 473785985 574846030 608641376 680169525 354641447 612392320 820643724 582068441 462885525 951994453 850473985 406280776 326436966 503153292 632210104 498025035 257582913 148714040 887945017 410374512 718103242 558637226 692844949 856279568 291150774 803415425 592888156 514180431 533122753 290218395 108135093 154449937 143350698 943321642 563582271 309116932 676713533 522112929 545500458 550727846 107850060 909423291 585962031 768084535 466039217 523914620 23432329 651360442 514611023 352809011 444106753 933863682 233821198 816479857 438916323 814715307 186348258 391973909 839528197 216521231 40542919 264503872 921203399 307007320 367750077 716785761 587605517 300772731 313915340 550446380 933862216 763681322 132459533 849566620 419534446 258618856 348215186 326288375 399521274 266891519 66551941 508287176 422220791 329482874 468339979 211855330 927664369 326140214 191865431 321846116 253803770 181663957 319635878 354053809 574768825 261960376 649337142 85565812 587229773 225436436 149832535 908377765 601340007 669383138 691922261 280206716 366666044 229139425 727910031 453691007 280866702 958155159 412083043 808535674 891459487 346956375 559249471 221750146 681743423 170104121 294270613 156005874 979990979 503330333 625801692 366720366 785708298 654526634 29973659 154992614 612671100 964667218 160882519 193723531 519167238 169885775 852151718 444312791 937651485 458662042 58230560 538882962 427603905 273215749 646407274 321104329 118249334 883484440 311344172 110563276 825868622 993311279 341860891 746293821 575510490 299783275 772084205 452111099 902373950 657600434 283525735 959369266 379406620 905733303 674886225 546141019 557537700 306493934 855049600 601378863 174809743 240092315 250832845 911705011 996234004 511233478 676343322 460209973 151718399 439134012 16509778 841362757 404476573 934403227 475370345 684967618 852044229 344083004 672919124 184161744 194387155 848916558 798060827 933856476 880116398 986318268 306052803 349008793 278102724 258729795 309360995 375038981 259772943 100591712 481498897 382433121 169574408 492605532 101903603 515593018 416056248 507726662 573095984 178174569 573743788 106798328 257954046 628835333 215857661 722694676 881856917 393311860 624800582 804953854 654751543 258941026 244009903 343337705 184312623 806552005 354679526 958571724 863897548 653578452 662508064 234507881 861920623 718734619 573701404 64885063 902940021 463671904 684938531 763756468 626377544 814497721 727327743 575413197 2229597 687540868 397099271 15627887 63895598 100221797 49514011 579121731 471796027 472139077 812172960 697182907 279279120 514055258 847229063 809246986 350190913 940561699 446994243 604567351 463422307 328719713 587326162 671964933 129689629 840187680 156254909 473478920 196521238 879633334 51136270 638544789 175646469 289430208 270716256 87599054 74936478 257570080 849618384 933800092 143784361 234580482 815787011 47851950 483308 585758686 113970216 690222205 904945212 911555437 672416244 677304649 999907696 768911026 549629351 341477401 449602415 847832060 654604551 140095934 217949215 244943585 387859040 614446802 585934964 710542137 998832012 306447539 744766313 193251881 552040167 138213002 973942015 359690015 659696726 932663880 841910080 324486862 151635018 346383780 681536833 76293171 266800825 571569439 191119895 705693074 970221087 773384449 79246313 420811638 528280195 885605978 59739361 939802551 171676275 792712195 323070508 219759724 876649991 913069469 314126093 723077887 980404701 622584460 484911550 660224791 373445659 69937415 749023885 189876651 689577325 901622528 915227340 986823158 928653834 943698746 714948566 314827903 674598068 817008703 28636172 601836044 780348334 867030875 194881496 119205048 563924934 840910249 888370351 457170654 476956499 482080521 408725511 941660704 495741237 645231908 410290789 30295147 12335567 337419881 176383058 258898162 71760910 278140177 461706595 478444342 652908654 747934235 761722156 932255223 256350187 760581199 64152150 585593920 4797195 186710334 207832970 117853801 835262169 178084930 206985848 899793165 448710127 371315579 187988699 978387982 397743467 685512398 356558709 418931613 289569267 26988782 355249424 311574313 357780658 71897684 53337982 157139570 399354469 311739454 537285788 722968186 671846978 497622965 553966411 688688271 248256791 319691912 37759092 540397892 753503277 558248531 173977098 150445431 316869213 181253491 856550918 168248136 565264131 292910606 721423725 821727529 368061703 331674907 477732167 744981706 796910550 440113996 858789799 351301162 999411304 93204519 566008997 103742602 132635707 605610222 51022185 270482810 8524370 293385655 803206935 483338701 636172864 805743701 687893476 202514076 813676313 386511212 243270667 183492177 867851387 888812386 589845709 617157010 300663181 109845355 547419508 735172696 968288762 996915322 68892756 989028575 654964990 369160787 302317511 939569832 900197971 833817725 886288684 313172867 922440512 504818505 845275632 595142273 86030741 79049933 148646535 339846400 948733094 142069228 435356009 657939365 956873813 413748044 760838166 426550107 524609539 785304670 133256221 683871317 704194976 900904029 784996364 520615184 356398245 53188421 606657662 738315090 56605452 151857888 662249242 714420520 316072542 911452095 195564420 10709474 474776746 234356793 197629555 380430625 608757636 38282607 184419996 989914053 15706893 883906635 142159305 991256316 419237096 638147704 327741882 280979261 574023492 422082931 54943050 885336894 59963867 330391418 216322897 176762635 582812390 446632089 38963120 26206440 503613487 546825627 514788944 408475761 90767361 41168666 619630630 417507196 949121076 355448440 961835562 922249523 280610599 224273628 568893539 491774205 300876478 324921398 263699668 368249744 251651946 538905663 173615250 762663913 195306786 557632887 380199099 53027405 835850336 292471844 204690799 376563526 836234541 611957594 503489748 376034986 759175191 5032430 371275299 521516181 723357490 798615940 754655379 269022315 453153057 315663746 56549988 574658008 102309894 213779481 590993893 713470416 513146515 262067006 587242084 740006801 403533049 609099701 60230975 746322845 948582395 184685060 103034580 859853505 91362269 892459903 581213586 839027984 871326572 833539385 589618921 612876011 653612291 302924566 270709840 14962673 558850941 660927165 760349262 572231185 185670462 109501599 843555693 144384636 754761016 45658867 63166268 935717044 765446625 295057080 886741851 328153465 248771127 533868218 652279397 309644758 681199293 837889159 804928774 593697829 394725508 597703031 956226805 613160189 150016546 27849132 925559273 619185730 551512759 27054860 480493731 559619109 153566951 419941960 287002095 164093462 688143328 141086682 724930975 804082133 169604185 926446336 499718029 548752481 554278801 417084613 274144925 575397131 873295436 787828468 150191540 876483684 112386525 31029546 413192906 578198346 333447445 681944519 916811737 467427811 579819347 106246896 267741150 475933846 461025664 823808921 752966633 611646749 330777352 954885750 3900936 248844657 278455011 437165837 562255450 652688087 596035212 422433443 554205181 477334235 388045583 735802183 607305242 148747856 533442549 686995664 435954410 109575253 102590549 588506085 590127264 737360716 252129742 84827880 590024837 827593700 224489865 504278284 139917788 519691791 998550320 944370504 602046716 630042120 98240509 406048606 394417727 984474456 991776171 841306837 6862084 925234630 898546049 612597244 566153403 704646248 982734668 360748780 361220560 125868189 748760167 150132360 74231491 615844613 444794541 524235636 540012305 591362191 628904322 127422245 515962438 574994286 417937113 525334223 662598903 85746718 325073446 697662581 546491324 911744615 49837926 970338778 327824951 630170191 298480163 697352087 798767123 785467695 748528743 406253052 467867649 926458016 251032520 442829873 419736251 338086280 164696169 744042263 308124167 40297238 923496428 635631202 539211179 425316282 988814978 648898440 496610938 979983921 225486817 658132175 550335313 383547008 422321221 237384759 351003664 552909556 34155892 5431958 105367714 88975649 414351809 597293699 247628280 591865056 750360828 622448988 999169805 554635098 230145415 656866381 553124324 182497785 166623560 587906370 222818950 321931634 105755821 277171705 621058567 212421824 639612330 614345964 366107009 310898214 486769858 330514023 667639058 968482359 249761784 849260923 657910507 742154942 769599963 765197563 4505657 726985692 437655678 447373453 18473529 787519224 531436679 985350038 974554923 599103417 146238995 29484105 702151003 963098902 861032407 621448861 353735196 668415051 264882182 418353486 850075846 368213466 873692513 345077484 455779260 603933333 319474731 52353219 584637290 611370632 875914548 109066729 343608641 351946774 946559699 885913666 697999035 62701794 60319717 646954358 732415579 793550038 243118287 226243570 780790440 728636711 575905923 67986420 265316664 739576658 757736307 257222262 843735975 951743515 725611680 462583365 737546384 391349902 485009038 333288686 205166245 866287360 168822352 444521931 354475410 326542349 400308854 958683389 121767703 500897176 454090788 779904104 149491187 128098255 618910717 923308226 710641902 194671653 464468270 984160897 573299166 410183766 57375342 499046115 151988893 480561513 724141823 437302514 939252748 506200230 75300261 619160192 243255575 886875301 218600362 662791971 986316716 918739007 56678893 735857467 149994955 750844314 654162883 267801328 511857779 534952740 211920408 155655991 974160556 365201038 83589208 297443520 60481676 141387734 208182652 492526354 380084271 657498688 70640385 337521524 50138800 980542809 224507368 228591604 793420608 830342133 787614152 701059180 243389966 550574383 393123248 789684092 7140182 24565098 557723460 634789772 221326938 621496662 605470630 301863375 255488098 548704485 907267719 169891126 592420804 235130453 141744411 519659400 282704087 647501606 630777633 498565706 889028351 462079272 994055135 307814862 213122978 337181552 731000613 9348653 469864250 765564760 541724230 291158597 976285244 25056134 388868901 154077886 94620714 410649829 641970980 242403595 774339731 799701929 456891954 205332065 176618498 739442765 792732616 888778946 862113049 769721496 899237345 405644790 16919922 166014103 446474757 140217487 708561086 837782938 467971648 324166881 764227502 376869185 166110252 123885585 855516922 105064046 688912358 379464965 767987812 107453006 31846675 383264618 184837563 175304535 485726177 896673470 536329162 132935234 186436615 88201024 396668272 936193814 971329986 488094966 1516688 134551070 360393436 53975216 188582675 868615409 298587551 321285386 575688170 783272292 703600100 959664481 321805841 933567651 648354312 183336158 864711046 810187286 416835057 485522289 220934234 506385011 608727055 683344082 532498331 328625335 78303316 244142467 817367653 92643106 196156741 109791178 205526 481326660 435155170 472164536 649517854 778627058 775644604 471607079 147821166 345419334 14936554 282860726 640447998 283651749 58026507 890173645 899279888 965421754 852385344 916141979 35437810 333554045 176381245 275971866 527574515 910086181 389156660 388845066 337457263 378764603 363355878 486018802 155367111 205577095 593619610 980063525 708517220 756218657 692723485 54926265 394254778 925082723 135912130 34837646 145548100 821618930 416891501 385079630 346369157 578689210 236718721 600181352 943964164 809998065 216058347 555045911 445584213 403746577 96022308 348760405 510179858 589230047 21516587 722087665 714837213 660742759 225946754 564522102 839529056 114414332 126464570 474062143 123283536 309598781 24744170 709742956 720502885 421533197 518310321 646189798 404306272 520678041 933933361 531914333 674470924 95722834 454704283 275533383 147994175 955231225 687548069 608633829 57565135 110685582 916209807 810656835 19276701 338509152 665352475 592659242 935876246 809241093 173331867 59510842 763812014 491699282 565872356 208935887 189880796 907017330 766062677 662163987 495203621 458622672 197039313 554077170 371532174 580965664 111338443 636816426 121997616 452804957 242497590 913140794 156249122 546676429 901349266 880343912 984496517 874006265 581636325 49107908 806555782 574269112 81379258 302238505 568879445 394672423 887067437 86516790 368751660 275418279 408676057 975762771 315861584 850958823 745874402 32911279 687091467 351854298 368089083 196417092 937716907 583652287 859295321 680854226 559725455 983369749 562229430 351830755 104778006 514412973 163476062 977230019 9063084 178668952 298551069 500439692 12878533 629424436 433756742 382666017 244571095 787292454 507758013 331978022 999250790 808185945 672507109 933882897 772686077 171572483 363647916 128397587 427008302 705149851 441059210 483251249 769173 203175915 430272635 230774576 877071056 721003516 746051593 714236071 84481933 951616295 53677628 670868709 273478010 582391553 453951665 539561232 894842712 193583730 492012418 141156369 237717730 499713192 229147734 937804692 930895849 897817109 344618334 688743189 488352570 734214519 585187404 181169875 966887347 891457230 925754209 578462932 75449136 188522603 990326883 583684588 291780005 530867679 485228959 986490034 989817851 592942857 513651949 16570500 962463538 743768333 994791593 815593103 279660875 984595796 394013883 48363199 977581645 212679317 38022033 604542669 286747983 475955661 770656543 593960761 790318953 291227965 970564583 646831181 852958396 158908788 222350831 41110809 172511092 7225927 792043969 505815155 315052740 937625550 34225527 723801598 202484708 42131313 497603503 474902304 866841881 495751389 528461452 465993741 283198634 959648515 174436035 127180472 420464619 654615838 466641538 984519140 53471287 988634553 653423758 281952795 397786606 866685338 993365801 533457576 23901053 283251416 810426146 423771305 53599316 942177742 464912082 709597691 124388335 367448098 709396756 740877896 159646415 762102208 331827281 806430719 216375166 46450138 627290485 22614873 408373136 802031599 428267766 108375893 82072734 596007104 692013012 784558778 295434571 256723805 476348053 878800157 6170175 727208985 218212422 688333778 693478703 252322188 619245439 710691069 593075154 208686497 359810908 164465795 173951727 844449409 91507333 594643220 683895117 958906273 99924521 585406252 947077310 377177786 507869946 709892616 126438174 891052757 17736253 744681648 752844111 998481213 387979955 413212919 903054905 921643650 340827050 852492402 144661457 547764102 541158397 422720901 408763919 434945133 856859396 649723474 377662455 245845406 335300523 742820305 503748755 745113810 972310364 857953461 760106484 736856066 59198225 620441728 516858935 18426487 45932100 485196922 282031227 601778617 64615935 630816436 539779562 797920925 231833550 301906692 400508602 732531775 129728201 970821135 946255650 460253957 281137293 509003318 524705894 497071001 170977857 323591856 735119825 848992240 897730960 73901171 842997683 173898824 206944182 975316287 574620774 847070244 384152172 903379608 465059662 74312529 995277564 651218646 633956311 364601568 463925555 223476748 785598061 157568560 703669863 526938911 489573777 314096615 414405748 581400752 725785281 768338670 292339399 640961076 514841480 534653306 952002886 138585829 692427386 797479434 405827948 342036159 917136944 142544990 21032758 234132876 225483341 984981124 646335018 409445341 243682936 941397971 257680472 887225353 379169640 823123937 558029652 842799922 748598743 7168408 21235518 584411198 398979459 474083363 615257020 460905182 232502329 810327026 107524347 453269643 564231371 192264137 425701042 464814980 869409810 967784357 833615646 74426325 434538994 961727446 554310664 113105481 108961364 18329071 499733950 141538683 851648044 640509388 817888789 86259914 351601780 769717396 350921577 392046432 701472557 854539697 783287714 62106924 199083617 361325527 514165553 562517990 348823330 618409474 540619272 667364368 799289997 641180793 87756456 194726385 723434176 475580354 93320984 862588056 28380137 929868217 916722661 297033439 566626104 544111222 7107362 865675879 435069418 959035230 927720819 618813079 41736767 201480732 986598139 178232223 363798144 306150310 533125223 981446007 540891651 280849720 189471216 253572831 327093278 697147735 53899349 182607968 677349174 499053262 573905369 547531596 520220086 924093360 279353163 762502841 240531214 433459293 238903554 805047945 455924409 558120565 280837596 56609889 558576443 478071781 267507778 738012341 860097818 596761061 646919454 882259899 616148972 159280108 326844648 760566898 33535818 348900035 587938463 45076902 369327062 968723317 271677641 968351973 391943740 824784466 467890802 924883846 682744877 656141309 944265778 898002862 930206048 131371606 207104297 188178240 524856989 736528778 565709818 247713006 683348652 367630094 504401366 379770675 647315807 16234652 889610096 892085067 887496846 884956989 117894155 402952257 515111710 233634871 399625321 121689058 319073275 702558755 646989787 98514378 374816018 647372765 817272626 933192792 645080673 754403205 420513748 445368245 916927211 246566284 327200419 979558606 865936822 374287781 939203855 169733727 434723544 948671432 116773899 179479015 264603243 91871553 964452119 772614318 234221455 19209623 561889595 342135493 343264625 138065823 18758146 705824768 692061249 75148406 18960516 40198406 818750520 50192512 964642912 942509629 746932894 173378155 818859709 905859282 978087097 630700070 96099655 475712448 230751963 606045682 83226420 994653385 406005599 953232211 256224322 99037041 216837544 24505875 798367163 687099402 805785886 950362440 899946347 283834540 351110711 610592334 143731879 932045882 471245162 867611593 652190030 551796056 352953915 856715940 716292807 138719610 889890868 772498708 229523711 514461143 139792358 300816280 944279916 832014959 373698028 120593904 22217232 689848071 524929000 367609389 298812527 800135220 831766406 430868893 624755349 806436429 823427958 490087393 34245657 531563123 605418612 868343772 516562202 860827019 513172033 108042938 550078272 800900937 652063911 930580209 809732281 122214176 154221689 266570042 4237112 282248537 382764691 881840027 256835838 557328882 958323923 61150304 196155345 914979780 653539622 714130719 949862909 881038179 111580798 417292722 956933466 918310447 487362518 775149885 213135945 775549265 921902382 680644910 101689517 247384249 800594579 364583480 480106226 25136673 2707734 10774872 684305682 411907590 506302416 45191378 120805772 570620594 347240164 906923315 52531810 417271609 286811775 78939725 90673703 128973418 971728847 615791679 268034287 277636591 586043921 729826411 559448407 276841258 177231748 555620991 221532039 846741583 575264377 48165741 483884588 540928852 866496058 158938741 311881598 469604600 705168422 605069334 846509115 312343497 275082400 365519649 230486183 381282064 994710030 458913705 933538706 34455529 692906984 531039240 576172882 72667701 436740516 239860196 616770759 948139419 766531524 852185898 793711186 761620107 543983316 530551054 743210216 159926076 539251816 939917578 135778043 174336176 535028247 854175719 601143689 665856432 304695427 517224619 230146331 690555853 900686425 755667886 461869757 525058651 427079497 511221135 172173063 202471294 98310415 327278634 21191445 115861788 581653101 604179378 514905487 230557161 963790378 414239643 164120994 268678744 181623324 341610910 455046150 521089453 146864670 794171587 850326008 674001647 449876750 501383250 610308672 863852527 54551003 29707491 151240745 408480834 929259634 171438417 710155402 862508620 56678610 375001022 982961860 500551221 828238333 700494489 727466940 747366637 212381944 434702228 95534814 658749737 152358877 2435249 438384420 970638444 700564671 885893420 139910152 797639169 200672451 170899094 425029781 536763378 66464020 561427394 553395797 254636573 37306854 873609167 265561696 596119326 222952304 375992092 280704084 298284897 428210421 341012570 740027225 275789332 571228096 207449468 595076890 961971247 382043682 909639869 669937360 805033843 658889335 627850656 462603322 172406630 965650976 127559670 806061211 377143903 750853257 841934545 721476546 162032237 691331617 309686155 548947718 800373367 55940452 450001096 418650182 87889187 719089111 537727353 271620838 496044001 396778750 89580495 697032409 849480168 423249777 919878727 657168270 15787837 410168777 907539621 148238602 186940834 297269159 329220851 677839056 436837805 421756082 405976712 132680430 669984689 296000932 864066818 482526973 20689619 991422770 541057344 420779798 676127736 398214431 839152757 958185703 30640849 260305718 126922510 919533206 325382358 955940425 887792589 71146462 90517579 191370547 302430386 849563901 932444466 115112914 154371084 191062967 487450719 995003927 792638831 586818141 33590891 77705968 783732919 383837378 786300082 815953753 305998087 708774217 383968355 920450384 142983628 960605141 780423527 915138791 24033210 581599445 425344379 208521512 567407566 670510652 41835292 40406836 589174349 872706191 8091286 707979562 168096707 807699918 291621111 816259380 846464000 397444746 19342102 666787972 553598246 263887067 335134872 461895254 200941208 696083803 119842016 983254252 510881791 100306997 771330593 621514894 941597267 870134803 933260883 400868498 438218446 853292844 2072116 191645775 92792820 396169281 810924622 941168169 148369556 73213334 29172211 581206153 398864576 869188603 168043065 585486051 454738132 818901442 37095681 973280431 631022709 636643278 378473971 374496878 379151760 875245701 929741694 495528113 597208921 697813712 67795934 545317123 28703049 901456172 374797838 666354946 849083944 826286229 653686492 896698192 642017027 442131854 837743061 124422295 521041451 159270184 7404110 569840775 269349438 758595067 190356078 543980252 485211424 76459298 71896090 836584026 915259644 228850500 78982147 554693579 342053705 819165584 928802975 602254588 703241665 681574589 367167278 937572815 332863339 889687559 531058878 999259424 729800079 992151607 310355736 599005148 912821443 646377113 930233818 959113204 501217253 169707522 387395424 138892133 537330966 554357204 881103831 125159214 608448198 273433845 145822760 404660317 803423910 349811921 334496531 38863614 923253942 519356510 410800148 643181874 70487606 898375451 571355765 728733209 622434486 477775888 613930562 135551706 526478086 131720393 105419609 825768875 298820679 813261917 266997336 433577671 269197531 244600938 24691111 73295211 444261228 208882710 85569141 399254247 309088243 40444176 878007741 65166731 524636838 441170063 328363837 317057454 236427537 559543376 279994494 25427640 156308731 543973785 597876176 92311569 446087545 365803065 174125900 694509098 756252647 707133831 251185107 857567103 34533099 824571231 529166859 98538897 446956911 108444456 399210854 351291883 250522025 707457235 684102938 623923996 179858965 668627408 590534442 445928901 687020151 95157796 910734687 482304899 870098651 741543250 694458948 744293376 661979797 662554474 701620277 324567027 286442306 573940225 728373842 51629073 759473606 848912692 862909829 110096415 695251276 116703402 448375163 335897572 597655117 108024979 615482284 145196600 705524607 848946852 152967260 487964147 527803112 297924378 471153552 629361397 549574361 199036863 784259098 51937065 997408990 423973597 835195027 836679042 471958234 84070987 581197910 411518715 776869871 748879467 171221139 873398164 221457289 803325724 232798516 892723034 1779804 187851988 921044469 916183900 193968485 910513543 14869330 80261304 826692328 552340913 474711448 907709326 43892593 579998040 877507031 481000457 235830484 243894542 803307747 36226395 49253679 554862311 228070497 215635132 189032933 663862144 612918196 187531379 909736609 552955649 195798803 176065222 902358616 678738457 260190833 907202314 439198792 203750650 805572750 999306390 981246196 390219878 243588087 323083728 761314599 513527460 301001207 973076258 866463990 35502209 406571432 741164026 586513089 679896147 669530350 728578008 929218598 171373302 994289517 621593915 134916373 658638036 520266132 169136298 645882562 495187675 252561313 471134655 241448617 824872319 322018958 434742286 520446861 892567999 510117670 828751421 13942907 631972384 768421626 42989298 820818886 602402740 34527077 282906085 161498639 580999439 584028286 649379531 675143477 559653199 955945526 559572072 428419430 681588505 374326589 823018376 594804246 71648670 651194372 97993725 802105605 827282834 135533011 312577439 374322992 154730550 4048301 982030673 736722920 270853196 587448676 369374204 880494530 127115561 656190099 605296535 848364441 438127514 250757014 963776535 410913167 766763270 207871126 358810241 570561042 344545871 569196678 692162014 678437080 951043299 913351196 356618306 796829148 557380025 501096666 358959559 945091169 128462414 470067718 724327820 69288436 707510186 727951282 544384703 590562154 791232860 140209078 77031312 452742622 308154488 145881265 173409341 411953590 493523614 594534157 203856386 415260060 31360242 92282871 522570286 617605510 409444646 713213035 986999568 951587248 924081260 542006824 291716871 764868511 655918726 345440949 307904369 704061724 180717241 142697573 662145978 379929407 454943952 11316045 887989845 811775843 468208166 107614289 579247544 693347370 421891734 931035668 705123179 810266244 480275337 717721611 687227125 299574946 406467818 532019053 582542057 436348162 224258099 9405497 15799264 819873128 572935519 80034872 686936446 871251938 339323894 984398843 388151150 213512640 417900039 763572699 744165470 569254562 852746533 109304565 687645455 997777770 349875569 927513138 473448252 64258374 595053198 697372484 683903157 460969131 488346288 842038691 94580808 720402513 322771339 718222734 913348306 186161216 822586201 91466513 754931253 445595843 250705892 104164086 789960282 982848878 617257850 624620507 371563570 513926175 847009266 377197852 386201277 983542777 387049387 516696549 536760822 537459303 356402310 171288098 771541484 450789919 580429047 95611791 691498929 635555354 209432817 456449707 590796381 683439779 598513394 295122876 544754195 190791233 132055813 792201175 54658302 179356361 58932146 880090065 882406993 274179159 813585170 72258377 729751874 541224016 341638597 56709546 336757784 876412514 672266223 400440101 428899612 226645887 629047356 740414894 285220256 842471138 96812776 759731721 28231423 352022803 949003950 431098045 495284123 426933466 707408852 102427419 30343643 442840142 454943528 238948921 230832436 189047245 547213570 277150715 514246947 132331255 895834687 559209476 235061285 265059770 283226438 335969995 107539655 957216586 672409861 846637698 589509786 763085607 657514481 661860396 944782138 436256270 539494152 503834771 32267080 544309009 525855444 6248771 803768176 495962243 36384862 464309656 884607331 700394751 431337538 459915185 65756377 15593065 560839067 871987573 28414104 681493230 208750862 932368277 694370152 366169092 596948426 143337610 326779165 648048486 194284168 88540052 380910990 2179607 536817285 986431933 35928993 280967524 754858629 166399697 751307326 422499810 560783319 73527915 214548824 14812781 340360018 19870954 102667496 947465001 685246550 457879673 927280117 178271873 724011975 996010501 542146946 536466987 512837394 786321479 846195623 308177955 923712819 988706497 742337659 659741101 911667105 434130107 280236833 27407445 163716452 138924098 855390405 572576494 772240911 215157043 556105110 506967703 979966132 260772904 493679059 415332787 917796082 196539792 880007353 887889134 896513520 808985752 81758101 684553276 573604188 724112441 471192761 281319388 878760554 57905714 301878910 40641358 473475804 316830220 811020363 23694945 168163831 508878872 458997122 589636135 71033736 319957101 116406431 38596607 956310758 999092204 910890515 990332555 187402735 963280700 479125862 803532985 173044235 648020433 796372513 942683836 672223012 853921503 926547156 754832144 323238580 770196585 563946525 850161021 972807354 270715445 816386971 402939912 254026424 122440914 749906682 736902668 35242689 290273439 217840877 943990563 497167465 843571892 539594285 820876336 674502605 152449534 689550970 615847521 605655189 867461167 608666532 386169385 837722351 229720761 55903352 703209538 821265040 379927523 556391890 517073590 515287478 994034607 642979732 520082382 231817772 902036210 272947627 433835295 756489787 737967683 494315781 310713474 413549499 874922753 489118366 512142113 990267658 244217940 162821241 782016098 528104462 968081966 918237344 812696321 363319609 78397000 740256293 798515186 614357626 445045024 225130016 594048382 44823637 647579902 96658617 334905905 90659534 818124534 767960082 331303901 944590965 193997277 75819367 100652704 765744478 618980177 242296296 24526815 281392680 528027838 704092128 613807426 254277370 830697556 958703509 831058884 762837122 326624780 263537752 448586909 959362295 439893155 986306441 566344272 386633493 149372580 591313282 649558446 1594146 684127582 171676852 790804678 422073328 119162856 543322766 313246200 880049619 50874406 188939405 789357800 337007527 221039551 829507886 915505025 121282007 505685280 832105730 970979572 730130765 297332868 112719766 420037317 5989507 684687594 579188358 24141745 691300978 176238365 685765750 743737544 783415206 419900074 462598156 426940511 669019435 221254381 622823169 297565454 352569238 460620801 892424968 577219774 612123655 580554704 819229927 323237784 839294243 135061774 620748135 460304658 872222232 206451248 382564957 182856425 197120414 851635831 630381983 31045151 369350898 958936810 474829842 360926720 344397018 785167708 546268319 538434851 48224423 155149154 893211962 622968928 224730923 357874015 404135389 317192673 517428166 692852088 808391047 862456335 316507489 261411490 349296453 705726109 321039717 769886608 546491178 783809417 631723723 564798920 665504591 45130263 481965331 520845453 96975062 543650771 359007552 741527024 18810090 980224403 38503650 943624655 957547965 873553009 759899408 25981634 391115657 612352720 251698023 334326070 819035534 795857760 237048589 793377883 503672092 91065362 436424113 610778406 309663873 904490791 758622857 474170717 274499609 889431581 227216211 687335042 522513731 649838277 439390550 410054380 800916845 223571503 771386462 1930924 111761670 598371259 67234759 429750953 580405389 819332620 959039336 772372870 359667584 303491598 675045035 380869303 577946986 105169399 97295231 484760433 701322465 901653566 427876183 66422199 641827960 370491054 520926772 612776783 373688792 517689169 432139164 559835339 613951145 298684792 243335580 474250370 836502939 283629250 97339341 315135381 524832619 362865173 956303944 305954541 898270171 628045465 54254776 461890614 212411058 22702788 614653259 257837807 417503944 134623573 605632437 67705685 142936818 209681485 352123959 786904943 101838103 32807928 398745746 806933005 542521628 955134959 633407770 715649995 554448886 955215879 278166434 940144645 967780001 518869864 846914187 243341799 712250653 876693377 671755193 110191964 386753907 771721472 43833241 253390883 413812920 788370153 694871077 796132023 314642437 374319480 76464089 546761058 228710781 912244542 264314043 82716469 180081993 505059344 205711193 166023432 93800091 821285896 190092746 604797562 891627183 145974411 767593133 307997940 391585735 786442052 387325478 687098022 801266220 842535722 836296936 218001802 117365040 109654902 989935396 55980639 559165488 246097585 238102939 249988011 351562122 302641056 77294225 461927617 932072877 962489438 595165399 217120441 364248072 992282949 10794691 218113394 529691158 848540664 634744113 553056919 977090139 283732580 537887366 863000724 620792157 388492735 140724150 648257446 979505842 868238722 598370612 726398152 108488690 562332789 944461820 416760009 616791490 704090529 176714393 513517874 592674506 515653979 90785303 373924705 712017598 425133631 251811083 163702128 925037398 249031731 849448082 276688719 175238484 303126370 14977368 418931624 373562759 71574849 969424006 58187510 179159997 6995851 73200853 496827513 725379534 24590149 409699713 965454138 482790562 505906107 43975506 364936454 515393824 548814722 713220502 230137211 3774268 15059316 731863843 42725106 234106607 832238010 84688726 579851675 236111672 455360698 421434137 836013662 186554153 124905518 224040918 105997306 983630542 439996430 858424452 707878383 988322370 722299298 497298084 692343169 694024875 314520178 798807866 826670785 741475119 693341014 756586967 572314507 643016706 186057064 803939213 680190586 223148383 965472525 509756410 877617658 506868870 64180465 608025162 8429882 253167298 159183625 514277927 669586229 832774761 853250961 498287814 604388262 833760208 328300043 394313194 786552347 806773338 186754631 552397013 434559199 651967863 58653526 564394838 854908429 384624016 174631063 459388615 478937220 943636774 703633068 588636417 639806190 662519739 666574981 408018284 332431548 319870678 562952273 85073910 985330979 729929485 593171086 353028120 786428452 709359348 123556609 604077519 12391306 349104180 936631734 121485983 673747426 632732277 534583301 724579481 131447687 868879976 940848002 6013777 935411093 248904904 479785240 402941669 710390008 197018969 430436339 798119678 961039713 713688547 929981059 52304840 891422788 216745782 546879880 419170042 594919911 547404851 573529860 351091924 572886092 68216502 602740549 282085146 783892553 797922476 121731551 183192091 703421554 448958217 900410539 518080939 13850153 937752771 720079570 250230827 479282839 333464031 283007422 630920064 590554539 457942119 470698018 681899547 789794077 942745453 222592254 185086447 679243628 417621512 50392723 662330746 611798244 512532064 410372462 744784068 869527701 307304092 604730213 400266845 840578900 712008689 258715793 927483991 410776771 42123669 23965782 398094673 103216200 748398541 658152550 802745204 625765913 440443107 948166065 946115436 877405224 591066664 876071793 841159539 864337209 120630008 513956398 983016512 498385362 105192884 951451828 207503905 666989381 96649926 400233750 24207327 607555753 728758691 38515121 615351251 761363425 471155648 928853033 242282712 323814033 838735780 466024555 250675032 697102635 959501272 710462889 160267329 737269737 7828973 884472160 695150086 398618057 931146110 309200983 688191401 738247570 678838574 586862999 890617773 486076123 514744745 473313655 505033507 186159348 964463771 16844942 158533278 422444544 338909125 112299720 150280512 461285866 48047077 630340171 810632108 196744546 240693190 604681871 301007123 291343068 997098810 542294348 343194667 141654429 229713438 628168586 507459631 287326888 389435730 835488918 389633001 624149971 176410563 813661441 62229156 661944499 207934300 763849641 384614714 238690728 226704417 673418418 649562375 681730779 282341132 978481289 809473265 774683453 464350509 602259168 143496295 591617924 281548432 903420340 723311199 200178484 368532310 361720908 886815831 405514131 377584798 346271795 811409238 89649329 49628052 870502458 535097579 215717479 272491113 336578432 158453288 447362898 472572757 348003434 292256945 720583136 96534429 996028835 626604454 102906172 243164811 881680670 756542141 452438626 507416689 358037274 597045541 386004755 752421801 525281051 535129760 498205392 856193429 68218602 366518389 216260594 124792735 252969886 942668910 640752268 33445946 289456789 655337447 32295811 514046944 947829359 430321849 530743161 882159639 719876633 786516044 664916448 6401634 781646792 753362065 171068404 253369686 315890173 205849338 325373362 693485457 523669109 203839881 580044516 31218353 671691070 314430403 946239513 385231970 572071344 23406515 853981610 362265943 277705058 218940661 179422903 175487047 717371198 723483555 54224422 460888822 242368108 259188066 549156778 60527408 998258528 424856167 171166907 277708230 191146202 458378336 212454808 571639186 658184410 902938514 769678925 777148022 798864305 764981184 553036708 336643166 69647596 132877113 853404731 82713658 489038448 973129170 651848047 501389573 982210907 714341868 412017257 542489280 343200538 883125098 397311257 22512504 613497444 711086269 572727094 335308863 327006773 889369049 179902789 351514157 28690126 974126397 478116744 809028967 395525822 737150193 636295956 84290067 94575577 358328703 849339072 774231399 235922489 212611330 574095402 216669850 226472261 392662038 516068030 901368820 663949479 164430561 656881834 389052346 515695444 963646995 825276903 215723329 550305418 227763680 285567794 731821537 881914572 783140614 357849881 848466940 9735913 948477903 925820136 216154111 88452847 662507271 560478136 518085978 615343934 551340291 127755629 985986955 440503162 824706209 898166185 652537102 849454479 841434184 52261089 202191986 237869747 367261417 708082506 511917897 595676255 301359865 8692198 492662059 313465690 694380403 369468798 305134780 544855214 332997855 462463904 817753253 91926707 667735117 47782313 481719961 315312127 675027026 324572595 185562707 227549308 765727244 420452264 996109970 434907733 722930209 115706426 668523557 545124093 284286912 924186083 844267227 681240111 589872545 77842910 823521934 867416818 834650366 760024376 583478821 888704656 260920480 164990910 136260227 133531552 163365844 298859786 54760862 502700798 40313715 634924924 524370290 563627210 719566553 576747837 607749887 923975030 314295018 767754043 571751759 206706354 93288729 388932142 452437108 160843901 527598680 629343642 681745547 645373975 124138539 722589895 871793333 276728593 247597456 921475521 316036120 281650749 996541980 860899938 522863340 28651705 734853349 477376842 462240106 432642278 539984773 883376356 859513043 466776436 423403812 250458718 784324722 171219029 495269233 765878449 449504409 332068293 565960610 313605533 431180704 37729096 822901111 371610281 341360364 139300525 904732722 725006374 70548457 995077382 550411174 966787116 123265284 106421169 9551655 379854750 313416380 196397391 390843537 527293729 41583761 880767694 577640271 5168678 121078285 478494818 841872714 43645414 641023426 556659339 146558460 81770595 668843597 664908551 162938210 723038561 186808654 205451239 784026884 154065265 830095471 107811450 347448047 488608495 379979877 228460645 194998969 678306038 755041252 190547075 770439294 520687730 803041975 753849349 810920425 857049877 247994529 327240543 310834469 392401488 252476023 849503053 913456614 534289004 585166098 714511315 301731440 810390379 70512729 942234427 612811399 290084897 143476782 434805021 873583737 821521186 479038860 944566612 646790171 496768466 80454502 373004037 707019212 337058136 563742660 109409688 709800818 683752868 146868908 224021447 426105212 691623537 86988083 738734731 937520611 439089722 640030321 225458216 95024927 916164938 466337931 125759788 678538555 877253301 423452072 178875243 743998147 37330253 551232252 176088832 761372622 267397810 445580738 531803473 104576763 934148690 626358331 128607240 309843567 48279131 335605424 592637979 792221401 325092037 640869496 944204486 37157487 205800012 192376041 833070220 532730863 394438528 525268068 232356923 969786783 620010925 640098136 129396710 417021005 181433832 382101812 6130666 250091090 510467096 794391412 722627050 180614281 674450402 194143386 471625684 262579546 368091575 441337647 2675932 72696755 249497037 804838084 968226429 432919051 917648164 857435383 594950524 808184156 324401289 596007016 689921254 34080819 442271113 668252611 844156173 708499352 194079612 571163831 264004752 176123943 634566787 835931905 865644368 670345976 874803332 337484129 795986302 932830902 458489909 610868900 247962763 257974926 589363209 77201050 744805424 978751287 753230656 506354463 176254329 226490860 4225767 940863253 316392365 889938806 155818699 227904869 219833697 799159589 116044419 230739456 335634290 857626571 94768752 726649573 334554628 732652745 637408957 120117008 964211074 632838915 542052953 524872083 807439269 281070058 616164857 286167161 789307490 727106674 89830178 431508446 953968899 253581853 942366489 439233256 873598737 481539565 518573038 241915582 916104032 745075057 492258687 199404435 95696656 266531265 375708261 870564256 43059331 797559416 360268042 964580906 421429861 541842624 80337056 685700216 860351147 615131719 312237598 201930463 66719630 668787777 125252935 667584952 453467801 573417068 611750815 300473445 655479185 551605777 634513787 387430481 213553551 225593084 787481324 658591727 789439981 338743429 37043419 350311863 174609230 930456713 607356907 319280938 46317731 430725231 965312908 194477529 529862173 642938914 210075385 509379663 383566904 618634014 790114352 518762792 561244859 578117982 292222715 9630218 790643117 47869544 690482153 912754333 929187431 927273035 248191314 985064848 456232580 505496221 878531670 997562274 265864423 359004027 349705184 114318997 245166270 49784972 749966236 958456879 217932924 800097793 806499078 852222791 4887775 796584332 321474654 756278450 263079912 753896814 494234026 678448217 671811046 164661615 635391932 600955424 542819436 418342872 389677866 627842813 970160473 23747714 144270167 562853352 59958221 728897484 335128427 339066599 984815415 413190045 818646355 156574209 657014345 195820127 712602827 931338823 436015617 710351372 232364112 5786837 357216418 3370273 310769711 720852942 48379580 418877349 551267187 643979101 323461662 492586022 776591609 663312563 553067753 804009147 657646173 737807112 978934398 269796351 470011144 955375264 437495434 718557211 311268140 357315016 957490688 887788476 527077059 63521742 340278305 320393498 127665289 409220113 607595 148980469 410772743 498307310 965343406 652402061 57067918 806322386 577456638 185390517 130982712 269001006 264383415 205034432 567310309 64641407 605222266 601861777 527689530 187713604 370484539 261392523 489480106 875814920 247182375 781332637 15393646 686884961 950765500 149772602 353063811 657548003 512472254 966985574 42494133 898890805 945351228 208380325 341964945 911057662 951723657 318593285 414463600 539009780 226725953 729980954 360384627 426578383 37469511 930034692 431705730 6111313 494477255 572815722 783496014 180035 149055287 993785725 515823951 480301179 976865109 838990573 841056708 384163790 812087073 961128186 66081719 336369189 308454376 672431726 110011124 724222053 523997248 614170772 942272282 20164739 855407878 219114051 158319237 770679 138808412 361830617 772270943 155086661 942732977 525033277 118211734 447116276 363484085 775636188 5919458 589521565 306829672 959373485 389001673 398602068 560992524 614771759 637243021 709212988 844681264 179700326 183149887 796679555 494163364 458116325 648316859 985717848 491093129 668597437 41637020 105435638 143973185 812407180 972027982 657678753 505852535 38796412 317649920 872672928 862425632 494057277 698674860 375714119 725055096 692663039 645830672 528266736 451042054 595722627 859007415 189671935 471548821 666439184 244929004 721186523 867445046 128609908 630392524 10660600 281613641 333706756 675402551 542645968 57309297 771588259 552117204 703669735 575219097 329579439 673323539 734924739 792256758 292849437 601301802 363184890 943372038 888421985 341010207 393881639 847051661 218361721 615132087 941434087 509509268 206298603 952990592 86958315 84248435 436378566 950933718 967027934 84874181 835055777 151598807 28486016 290016877 626796694 414543468 533556371 476303512 574986578 377919302 963496414 600783035 816534783 919472349 814072374 218908560 242294610 389633905 659158642 214667038 959115918 285128968 928901241 198756275 1588341 675872374 769873458 740737756 332805462 415439955 98768015 850225277 632711435 217468412 45323915 710472117 883558380 382740122 657271848 262362098 629122532 465450016 484481906 886736874 121583968 345845317 20744058 65694358 162379862 141583751 338943322 921794111 77370693 53126193 406777138 781864811 731616305 252671827 554415411 913169906 682845096 293662148 466275462 790728176 863059910 128166180 208703087 296533706 57281314 952128221 689068329 685878314 693011944 532373791 20749054 668378887 79936194 486285280 38384454 791183002 429859816 857524194 386645849 347666283 452403226 54935983 206572950 323983425 241451932 709646483 858930282 996848439 570633533 725352360 93563720 914270883 663178576 992592082 482365352 659194413 531895995 348312500 964253711 944058815 896415196 537041088 793715461 782879376 149520806 956469297 137059869 460027931 394097805 638376195 572120304 505643810 421553552 158471679 390114338 483937460 441035577 671302840 958666333 768361253 972987535 504714885 529402706 977687313 286987311 956543362 224567997 655723611 113871664 202325406 934770014 841307441 468691521 224340360 875311107 304662788 47137416 127793076 614759546 878946710 442234563 589774695 841024671 389389799 389974056 947784100 260661589 175640387 15030149 876926528 543212934 827406912 445841443 493068499 296102692 526467514 218737883 950813114 722794024 90175444 971309832 965548831 756691350 11951358 512534420 553356274 490851960 505485030 710897133 826850029 749016800 650875278 325066503 11864975 462060265 147327544 768216673 385986846 840447411 437725806 951028994 331348910 766583401 996795145 776658038 883890966 182179135 629843744 481084889 881254900 921269357 98460444 585088193 324635828 174546230 735027110 692466778 991235202 119718118 421633718 532911185 428138075 880197583 479519363 657655260 635175420 776196169 449017493 320772795 828531439 952325047 83795638 449477678 90837376 926396291 835688447 742280717 149063629 388637729 577599940 977533348 850211509 274472970 819614896 659602651 849641180 490529473 135031215 678963985 311744950 58549710 74327793 609167927 624953981 83836358 844456692 454313923 149951276 501802307 297750910 235327923 214577041 132359652 436484764 430793612 135463991 862533463 840419743 570312033 969165690 413699148 949020709 160598723 573763193 873556352 349718800 555391954 755743770 446699187 788485521 798672438 918379025 680705967 547286553 905944092 612478419 524172102 565123426 898576696 129603490 538100819 860331895 699372492 202007944 337562298 803865244 868290972 262562387 338960483 354861676 666839798 251134107 786893376 938799297 585137074 333796288 602352462 82665662 837128748 771297517 707033484 714692561 397192269 144247310 891894535 448488620 37238914 77703390 473284815 326173261 660039361 742924254 37090303 996135161 870927751 499508565 264646841 194197307 282362587 740950611 139885863 893873895 637624140 770234800 485592189 603730457 453875440 227432716 943220725 764383798 488098406 183089619 806792143 909998316 228973525 14484528 727393367 573775661 520676329 453045279 538989279 230300724 522736342 117727325 517646529 568368776 705553761 340231029 318973535 553450228 334614475 515037366 901698084 811425676 446977250 946363192 299089282 250108591 343698689 535189214 1388531 844769277 497353986 111444301 964185594 710336356 850224972 156276470 649786401 32623129 207251151 476005907 31659512 924698009 41518591 340499360 498142493 694733988 155146205 682202731 202666031 469777482 881856234 276022782 630353369 867177184 469076539 225693113 163792335 590929664 371240545 743223221 852529099 681650318 675292796 304196573 894169228 217036729 969646388 439526113 894013664 170291698 535105975 463873851 161109144 645284088 352425145 712473640 349339536 115927501 965705591 906164916 844391079 988921790 239735995 599727277 443821766 941916512 574541778 98336682 658083301 223667599 404551058 531552783 905753083 530856559 588499289 286153728 925623817 965768811 221276687 959182449 555999003 203079481 611589407 612175895 946923333 49700565 277403009 497109620 179179165 56436867 468193971 782771411 308049991 371142606 88762301 595676479 496527726 804211085 493284907 648699282 737300037 5621979 434782994 875868269 212022531 701981722 507876374 928898104 956742382 115241465 495025239 626817573 419180878 521300074 464020359 318467368 231570038 323918254 935495898 788076806 912857793 16045892 133170193 901067076 420059535 997886715 904870510 383580212 434360397 548334052 272875971 183274989 239759722 202082144 545612645 623561552 548744549 928392208 833119539 123018503 942224826 444870882 987917969 158980733 809931256 302559243 184123761 823684334 542530225 995032067 637568836 156430940 239996031 318206099 623743501 646849677 39907072 723788226 747952977 965701134 289875428 777006314 868576541 981958975 190586842 122884517 332240647 898036537 434724254 972219094 627770160 397001958 118912241 883018155 66436412 321974779 487351196 109081239 987762521 833294825 615777908 127358548 526735678 457107703 743802452 61210348 609643818 99340582 17931035 538079913 331449059 881964878 334432948 383110940 691196599 904754691 167031314 880712229 464647291 515957412 116229680 555062503 808355469 807610973 113042190 986137805 758842583 848794907 246517944 266889358 269882306 829038744 636962368 335300901 793658186 538476373 116715715 28427988 568890856 961344918 905180253 204028971 250179495 760866931 174356797 190702331 900654353 463660733 623384723 75854178 914673725 378621460 542780827 111839429 726756300 672367079 83655317 155478733 974243811 865899616 779041742 373641330 914640684 693091709 384948886 890842862 57538533 625830391 172963912 276727495 664241863 254077533 9723209 471119048 591669275 866128891 974861309 116659973 422025387 509831145 687452124 156489691 659095249 348361738 203471453 152641775 268968811 337298439 894002692 128283179 936790751 737846861 227223899 749225154 537133593 735381781 673958387 433027639 259956625 583486303 591763816 230480711 243249223 279223797 178809946 855191298 452305087 978104934 295000950 151235004 37257734 293411853 192007276 671406609 638229684 984595205 551987449 927093221 998168043 460194105 722257373 772371810 76017226 133088603 111778273 153589761 238853893 269551585 116281561 189043579 596633294 668288523 369184417 257047764 35282662 282752227 534606871 419472731 978924563 218836025 420050985 297376 63458211 573704099 64211655 251233923 267091050 167166339 249981420 474670630 674698187 168216065 551721629 188365560 689109158 82852878 819711966 686570155 145891441 311550049 364348358 972026171 552860187 19779197 924097136 261224940 551283494 506466213 355774715 764712524 666827927 953657327 198582419 27605808 414481406 657025327 257653608 103406514 304506991 360839687 218176953 558421047 166814602 831672031 34597572 12864874 680614005 754364647 160258005 705788225 614508253 373740310 424212798 81569273 771998201 604735281 828437336 41696530 680576390 472764605 432376713 190149727 389316813 808172041 414893879 954294509 309342107 306802476 849193685 109114909 186528581 51861772 936095455 188613267 972799402 140287054 900853974 113618745 297012274 308770403 141079109 765641796 360511176 4710529 516795836 73456177 333154023 157455019 302131674 814067397 871590534 226338471 779637820 216344587 965066034 498443527 475456145 111792471 202136824 682904099 871587721 511076932 852133226 701804313 122258908 424787386 110615213 359344341 371880270 470588131 725721696 695447299 517287852 837704245 944112311 323059486 670655428 528503398 710056805 255075177 24700020 49682818 638293160 197703143 151633819 862750675 660992586 176694122 649676581 982529260 920722580 529244299 791158789 800492200 608442211 292580008 45967155 66337839 799688975 583700718 158049969 619830507 108066687 129988424 385655948 348242320 699231525 177268083 705859028 322735387 805600756 785414635 120701351 686237135 899691627 945338619 734849568 210597432 405914256 162968497 359215984 921046574 619501300 527080168 720359625 863080907 875970472 230309438 997505376 158976625 310514513 483558684 694630780 639117263 269949967 19292083 874339684 806555864 648623251 77499898 865030254 545971400 75527954 494734515 540182000 646906406 987597902 781225571 262965840 912783803 365721224 602369116 267235318 286763933 305301139 727875000 676411476 928415783 673904833 263012951 298309862 364741886 198094323 732325855 459035182 837077518 944817294 608253121 56776374 715966092 924584835 109326134 606189071 953994741 509631299 845446207 835013589 123259659 295892688 990215841 467283625 565728475 126908592 423903215 377567540 194329017 156145 89477504 851106090 63648832 247862056 511007093 21572678 285579353 241033078 7571383 34661194 939772973 833054079 404408564 792040193 300684079 210753137 973980071 476045113 133286173 75124485 141755663 458000849 970874618 207836788 125956147 426494375 78558229 789379977 498161890 965183403 764762369 68004753 869821115 360850377 314762902 999258466 777824279 134962174 255466752 791583834 472225059 481482574 372788901 776748385 357323980 847846595 567429436 525563872 198555595 540974187 776336577 770147540 739309986 449728612 524943993 296993208 661412249 773970385 116373485 794141587 68609980 243322329 808643060 28894193 219455466 648135855 588388266 88079851 647773887 927766670 53859699 520696607 643866274 216120507 384544251 937466545 520347849 710782076 259482423 232894547 332029989 631213094 935871331 165665590 580556410 929589265 335428609 232562973 135049554 196390817 107572961 612065612 556439291 665747007 604810517 403310995 759014796 859794526 354637305 752115524 228015593 524516473 718017075 543006275 615600825 345044496 49984687 751095795 609937256 371545776 852025247 75920963 621880114 381971688 638813057 788586665 413777432 179757399 251136537 379209507 540147682 714221978 118272882 44027190 902367518 333551966 134320866 395605235 500474407 697697623 719066117 906715631 137666585 623664187 185031615 883483209 167596513 265358799 22991165 766969765 781004076 592559067 785479408 458894901 60362101 868379445 562621851 564244395 658949370 987361460 567954235 935603270 161219012 637723196 299823135 529728465 83168421 267292086 340629469 313192597 223661618 108548117 883262541 535440490 726217679 580053077 355439768 264658351 326610078 893449333 611488297 532183112 782200470 432884863 328292273 767549095 553420653 343211401 296432177 41622204 136258976 270191274 658558440 744241421 33851261 449412103 612596072 34757532 672503825 852955078 250842754 374733559 257694260 344574751 639810898 841475893 116867462 583788871 166405948 979439349 525724529 131090050 48372209 870021212 162418724 229288733 232390238 114279960 783199640 865809508 890863554 661992032 62742156 476109240 234239140 605961717 230355338 149047673 65281999 652873495 926300128 305122318 127446868 980479643 988271785 793142510 871156629 86624465 532505028 602002832 302506542 990759578 387159768 381525625 185792277 443700318 138640982 117258289 516399478 767893771 209132665 908141130 936275666 765105428 880216636 289210976 593784813 143989114 580817515 285838612 614647249 163453123 424920727 921909009 840843988 223979004 310388757 436348936 433548177 81371068 608404231 809008053 629890542 303950626 59753811 275900120 930885140 577417428 988333486 724628543 969581437 867775999 952429196 432949688 212882399 630648664 41925425 801165601 813890114 175689251 987986081 513421656 398804465 340314913 118491310 89857867 548638081 817747360 12996338 120826091 428718029 727400571 379556300 747095601 948002040 676526858 142478691 449661984 554091891 747787832 270122153 82465733 325805295 293828979 613396054 162050350 111907687 771869615 41426921 796147832 890474531 938478698 837674155 702523076 316396204 770375340 248357549 747987261 29007320 197920773 371533766 10424341 366222531 675481990 154059927 657274758 733502929 620543698 512440201 317194451 657587116 255151886 374967753 596203333 727432268 111281126 7067731 461673773 61528556 716710549 716870375 311155432 446722065 251583187 204305162 627604440 676843141 856074218 524077839 561390952 919798365 608707496 15845133 761385481 893390071 26767205 598982631 550578226 631673077 860210428 176978496 22064491 103656771 326035412 366902158 499146043 870049305 889853917 513222916 572485173 840464366 782915722 352188583 872739571 125684363 219177949 2767932 154839319 533381112 718383961 152447572 567280714 3697038 827101455 390156106 327852354 242084069 343500947 753568826 305593529 171094245 148354053 463531535 747360877 593262774 344264970 486001782 862769707 924620495 639976912 937657068 585306309 563728365 769673232 881957293 796999957 807801873 565102599 241276613 152930044 261006731 963013496 445645568 566731879 555776493 557983413 471247611 686925383 425068819 509100435 26497554 424331671 191785505 71720047 219423601 27806807 164154500 941377840 165980420 950809234 223066355 699913798 865211526 759738205 256539239 909579175 819631224 175030735 734146853 766267857 243753760 761537547 160649144 22721735 580898193 843028541 666944503 78381338 138941601 532354964 602319354 658412256 598067694 777819980 134758698 385955513 534423783 602718120 679055152 460946121 540175287 918021874 801363205 863897023 490920023 60578941 588788190 673871310 243370374 244330912 872800324 104721850 515487696 497917634 705728771 31975367 657855108 952311368 834625580 953146049 813821625 702237097 230072864 127282945 318039633 690695772 877206657 154772836 518418673 323188453 464478522 747375184 686323468 605353932 233978241 78221492 500594907 617151654 299207376 302277383 837867866 892769549 183687664 812219972 182774102 338569121 647660009 172274935 68388957 129498895 495316241 487291944 368564169 850730246 276508162 54090864 916788150 578345283 112436899 981266159 685320720 137602184 957696287 828373576 845112199 899166623 447216363 77973420 955313298 238634073 402279873 278636494 144398451 502439056 194063528 833968112 607288880 445930792 761966317 423295702 414153114 893040909 354944798 453723089 754496075 676568108 69185569 280227763 94176416 661483139 315840016 988294107 599960772 79272725 67156832 218370865 534175143 805688040 283407808 7808804 450401280 962877459 398162223 291901096 476116815 100794541 532707565 40357181 879956703 768548825 684422794 750320104 136703676 389349570 900338397 575700025 523948739 924388762 291693307 188739394 881339278 461698716 942828876 720183974 770590605 341446409 858616447 966751114 564797930 439337514 925277826 433483676 449149345 173721172 112943510 419184658 429315697 45726177 766618943 993718952 773086689 18170930 935569223 295570090 122633283 745381041 930540228 173225441 826829740 803392465 201988882 507165604 177899267 7441420 868137172 443688917 519059178 765384420 244283128 392424405 168852178 978798566 508336049 384748436 412557815 839162273 487339388 780364940 504375895 128496814 853871644 17580727 992881593 10478770 427240352 475261341 807910572 175957849 729626459 445440842 401169294 309245265 106275559 464093526 83623803 461234518 631073065 429631456 282142555 22933291 22660943 92896399 882946272 225964184 257810380 507583375 682935683 316246132 796890463 907026071 851120513 735157141 452751881 483715044 603129059 492439004 509054484 859398974 480515196 145318200 406103834 68810484 881228515 641498777 971458806 974598874 47551350 861368056 605457611 960399695 289800545 988002392 343522819 58779194 157727377 728941255 729247573 385490952 335248064 643462993 631688637 980971185 297705070 961533714 791591295 122753715 68602850 452022319 793743654 358931 713502256 333733073 806291593 117654367 619339821 936797225 665813954 475337388 988766071 812377458 514238519 316004509 48501115 497018609 459431827 842529108 760551527 993307882 284097225 53595011 887758388 531532981 764636953 431235421 286116771 86180776 888413443 520345504 326815544 985605675 671834452 24360597 730902088 520657571 283985444 42271497 751768553 725461123 11634124 609542480 254491644 426806599 142048753 511328332 58640939 791819118 673081982 171626592 533641443 695496070 103128747 898704511 285043292 658815266 662983662 560688409 401508249 902626777 584685843 698017584 71891808 269041228 678711073 346456392 957389124 949362987 772620395 61915765 470669980 175063076 918331283 793643845 522720135 252795121 367452279 338534618 97799661 208690775 173172553 609607134 629825153 292064029 452020088 423809912 628835768 691331865 335493827 557012580 748775637 122685473 609198126 459590111 267399902 942690585 551028999 642831022 156998054 991055084 977050590 320663070 741375683 156259727 952716181 419897099 208647828 449050356 844489290 417627851 829706564 660426791 17012845 788414539 248718276 125512234 332023730 726918389 670521546 695668502 54865940 47890371 459916758 410454273 675078873 831332398 178940465 735693071 890251658 968943938 371769837 130454118 545128191 10139787 33504990 507455809 31907922 255183647 397430184 981794771 578429416 497410716 964865203 480247134 595495022 278539816 331617069 551187763 177596377 97731443 572108302 733869980 104600160 439820209 929903899 414723833 974827407 847681697 548327896 188762794 760796971 439254921 329827991 488320538 417376844 487113273 297686380 431135675 715215951 143196676 622406463 327294983 364182996 6487756 471505075 517890688 672938444 561939447 650506552 64188592 306994795 345849711 778661385 231151916 789738027 265083055 738007333 843027595 582842064 833505712 793997906 787938417 964596839 513185279 464477732 528637062 471900740 904814501 188074739 856168831 987427847 42264635 545682907 661896725 14366351 385235935 65818568 526155787 614066441 212823604 790389353 387104040 518714859 284746093 99847480 504518723 776677873 2039100 59637363 642019892 285202206 519433698 8332322 118533855 926679488 179537700 952268056 48439339 230783850 916306 437975018 735612682 187940347 259344962 928276986 202690170 145400979 33935950 571768435 157576316 284919969 319803747 268419903 4859161 283539671 53945322 791478299 520339813 722200627 359716826 539466116 25098358 210267387 62909365 325885383 899471988 272227767 890518909 982488047 118206854 97058877 519748032 922691288 670227678 446359211 365217944 8201761 778371512 127180900 647755426 133814065 150004822 737214229 226489347 288162360 844515073 670590895 632235881 146535730 318413581 253196147 657030922 734282973 391572432 346922720 732368294 378975679 236651443 921269449 554239877 304710444 60530458 331353916 688737137 595846200 303921533 1494680 509820864 132847304 710753873 18914947 614109525 94350978 183470617 881181413 735489683 257627094 199090531 38045940 396958311 879214335 205835197 426982959 922364234 632403192 752300741 998321493 641742395 410728077 336705818 13423478 231629757 689320268 778593128 147268838 661712094 530254481 687829344 795742274 809884728 567331446 512158399 428415852 285266664 46768875 436664388 859277969 896325011 43084955 917731005 681678629 999080807 934092287 127720950 108162279 877783322 371021401 490965968 647818454 873941486 626998959 790496554 688041026 827324581 712167120 747775215 68848575 785348750 995834970 797500175 924858408 619966592 4251561 51348359 828769187 959618525 172932839 482072920 398452890 770124163 46912258 999030671 153787586 823958759 148571829 480249400 562379802 400484093 343429500 708371828 262969315 221382979 440198309 187456099 24014762 806782142 978872379 672860204 646020163 500740351 641189403 295879430 502588618 752267547 504590049 528430889 285954983 371544240 938628343 932841943 605970816 868960484 542745486 571206233 950900815 34229094 116277149 494323461 341773899 707964782 135403237 866226224 122300156 363700407 72499438 88431427 430942767 277035142 117702152 629383075 62463221 442912431 789660237 979080133 380690603 67352197 746256541 869749280 17763318 413245413 948674460 880531002 728733123 140469815 962434239 696301469 434689092 111022952 846482234 275795159 497910776 866786032 864741651 438724230 379629219 458529994 46694927 71180876 360866895 955090563 772440252 640382930 600649809 850099744 351549302 711434701 92240966 135045439 114736474 456638194 459178770 116016122 290430292 657693449 670703074 265593849 560808210 849917400 719740713 37565288 597382671 610356274 308451746 912353794 695537797 575644917 528972629 325244416 123269248 381755903 226993805 867856173 99068114 769549626 638692058 53125586 961394707 160476573 261896222 34259912 553618337 97312797 552823163 888822640 663406242 269606078 543118940 792941229 184110861 464207244 583311737 640317418 966677141 334262679 68859848 381780260 89114557 38357498 989954452 89078998 138942667 80301273 827110244 678152966 594718927 515981915 126545169 136850501 408708772 691940789 971315379 702356132 352743401 394647583 784213936 392894151 821299205 573827036 630261172 338889423 402958635 959264569 912021941 571619183 165030737 588454276 10099437 67903192 527403318 128027672 464258529 763767756 222141799 994048347 541589341 188822162 685623086 378889652 904316789 637772278 804493738 314740884 336352388 807272529 499176631 480956795 980801074 519092860 888385532 723088613 850174568 210689763 711041005 16758111 273842270 841863792 385054401 559293560 751692685 291824540 714790774 544533969 886802104 626309477 865639638 380747270 187959535 656687182 497048181 711506373 295074434 14442347 84282277 255395007 654332947 776311117 347864712 245067951 649724288 993144597 605736712 896513109 819851514 426349414 420970965 307933819 865234418 911481204 557136229 712484598 235369512 594552305 521417978 424015264 937955997 759552541 360171933 543897435 966739100 406001852 891361052 265590543 664514238 887685918 24910099 615567025 412400605 748720665 679145950 525369403 884416540 821201164 456580006 89306285 77958120 827367645 128094559 549991185 410975988 823323384 765735359 144834429 180249408 892047446 53359683 356568073 470173711 604704885 204839991 373550039 987280104 844164184 926431147 346062354 95996071 240770962 283264119 192639210 210622563 841591094 161187641 818364574 263057026 545608421 550650461 676154477 268396466 59453891 479811854 835183008 810575844 675474300 136880715 907662988 899886934 915581259 357927377 66181002 470328203 96866028 553664807 323402236 584504400 73039270 633370268 524211020 177395901 186298183 688440399 139378670 574516263 395897636 827837208 622349915 646720822 431920924 580845477 890268693 383231705 486081174 539970404 623926950 791952702 101323137 995029901 397728418 11750631 286329168 193124384 896624291 461352853 6654470 125546216 92304968 542248790 96592677 247752306 435605825 106407292 289886909 637218075 284953658 517178791 152016994 119831036 603348976 775333047 744870966 968786434 817048102 855876059 395500511 453632221 514984103 485547910 624882566 608975364 982248515 857140853 437208808 352122294 161771989 497716909 415277118 219663361 230455614 182817399 110751571 614676911 208880236 978724715 306938995 646539610 354408527 509707107 133907824 153537636 941802974 138121092 572632241 108909045 963502368 14898490 669035029 567095291 130116638 605561147 420147212 779856943 977635306 871131264 607020686 434841362 310917022 570966351 26030616 646522093 748603229 638528564 392238258 981572302 576066897 213032196 733508328 110848401 148974763 106592220 905080016 422629072 127603364 787714588 304633611 465823227 710182277 317026679 446361533 199339836 333495696 119579355 806229906 455400590 987080732 751202182 621580998 230553777 890116226 966175742 10272277 952463404 377440549 251916559 78062530 842563155 721722988 219125965 205301919 391163963 753495502 92995984 653732609 945081795 713835205 300975875 816799173 558081172 592278990 890447630 551557972 722885922 385719161 145389289 106136219 800298915 557829460 977812491 567287823 929655572 258276093 93504826 297833134 510379074 847196946 107600774 93519106 239867578 921709635 341422398 239581718 26786777 462439484 641953027 359232128 216132536 916877500 655477428 947236705 914831940 201671298 397795461 40893277 794394157 852570202 761311712 591130018 669744619 97536023 652533386 174238950 106480317 126381968 368307587 103301738 746345388 374214059 430362136 253141747 261364360 103994193 299009758 631153101 950903018 942136434 972016305 325592529 75993907 726872332 16488373 162958429 11387784 916366879 410745941 18739284 917003997 401422004 855699527 323557673 128153064 714419425 740222343 399419857 851505193 833392316 192431961 467721671 389119723 492196716 940155720 687369748 279612474 526593559 408441386 45410887 12938739 348710640 722604829 497696627 900806320 887764533 746006657 254602552 753435873 464786723 611654403 274851518 281070001 178188551 633885849 587481522 593970712 632289331 674835329 508209993 844542938 768863490 900606267 343796547 215293565 457448148 578912149 443945701 50516049 318175511 43988387 715939326 976018799 160704057 503195330 136368612 481516725 379559604 808918936 553924726 714216142 53221393 207314188 438931224 393664809 163537875 369153368 60229051 79999743 619397262 142446324 507827667 335430225 526214366 955984809 375583584 10466021 92171367 794134909 415025639 281068875 235567820 539858376 495825271 626243039 985473223 769113638 675441062 345610685 436640015 632289661 128075923 487952846 10568551 833233652 380797410 322468294 671585174 9098501 347580357 454810906 575532146 109175399 291213807 308485131 363627732 305361698 147617438 174578846 330409633 47555971 668329370 999154091 756017597 980947738 285898032 113933251 524367134 308348871 993674552 823660105 871242176 541647020 497537553 647747173 766933412 85773624 823216029 73986055 764232915 988978205 563257422 994604776 769839198 140803159 468491800 442107273 1476451 723572267 952553340 63029296 666345474 768233508 653535869 81237487 813612132 885139993 465981867 9569692 836504001 769656869 393567005 483759835 661506379 479566762 390207855 539200271 997035339 386373206 90647240 398134381 60513287 14930720 423032792 6488301 347462354 921217345 499688149 464267596 541491979 309412157 899585659 810150933 804795148 200744930 14914321 891527319 331729735 863277890 542168934 15939562 444654377 998743996 783782353 526800367 833874991 873111797 968818478 227142735 160391384 423309013 755564004 255062393 582081972 777906321 214083298 437575589 698143313 335805865 468952736 372430803 252140105 150613215 754393625 341601484 660278336 848803132 896248277 600559651 348437729 142680859 820318432 96376109 30171610 155067155 757375957 99162121 611838186 450944778 844455885 539654819 451915984 457887021 694485361 180432807 500183130 168929007 491083758 929418129 2915158 755807245 426387453 547685791 840615328 499188107 103912152 850155739 972248605 233071285 314162504 803269909 740862899 846290462 750830748 362876387 338804821 681366693 683845033 322224550 369747455 782042733 187373516 464912521 165247921 213656547 114234350 533211003 642493049 501621432 775313275 807044914 913350757 981885676 920907115 584803633 756735889 364990915 780186937 924697788 459044128 144634057 253051886 448601066 329501245 246827727 273421593 977156750 213392151 956174069 347162575 371851595 299193323 412496797 46911917 616436359 991925242 853877109 71376346 28764531 191883406 406892143 658689030 924284679 975626747 401951947 642792295 818558725 716222619 274083849 133599160 305299189 62216653 814115833 188151364 666683172 102144766 624710059 993190103 248765871 101658787 295245439 160457413 896877937 914476846 143904537 371932655 558522135 63250474 772203619 573792184 759468559 259542301 376034962 44605460 281017232 141953179 411081253 338264181 281203615 103122746 441069274 315128027 696774655 678366370 103661765 551366347 249212226 939139194 832857908 292184146 95061442 8457076 475765191 221026059 921737885 508992076 29464417 494657294 20205245 312730309 626505517 1587720 826334160 66105508 915738530 990758434 368939344 695081154 590422395 379734805 958542716 2570228 36050617 442008860 880485983 5455905 645929903 191965185 165980358 506811183 174812650 227957777 188412235 954475537 95392586 83933984 474946893 477815746 605053685 747948433 514152439 35572807 21985365 681109830 167694133 474726309 190601758 852342961 339586754 38130418 788465484 470386627 989653791 16287558 257548324 38776574 926800019 483753158 337683762 135870569 6090797 243048347 710995532 554758287 109776072 567502581 587871117 811889545 317886467 478503440 462319702 209470962 8005957 401757488 86730840 874702327 364675262 451491999 709951111 172191807 541132394 519680939 647639066 876659970 423405318 642146738 391240092 703367425 931203866 992402197 357042132 84628608 233278458 360067646 823514330 591070285 492889275 468832931 320865545 805197504 166232890 612086713 980201476 219557047 753270566 864902148 930662328 532465814 817572077 218554382 276754778 84295500 44021447 194361708 47441511 60530002 14137779 581076916 561415072 167335845 123096185 940996493 668234773 411808969 178782890 601037212 244911639 631554508 816868256 849468312 932145730 342151496 140344185 461239609 790454398 96128600 139539487 627131200 2939127 873186215 230744641 315644024 788031772 267205724 838232150 746471095 541547183 633596210 971268515 916555217 768625841 393109863 862224682 525071021 488081518 117228481 405122750 811691059 722387583 484979596 123495930 853511255 507876793 38973345 991826746 394792720 316364871 990325085 469154474 705041765 902845583 517808551 261435193 621533274 931594315 712431596 200129948 202363913 207990643 507878692 196051799 381463173 363631950 963820235 528444336 548315380 231826791 91824105 828861624 727964288 365347987 256175117 38781515 543342941 488536557 880724043 28139778 874372545 209923545 203411008 703865163 797724913 674819844 329800472 11578452 26573365 76835172 151173244 298555668 82142690 98323253 691126692 327657295 217890387 413776889 458953809 838729354 888061158 768736123 267696066 636040470 516594441 32116435 2342349 109420302 406533931 756827484 401957828 497942863 268397003 509713337 722716550 790259840 921578084 69456601 76183163 209313301 774731913 43772653 553357966 844328258 662815430 518951027 807629111 383083020 312323510 105516335 777905268 845385275 886341374 586963757 208693196 163584091 234031687 16132545 116105039 24423622 667822659 504430214 656142991 834500252 940569003 278152805 456317356 394374345 326528066 259764358 800589901 730031865 123192276 409041247 781557406 181713574 81785138 707474861 541584475 621239310 178079541 864648561 761777083 904485692 587306945 1834744 368022665 355579136 935886527 941258202 352721681 282078195 457376034 838434801 946199337 542359410 571578852 730145375 380885296 838145702 433342217 81079955 163722510 185831298 218860696 619611967 931242800 660416445 477377958 15499618 981054861 153622998 778958154 764867903 948084897 363435031 47833002 598223202 86775411 144236941 865592561 219904928 312552339 132290837 512632394 608930324 395904021 581460555 338863352 609113125 54766232 923511961 848380217 657834875 985115971 919893041 864644949 526853901 896098498 139240201 293290146 965800980 578967888 768350177 251352699 618756378 194682791 338372931 33202495 639791848 425520142 604559997 355633497 739232147 156734292 291749547 325473853 557169015 678303696 181512617 138892131 457238580 178021471 761299233 142124366 673595838 695412070 573959043 766862986 768727364 257273303 723842312 738803369 874438724 698028069 271470256 688738624 799415171 381129038 53161795 509707000 532458506 100451290 278952531 514875002 394589746 32409304 257169717 606960500 909947027 887844572 776873482 334885798 90027284 334463751 490767549 972385231 258153439 56755195 702771707 512404152 427362411 607334634 93537340 474058292 536134769 310509193 299835589 82817568 37107961 805427734 476973209 509036381 700940618 345109079 779341706 699525332 571746303 375321245 811347251 141929078 249370607 69601720 713359344 591899715 587264318 50367759 161837547 583546679 65643100 635266945 372563477 674545246 579070716 520860286 508412711 920526797 689380122 914954494 862485661 940187033 774474744 693474943 572897218 161725161 824150822 636532229 280494249 742200038 137711478 877663521 375568679 753283523 597755397 189937895 429271514 482062263 816665910 788677878 775210800 720663559 763618743 422025844 103334485 640368637 981162875 888668435 663688771 164431338 850668735 625833475 395763387 151181867 310863110 795870471 163599682 882116639 442381343 398197091 876878378 359617840 519811355 409850084 365033871 398840276 437135705 437661925 684975690 999971460 906316666 936303422 640939272 398066880 21682797 456172379 719513915 498432533 933496935 279161127 160239637 288305427 347563488 777818136 841294234 705960019 58125985 29918767 772878740 809749373 821798066 544175856 21753491 444930101 971896172 26639467 221578986 235034929 253318249 841861683 253410238 470432040 37681290 938144360 113034230 91859424 227743489 664034480 313325891 255166243 294907964 979093308 38378780 646201792 696437502 428517822 772517826 206618260 706041158 303624313 460308796 295932800 369705317 73621806 563457629 445290609 50543338 842478638 310832059 102744661 45022645 695692112 258119350 410652711 538102502 595923187 294836344 400954349 189209070 622937849 811027696 180807596 674368897 278713811 16058327 961156728 673816729 131461495 433503148 571227503 645927803 717501026 822465208 84811441 732248755 115371166 998602765 310397028 801699349 144306356 182119553 390037440 230686141 434530497 386531251 690155007 652724496 421243741 573554446 149192542 409053627 951102129 869998275 387661868 168134834 561623401 443883207 414503867 723360048 177622974 836241370 415168355 429526971 511197292 387376776 839104390 779413789 339546557 446872096 554624147 257083755 988499069 77532090 281773047 385675011 536107265 124324660 491499309 298340743 203783206 619096632 634190521 605016804 290484311 783626552 796099876 69423182 176837760 905174123 621596162 408028483 970388247 445747919 825694444 548456583 263180057 815820591 862902406 938949922 415236878 660194072 903953782 899229039 883407874 442228200 688629619 486852101 282056849 72373691 850133044 635247304 615635411 573933689 22031484 167664105 657511025 288909011 632363798 87925977 93591959 459304771 879013332 616995154 425861630 870302470 294925968 674946142 788270820 95704360 76636719 755353415 931582223 923111798 115861396 641139870 526122442 900805003 798316216 233697602 917483505 640268741 217101717 560768342 578545375 115194957 575024936 359012170 105347449 951931411 654000256 438542031 489867567 49845201 125220783 98267616 239379191 327517954 473324749 214108100 256876625 695159542 368087295 503076868 184178750 990541752 380099435 268470139 224685650 121315106 505043016 152171325 880704418 829679059 918443980 420927410 728434635 434536500 726710588 459939721 634438131 172173175 858548709 307923120 298743238 110650001 442961426 985284968 173110401 871175493 381085731 789044533 781876700 514677016 469710199 254993379 776476449 343981663 946664315 450195587 245880348 188764975 820028575 83652212 546724901 83641958 945086303 902875226 273154327 947411122 989043514 920611106 115985501 482748799 959371711 927255808 836085729 35491847 372740477 249087086 795014426 399026250 464110865 797018419 369147402 769952785 560043033 174144347 306767922 345289704 404837443 791813688 686673316 159369775 869816382 240598889 221998070 555305983 184167111 979769807 136436037 745379395 296758177 795323033 650832694 141634221 732479634 308167738 27213306 279455410 504708208 495159152 925222724 951041684 23546389 215134782 475210070 26251354 428468066 884702447 639973879 659823832 535323202 773713689 192903534 145728675 788262822 504456857 30379929 438700827 111289993 261471377 906023123 224926568 147762415 844726381 214544129 702155647 693318366 13897955 284983956 361265937 80467820 435801838 754934657 706052258 892704693 853125844 885453380 59275900 107631061 932425504 823590120 518674860 825511419 235530153 228741113 190766860 736829271 82416773 910014349 190166076 787751717 996662044 416925761 330665635 663965604 120416029 604097597 546089074 864822562 316431734 66071086 275332517 467466482 947298155 964075084 147442935 987456618 940886392 11458900 320685296 869498350 235185263 609870220 246359780 872386027 676376674 757098948 590906858 861960143 134933934 564678225 873296865 554920727 877907958 841144847 991347314 332770372 157530920 656061800 401696783 922395616 255993977 548981576 142138092 620097918 590485346 348784168 224598028 101532346 642468520 943067394 239155768 896939570 804630875 811076704 948183296 739893909 225467338 359348558 601304508 967687056 61585044 644435557 845552266 790993123 972363677 899138239 555870039 558419275 846779667 910639877 717158604 913761174 570113127 459691621 672735080 482678165 560355159 10490260 226023016 246918432 382407397 222047186 794351830 19462431 226843745 913816548 340429954 409167990 225886300 193242394 771070723 194608922 139750838 316155977 252056760 726226182 454531728 569605326 258528717 213341500 140772695 969664913 130406704 681453764 603371457 812042240 817010074 420422067 176499654 520881936 89645195 759808034 748693166 554623043 128637256 944603955 422277636 692840090 509140968 968077329 132906653 996912550 194140222 989857004 790271892 141670014 409709805 718213635 540866897 723069119 822843482 29831317 804305528 914496910 62477240 244907499 404287750 550493341 907604991 796263003 649829682 632863518 817668334 561432122 370754692 897568467 372330512 314239728 156539589 762999041 46705075 870417891 137811211 992566130 128029166 87686536 255295152 171944837 313925026 387693657 919149659 579489038 391100794 959475156 229144825 920089981 284986597 972549514 365707448 552616122 11708184 637163529 755902493 656409660 176737817 634023917 552184039 167721988 723607979 725979860 983211808 708552086 752508512 334570607 8971811 252347648 164250770 688549740 344523145 592917978 764255 315939973 225710645 82408001 774469041 697384830 407595346 932324314 295337270 402305570 444314968 590646998 961383785 652901185 990617346 208684778 552986758 680552373 248136276 929177174 925184155 529155939 931489179 160905436 330221685 803649586 241452648 282347214 904312491 950056216 204326044 890201088 536044703 426716429 992436057 26952914 164393851 140153361 34721803 45851947 162592043 546248243 28207461 893788533 657161066 623093888 923855972 687539115 390991544 750429720 737217873 244391496 503883102 346660632 41061040 327707989 58323051 355323311 501849178 897057116 883985081 56704780 991688300 456637048 434712549 385419883 494893643 53155140 591821657 280989706 862742430 399574504 725823301 588472891 915047773 611094293 838041507 564841545 384416965 264762106 139196209 560594834 831208023 408690778 396174454 830883448 807502051 3427194 885400776 510538085 815280763 216458027 707566906 358905289 433325434 942898113 131430828 542617889 721313673 905618457 208328651 596259310 132863118 483073688 87161346 30964924 675294659 932690995 953934479 920568603 544296096 279125338 530087020 962439846 6101483 403363085 978636901 4443135 388428977 437094354 172979209 561998801 681504581 136435387 610289329 325218767 922633797 378775129 490331259 431720368 216814994 775414731 627852627 491389498 591020890 44139450 600148455 863918645 424260372 223051091 888349870 883559284 714643576 447781706 384911597 389423059 9844876 309588705 604003238 676586030 820820637 971978973 529610926 486559094 172417341 817271435 526303643 189973405 946252619 633116864 903813327 750793881 816164585 169887455 264174191 229142894 248443012 203280843 374837615 376854311 658671059 831565555 347578501 349578710 427031756 792003403 582316849 745224087 235626168 390632532 541245628 146669447 873461540 403852564 823950646 700605143 735745248 327018266 938522235 945555890 100560653 983461243 814346533 803881049 775439373 744178643 45324702 261931018 206358154 184397645 23899931 700725778 588532860 357483923 416453260 349974720 172172828 376138204 285183929 752828018 949671667 757058536 370915367 626585224 457068745 591424255 979683365 812777580 595931826 905818859 677245391 728817810 350419468 998090501 331788801 700960627 346004861 682288425 429605732 52521104 889885676 26138302 290353002 22190453 191838099 789212083 705282890 811379381 110285034 133931391 119261447 762227432 173129657 598665246 655868006 614630834 855787528 314160920 326361080 861723325 75459887 561078396 919745558 516893369 494899401 973994975 706986975 727851620 116172216 488550749 90758205 127064445 509995820 562968737 969637599 21162961 319247767 868668372 225300287 983672880 10767797 98887857 199042969 308614519 820376458 179312500 837046778 552029059 296099174 322026978 646502703 885935684 666127065 541780556 608954835 681424552 294355392 79250569 286858052 848672174 734032704 706455794 723986603 73547090 857207494 378776946 421628920 157387685 105523462 781352055 188795620 136420277 60209402 98926581 165694960 19499165 721605355 208674922 232932706 612002430 140927329 164953055 496304715 822856069 740232239 853205729 874277764 271300835 657754997 171809157 69330093 404468688 681155734 723063401 530170669 85336723 15720254 685162422 70597431 958249330 117624418 601152536 992131264 195943361 243140926 477261257 123443338 114774235 39530582 577633664 76033310 258651424 836710519 990403979 522101195 999148284 103331762 493251251 88415147 603035619 260272743 612263761 877456539 645800779 623634489 876802624 744378948 911431609 315005714 446222827 415889176 454201271 303621676 960216892 584721232 675853527 272673535 467367596 970075114 713623218 944288335 879772985 483093935 175846892 267176745 384010598 820238384 827955503 384851425 264510532 909124805 300372013 778819861 540018796 36099468 931814046 326489255 720152310 586498161 628078409 765541572 638557326 526748704 387010292 511696608 933063263 344479508 149317493 917025466 404382496 819592847 312609954 728529235 336917006 811273621 865272161 892335608 368982515 34501624 302187160 307306812 280840728 456900435 642412606 171875838 528161625 355011586 942250571 813680738 659248399 391731761 780053441 580136658 364002850 206642378 775965099 818994434 556705282 425711247 592668186 182331122 78983077 343879414 703609131 502520293 10864262 86623566 246590460 140529507 312129969 806368166 288623035 812693060 140418220 244027863 367003800 902080422 338070 263786620 265498831 874573289 607316230 812513796 132079520 647941564 87661864 881309083 755219544 960244499 635199656 125079611 887796552 299630633 108454075 728047524 694142666 109167233 237518624 971285855 924987456 47869419 737382174 773018040 32363287 388944763 153908354 774379727 518421946 758685320 103769763 609046908 843813037 143495100 962040672 715798636 258449259 546292227 985622046 725694224 589230465 687627148 109140172 808268445 982880640 965805784 361094880 857223446 271456772 899569578 259852376 664414784 361072303 320673808 270973116 434564784 283113769 114985307 233985046 723756219 427614247 870150952 207470083 25615233 448658531 423319644 560609946 687473642 127510429 608555045 50429317 446559144 982543777 939071732 571882227 937298996 987724609 982881671 289010327 624722381 445487958 558552034 343237298 295391352 826883524 424133712 143423243 744126219 225651829 718713961 194915820 536667163 33215066 113520133 993407280 934659849 505870448 699635787 116240178 830232828 139631287 420463780 956439516 702876134 563424569 807371720 766453657 897776511 603847945 118135986 281102431 951013446 372888897 987786149 26693805 416804485 799961090 896036143 216065673 867488586 128881528 52321570 303431298 37826417 480960214 370148767 496453297 525889173 163059030 820167683 843606959 444846114 520653625 780398081 980284323 397919305 153592008 227889289 763129151 443184895 438857561 561406169 162792631 167210244 97215043 253951348 646162119 8688356 464985064 953948456 862967224 258557935 316350647 120151562 797343323 700208955 82839580 244841586 456756478 255253158 983100821 110929928 856205961 670139356 482487716 386752697 162696539 949029198 692040915 420113335 646486117 874959155 157251763 258528892 884651037 976796297 766692063 451655632 340492162 148360219 699907577 880357057 556375833 900504950 153068717 893553052 115839985 174317561 449206443 380596996 886360224 386946493 60633005 367184093 779734085 4595372 544262775 726800719 258214786 320268665 296555988 743182798 682703244 645560986 774591381 56223260 719619863 988858704 22463890 740200248 732608351 948380324 949380272 908249714 900159274 453518949 728588250 127859293 678426056 57570859 316262656 676411859 603570193 591447 717669917 534983930 760472928 925245713 663683123 914693182 900908700 132519241 644025934 679177556 967452469 209826233 598308478 6291512 640106015 479743453 177196255 186299438 573635803 233302274 575762577 567090371 175201386 483902263 241837760 429412553 795530848 324153938 58994591 245300574 608540626 784525557 401064293 866938087 800271965 210088840 877865816 428804621 191332646 804590908 214839488 27291848 161156573 836261129 962068977 310432083 366348728 825985710 231535939 513409328 606946935 829571508 16972314 479797807 480407388 401828972 645926367 931837282 587266617 133570286 487644932 639899684 809561186 842027032 214204934 712209183 52367800 217444503 995392613 82287414 601041311 794985940 422802346 866036903 508669958 728637199 196707437 925164518 164740707 965240900 23475521 882070206 610302643 461308733 997675978 336044343 180458623 481331334 122467767 299800231 975376850 529852543 151540661 59996841 197685830 293570112 236593792 539721763 937334263 845620918 547796954 99067454 213630090 422434195 137043854 390688627 724279342 260290634 44015214 795852920 465042076 661396255 7703894 248483673 741379601 609942041 503370276 991733340 236962896 375942662 363633862 621304088 188916653 920502147 525429293 770942312 201230840 726324717 256501074 491939955 520242069 475393644 888668728 653244835 386116709 86568692 386805483 992981930 631445209 980350776 948249725 490869641 818369768 344553916 471248389 148754816 167720719 292498632 114202022 569714719 115363668 662340970 511658383 467799862 528130119 967619709 273255660 598613735 693472252 793399198 999276796 686473361 794427667 19163703 38461951 707980770 378958769 160763514 598924353 469459919 496144516 851939421 679030544 797482386 345705410 203185824 393278410 543737268 765088300 277075404 770829010 261014268 85964296 763044658 367700622 484868993 840891937 534149611 414297207 787131807 634579662 873335251 10636287 219084026 488919281 670629527 991820206 82455423 661596908 191721125 982934541 71042143 148980142 809169973 294123695 985116442 154151855 659240519 332022571 663878261 136391661 694199204 403826213 45609846 740972780 400565215 849868360 796123769 606271932 766042701 27132230 446510612 680411380 782942476 463743195 596959792 374181296 9059338 713014727 490824951 598824601 300904434 581768915 630920669 717425883 591306560 741249490 440405662 695950125 807098675 595221666 175525441 358241996 812105939 61410336 584038926 874297472 122087920 915533114 341717661 528468376 949009955 735462369 449537223 274564840 391604171 514050575 439222451 979162065 113839378 413143751 801098957 657802549 585081574 433576720 865412806 417436295 413355011 721450753 361608351 86207161 559067621 995378354 765449625 131547469 636050389 491531588 216572738 752445254 519528422 988339684 682035308 682750005 920297455 322589892 498595382 977886511 807442062 25930780 503148291 13642704 800413743 164743983 71084926 714489154 649425406 214485318 19489181 956966707 838498551 671727289 413859228 790637782 944518872 479364571 576511743 488904172 335897388 386202642 534249363 351043003 697861184 868470985 628776553 599907857 74295854 17170031 282867424 309237827 841878997 137511808 773653407 89184816 447396830 799937920 801240461 179314496 876390843 609525750 659919584 776812382 249505953 95709046 942104598 613680133 165004435 987337885 660518129 353131310 175043926 924426503 671508863 424778336 224928639 941511778 634681107 871351727 616421730 846478690 474629960 123206827 773687840 376284350 487388935 340662130 289752741 305124921 847988088 76427183 698492061 884866462 160245520 253171085 280088448 309181886 228339340 25261251 426089361 609018743 577806320 435694478 576146647 286772900 275241353 977129912 358410275 409287991 387223272 912987532 418983946 934215198 657497581 785624288 945221616 544512596 504874941 205335060 625847038 579310554 775096255 46738702 67249952 269902015 363145900 540467259 717461523 639093263 812108671 219440531 477848659 63554792 617778810 695824784 351655466 218507116 665754669 789462591 434935979 657511364 149247594 899038763 220838056 543120674 472461646 258701671 915439558 606770371 85085756 106759831 481527661 927326439 240324322 267502044 37505994 918463959 796936757 43274728 74407131 370035432 460309356 342646512 859777883 526185842 948372242 168414132 440816082 334171099 57994225 348137591 339301782 856632968 17913368 289702409 767675834 350805232 56502764 314823871 847029278 452722315 544132362 922326392 497489518 539761625 206098275 375790237 275533592 782315368 485905449 417921816 917851222 442807496 586220248 131091808 70388519 478122390 166203446 931728502 436677200 960884850 853290831 16881886 242158439 848894471 711546997 223237545 341291968 145565701 336598084 444830567 219241341 405607977 612869797 57031996 92911751 315794741 73983936 570069453 921749901 321077235 667254026 364988487 526516998 619931698 208140352 287865699 883533879 163196370 997696615 637942362 325218338 282372019 866605769 542669815 558858397 811559101 995517949 142150023 7440186 740349155 361654492 770197472 133671008 234532897 974724493 323209824 862303794 321149817 327403643 830151151 871643556 994896372 743026009 522457590 576228205 306845092 882151461 311381363 206467851 785427623 638346789 179240415 683632072 401294362 793009889 907518017 520212916 652557099 877031216 95790118 576253610 706847240 892989487 921191593 398881607 574349042 462746174 841345893 349278195 495211300 106300945 39853438 206445536 516991983 386026899 247048872 316081669 884347297 958117127 425013780 444372514 470368915 32618478 437385091 647522754 155439659 712439317 34437179 676084531 311853009 435043473 18849289 461123727 983948280 968585918 208487490 566826163 387175194 739027774 51475145 225250888 225584315 357564163 39134465 684052161 675048546 972344379 435067608 708117842 920543906 150581605 530301894 232774656 49594393 566035013 352971209 728362130 130079845 55730919 840184421 750567318 570169137 233201311 672094121 28097895 438874928 893362441 463933228 483888418 420554013 668613901 644124431 700463024 504438969 901984208 973937397 181746372 742543308 985517007 937975050 840602070 666325807 948762559 710570760 670405923 960554422 753017254 502036783 663196343 821846854 721288147 192499518 603846493 859834312 778855896 429457291 305015219 454548017 362349459 250443240 210700054 723199351 932643365 421078196 544787630 487120286 674169085 190430166 825257071 201610418 529507534 31298492 96933901 94355906 125959829 533596252 569251338 715627501 478856341 117115956 161573551 221711696 208935260 526565707 586935048 290765849 367154878 341401133 660516341 73746297 112309462 860657907 972083982 408664744 971104010 385989690 417411008 74508269 58861828 743631402 341102140 423728527 785323962 790150510 521613945 92936929 898263656 703195710 109525301 157813562 837295504 241733979 272882939 81639683 208138755 750144263 465256729 534508194 399351761 791228432 72987818 104989576 103039833 180923086 285979533 12309812 182897213 36300323 746934120 774126629 801242728 371215982 146483886 114186979 592044819 836536992 267551129 728281860 85388215 434195250 590163748 30089251 625561881 353445153 716304411 743716063 891529797 97144051 341341710 649257442 469144465 817881011 282014804 255535330 341949846 257908730 266211599 898242967 213268027 303220457 944449573 620265667 373373353 913537315 73420871 100340016 803136857 27300308 461585900 639339186 958730499 852735929 232655960 555926307 578188719 188715528 545508497 179617634 472999589 209612686 309936743 822307421 267906684 272694166 363724147 59517957 2098705 501238520 698076180 991089234 611249541 823447825 40509044 107393610 684428614 726737095 114855296 925816054 717737227 861889929 32624118 375378536 492582093 912973901 82167120 862803642 832808399 123714192 241497306 37884175 301151649 335094106 299360421 687367311 470956309 522134586 773783175 519539566 438692167 782803524 961170207 57290729 36639901 729405208 109082840 780667197 66314176 82566621 611302625 522167479 947339944 587283516 777230386 724538534 992267665 854626162 21365390 814010218 586977788 660545848 835571579 294412899 147149752 798484184 968859975 976629499 216771032 823587872 4083215 964281250 636732858 507724387 448765102 74123477 100328449 480767362 103710160 364275221 115565974 251884259 37010151 81477868 267419317 437938802 508336420 800127982 274828755 840385449 109961360 554786740 319950007 718551171 460438765 560052193 328296301 836637319 556879055 236102174 59534154 279380932 484145802 632854301 667708394 513594833 136923459 361254811 927111217 615534795 3947998 78689110 188449098 574864472 465004558 204354589 593457578 940784809 938839885 458664638 386653201 255572335 431603671 862647830 351858300 509516525 757603253 770259974 257089855 492337895 130353081 379148410 178990056 463853995 627670650 229025376 756415062 263186193 325334362 782828729 759795628 569510260 169153408 836171137 400750937 2762431 885945564 508313797 972386318 664655197 610392358 158992791 716994250 734527303 21227745 261482768 634334160 439997174 894892113 462571348 593154989 179546740 763476616 653103246 63629875 623529552 824320096 536581102 348668799 921434783 816565623 174609583 330096374 440310270 745254710 135021842 135817796 709855895 80226254 234040164 929515617 154378005 80384311 386347254 331410051 269230508 501068847 605973794 961115952 674990368 543578945 666327116 952855350 215508917 175975869 360631515 220103336 126440503 77439675 925351490 268507109 798543615 345362457 318883839 382286988 494417642 509939585 999903886 433325199 315522654 257401189 160170622 569316636 400923722 428617211 283400033 787921844 844942117 541593154 312301263 697176860 300580845 949249287 672434538 730723932 286584101 120984021 146919393 347810252 803891679 174473737 544458721 892579335 158496943 420136895 701216036 995893999 892029109 207123680 764272243 466301107 474206870 589343 313220753 702430406 847797634 431350771 574767954 71551205 852208175 793984411 263136403 249655829 70495702 376229408 919195955 650295201 181311813 805167954 921102367 146841116 977672135 754065098 19372870 2724453 461204528 200608489 463375012 917428894 3962849 234245076 739563327 790965556 59219905 943291518 202943002 386641884 457147707 242706336 647288653 597259922 720375622 12424886 750910702 98597019 685354338 909091599 533998627 215521153 354770582 956029108 344414229 950835737 490280047 797932418 214894325 736190335 900768769 480886294 523728126 785440792 497482476 526616284 668900210 313385107 390842968 155759362 709109660 333173983 427833842 26981249 75625934 326481722 468528880 956455961 328581730 94924075 339153169 806704720 190791869 110085756 572152217 682221691 320461378 289664576 605605462 778422958 611635053 568991703 218249891 785255370 876968110 269441505 991854683 113051258 255576464 970466125 942897890 979706410 738986905 278955599 113567275 249300503 470224219 989095265 130784170 783506495 636298097 433940041 590575453 975014504 458969981 159189781 784657611 358859045 743694122 808835862 788758016 309170895 370612523 347469802 268284565 841777282 606053433 786364021 883850918 920651562 98242068 934605283 670265821 76027000 673926285 791817897 257724516 347982307 115618414 561819522 327427061 142285737 701394583 641764980 59219146 419622868 271872230 980149704 460647085 240798005 310255435 701396760 723354090 571048035 767857842 130945083 194602073 529220799 571799579 660575830 596252245 742624113 867448706 304958679 81221576 340847722 66002680 193533041 213098270 935698785 737047946 588715552 618791502 91981526 743968853 109531690 986257369 48180500 236501883 84000539 253315521 876389672 374018851 150997702 955777172 776927725 90303619 312767815 864975466 739639552 703217364 708669954 639572452 790895563 960663130 683881127 70533924 719150208 626338652 814239782 456883928 483004692 787715374 468549565 46271291 88973898 27647275 579379695 669456647 466754216 680797620 644473736 361081474 929871744 221729589 401042592 919377535 424678890 879359773 972452240 795453262 525372868 570499816 189483004 812361171 883850427 761040153 267097554 500394094 124722491 558991419 876318279 600435220 687316860 27731420 77793492 258128182 695150720 755539867 938085951 625822422 567086352 94132761 780707221 523987321 588206781 865777661 57935144 78288939 901747933 78085887 229936023 399416195 761553294 612095701 529591490 233688226 369846975 321674817 89642716 210372653 163403544 861701135 257409876 582788944 477017368 560089107 566582249 989013186 673075197 540179491 965155738 416481734 855657167 24843557 65900986 218044189 519929183 589586430 60813019 835023893 170193731 14444713 193674200 926871945 494064860 668532504 603829462 121330896 634642519 902773329 736980544 371164376 920479900 99082076 635501518 992844557 221652075 159211600 370691449 735658080 287248703 559799106 234019973 197418582 651967072 279369048 311358079 886966257 104239589 981745082 424098365 952688323 400508318 365592730 446566103 716524508 690654256 941017141 70033079 116831971 234904579 856862664 440313475 925698806 416344645 263179429 793678389 951352264 74683887 548285719 259666437 188194959 626461890 178901372 921616251 685949191 534203465 710438196 163743839 558631542 377801423 60168621 8936393 390274223 585236590 706967380 835268370 515008259 799771655 563535529 868591329 291757907 76911170 7180586 236931107 699751172 892563089 825945699 890850567 941686789 84275241 16132839 668487182 322825676 815566604 543840076 49123580 782872663 241049347 28119867 748421596 739053356 737165469 327318617 404676610 627232861 962801714 441313625 824454411 777159032 701752035 641906423 219427802 502882980 947189656 871535348 317691293 454075778 707723267 21026074 299200711 216379971 266681240 124808766 973768213 895518874 990139034 62684470 31221131 775167688 285168915 704614377 707790709 213848213 762936784 803097661 499353958 629547592 804968811 879578916 726318911 587233216 416511810 976511389 40210974 769348950 883136642 820775334 926159221 546674928 935038230 396678474 674840563 402836225 885738170 749477791 726894743 334609272 505239021 262010297 218434470 220240091 405786870 967297983 606626218 835527978 601624809 881774552 751921786 512069878 505920152 491401528 614645806 168286806 325864872 660269851 102116913 247909864 854287232 822055360 925121576 783087568 186781264 735695220 166160138 331980990 6850066 851402630 710302231 922070761 461731205 807609684 623250893 960950540 912813871 674275645 166236412 395495794 682243685 452595117 73382329 365661415 371844154 332806167 266877020 303838143 311485587 652513267 741500558 699582683 640641810 318908357 57589305 758971040 711444529 388402709 181985425 605699582
RLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRR
